diff --git a/.github/workflows/sync_docs.yml b/.github/workflows/sync_docs.yml index b3c60edad..252bbd6c9 100644 --- a/.github/workflows/sync_docs.yml +++ b/.github/workflows/sync_docs.yml @@ -63,6 +63,7 @@ jobs: - run: | rm -rf "pantsbuild.org/${{ steps.get-destination-dir.outputs.DESTINATION_DIR }}" mkdir "pantsbuild.org/${{ steps.get-destination-dir.outputs.DESTINATION_DIR }}" + cp help-all.json "pantsbuild.org/${{ steps.get-destination-dir.outputs.DESTINATION_DIR }}" # Generate reference docs - name: Setup Node @@ -82,7 +83,7 @@ jobs: - run: yarn install --frozen-lockfile working-directory: pantsbuild.org - name: Generate reference docs - run: npm run generate-reference "${{ steps.get-destination-dir.outputs.DESTINATION_DIR }}" ../help-all.json + run: npm run generate-reference "${{ steps.get-destination-dir.outputs.DESTINATION_DIR }}" working-directory: pantsbuild.org # Sync the docs repo diff --git a/docs/reference/help-all.json b/docs/reference/help-all.json new file mode 100644 index 000000000..8a1b4ede3 --- /dev/null +++ b/docs/reference/help-all.json @@ -0,0 +1,99487 @@ +{ + "env_var_to_help_info": { + "PANTS_ADD_TRAILING_COMMA_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to add-trailing-comma, e.g. `--add-trailing-comma-args='--py36-plus'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-console-script=", + "config_key": "console_script", + "default": "add-trailing-comma", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-console-script="], + "env_var": "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma" + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-entry-point="], + "env_var": "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-install-from-resolve="], + "env_var": "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `add-trailing-comma` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]add-trailing-comma-skip"], + "env_var": "PANTS_ADD_TRAILING_COMMA_SKIP", + "fromfile": false, + "help": "If true, don't use add-trailing-comma when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-skip", + "--no-add-trailing-comma-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_ANONYMOUS_TELEMETRY_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]anonymous-telemetry-enabled"], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "fromfile": false, + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.20/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_ANONYMOUS_TELEMETRY_REPO_ID": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--anonymous-telemetry-repo-id="], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "fromfile": false, + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.20/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--anonymous-telemetry-repo-id"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--repo-id"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_APACHE_THRIFT_EXPECTED_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--apache-thrift-expected-version="], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "fromfile": false, + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + }, + "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-thrift-search-paths"], + "target_field_name": "apache_thrift_thrift_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--thrift-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_AUTOFLAKE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": ["--remove-all-unused-imports"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-args=\"[, , ...]\""], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["--remove-all-unused-imports"] + } + ] + } + }, + "PANTS_AUTOFLAKE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-console-script="], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + "PANTS_AUTOFLAKE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-entry-point="], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-install-from-resolve="], + "env_var": "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `autoflake` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_AUTOFLAKE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-requirements=\"['', '', ...]\""], + "env_var": "PANTS_AUTOFLAKE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_AUTOFLAKE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]autoflake-skip"], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "fromfile": false, + "help": "If true, don't use Autoflake when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-skip", "--no-autoflake-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BACKEND_PACKAGES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--backend-packages=\"['', '', ...]\""], + "env_var": "PANTS_BACKEND_PACKAGES", + "fromfile": false, + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--backend-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--backend-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.workunit_logger", + "pants.backend.experimental.tools.yamllint", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ] + } + ] + } + }, + "PANTS_BANDIT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-args=\"[, , ...]\""], + "env_var": "PANTS_BANDIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BANDIT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-config="], + "env_var": "PANTS_BANDIT_CONFIG", + "fromfile": false, + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BANDIT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-console-script="], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + "PANTS_BANDIT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-entry-point="], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BANDIT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-install-from-resolve="], + "env_var": "PANTS_BANDIT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `bandit` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BANDIT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BANDIT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BANDIT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]bandit-skip"], + "env_var": "PANTS_BANDIT_SKIP", + "fromfile": false, + "help": "If true, don't use Bandit when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-skip", "--no-bandit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BIN_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-bin-name="], + "env_var": "PANTS_BIN_NAME", + "fromfile": false, + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-bin-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-bin-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + "PANTS_BLACK_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-args=\"[, , ...]\""], + "env_var": "PANTS_BLACK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BLACK_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-config="], + "env_var": "PANTS_BLACK_CONFIG", + "fromfile": false, + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BLACK_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-config-discovery"], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_BLACK_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-console-script="], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + "PANTS_BLACK_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-entry-point="], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BLACK_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-install-from-resolve="], + "env_var": "PANTS_BLACK_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `black` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BLACK_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_BLACK_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BLACK_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BLACK_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-skip"], + "env_var": "PANTS_BLACK_SKIP", + "fromfile": false, + "help": "If true, don't use Black when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-skip", "--no-black-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUF_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-config="], + "env_var": "PANTS_BUF_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Buf (https://docs.buf.build/configuration/overview).\n\nSetting this option will disable `[buf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BUF_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-config-discovery"], + "env_var": "PANTS_BUF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant root config files during runs (`buf.yaml`). If the json format is preferred, the path to the `buf.json` file should be provided in the config option.\n\nUse `[buf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config-discovery", + "--no-buf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_BUF_FORMAT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-format-args=\"[, , ...]\""], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--format-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUF_FORMAT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-format-skip"], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-skip", "--no-buf-format-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--format-skip", "--no-format-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUF_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + "PANTS_BUF_LINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-lint-args=\"[, , ...]\""], + "env_var": "PANTS_BUF_LINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--lint-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUF_LINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-lint-skip"], + "env_var": "PANTS_BUF_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-skip", "--no-buf-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-skip", "--no-lint-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUF_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + "PANTS_BUF_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-url-template="], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + "PANTS_BUF_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_BUF_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-version="], + "env_var": "PANTS_BUF_VERSION", + "fromfile": false, + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + "PANTS_BUILDIFIER_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-args=\"[, , ...]\""], + "env_var": "PANTS_BUILDIFIER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUILDIFIER_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + "PANTS_BUILDIFIER_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buildifier-skip"], + "env_var": "PANTS_BUILDIFIER_SKIP", + "fromfile": false, + "help": "If true, don't use Buildifier when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-skip", "--no-buildifier-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + "PANTS_BUILDIFIER_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-url-template="], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_BUILDIFIER_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-version="], + "env_var": "PANTS_BUILDIFIER_VERSION", + "fromfile": false, + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]build-deprecations-fixer-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]build-deprecations-fixer-skip"], + "env_var": "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP", + "fromfile": false, + "help": "If true, don't use BUILD Deprecations Fixer when running `scie-pants-linux-x86_64 fix`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-deprecations-fixer-skip", + "--no-build-deprecations-fixer-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUILD_FILE_PRELUDE_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "fromfile": false, + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.20/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-file-prelude-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-file-prelude-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUILD_IGNORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-ignore=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_IGNORE", + "fromfile": false, + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUILD_PATTERNS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": ["BUILD", "BUILD.*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-patterns=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_PATTERNS", + "fromfile": false, + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["BUILD", "BUILD.*"] + } + ] + } + }, + "PANTS_CACHE_CONTENT_BEHAVIOR": { + "choices": ["fetch", "validate", "defer"], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cache-content-behavior="], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "fromfile": false, + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cache-content-behavior"], + "target_field_name": null, + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": ["--cache-content-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + "PANTS_CA_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ca-certs-path="], + "env_var": "PANTS_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.20/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_CHANGED_DEPENDEES": { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": ["--changed-dependees="], + "env_var": "PANTS_CHANGED_DEPENDEES", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": "Use --dependents instead", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": ["--changed-dependees"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependees"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + "PANTS_CHANGED_DEPENDENTS": { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependents=", + "config_key": "dependents", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-dependents="], + "env_var": "PANTS_CHANGED_DEPENDENTS", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-dependents"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependents"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + "PANTS_CHANGED_DIFFSPEC": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-diffspec="], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "fromfile": false, + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-diffspec"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--diffspec"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_CHANGED_SINCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-since="], + "env_var": "PANTS_CHANGED_SINCE", + "fromfile": false, + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-since"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--since"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_CHECK_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--check-only=\"['', '', ...]\""], + "env_var": "PANTS_CHECK_ONLY", + "fromfile": false, + "help": "Only run these checkers and skip all others.\n\nThe checker names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkers.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--check-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_CLI_ALIAS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cli-alias=\"{'key1': val1, 'key2': val2, ...}\""], + "env_var": "PANTS_CLI_ALIAS", + "fromfile": false, + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependents=transitive\"\n\nThis would allow you to run `scie-pants-linux-x86_64 green all-changed`, which is shorthand for `scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependents=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cli-alias"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_COLORS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]colors"], + "env_var": "PANTS_COLORS", + "fromfile": false, + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--colors", "--no-colors"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--colors", "--no-colors"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_CONCURRENT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]concurrent"], + "env_var": "PANTS_CONCURRENT", + "fromfile": false, + "help": "Enable concurrent runs of Pants. With this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. As a result, enabling this option will increase the per-run startup cost, but will not block subsequent invocations.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_CONFIG_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": ["/tmp/tmp.TG08L3iBWC/pants.toml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-config-files=\"['', '', ...]\""], + "env_var": "PANTS_CONFIG_FILES", + "fromfile": false, + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/tmp/tmp.TG08L3iBWC/pants.toml"] + } + ] + } + }, + "PANTS_COURSIER_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + "PANTS_COURSIER_REPOS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-repos=\"['', '', ...]\""], + "env_var": "PANTS_COURSIER_REPOS", + "fromfile": false, + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + }, + "PANTS_COURSIER_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + "PANTS_COURSIER_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-url-template="], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + "PANTS_COURSIER_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_COURSIER_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-version="], + "env_var": "PANTS_COURSIER_VERSION", + "fromfile": false, + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.6" + } + ] + } + }, + "PANTS_COVERAGE_PY_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-config="], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "fromfile": false, + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-config-discovery"], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_COVERAGE_PY_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-console-script="], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + "PANTS_COVERAGE_PY_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-entry-point="], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_FAIL_UNDER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-fail-under="], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "fromfile": false, + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting `fail_under` in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set `[report] precision` properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-fail-under"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--fail-under"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_FILTER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-filter=\"['', '', ...]\""], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "fromfile": false, + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']`.\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-filter"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--filter"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_COVERAGE_PY_GLOBAL_REPORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-global-report"], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "fromfile": false, + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--global-report", "--no-global-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-install-from-resolve="], + "env_var": "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `coverage-py` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_COVERAGE_PY_OUTPUT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-output-dir="], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + "PANTS_COVERAGE_PY_REPORT": { + "choices": ["console", "xml", "html", "raw", "json", "lcov"], + "comma_separated_choices": "console, xml, html, raw, json, lcov", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": ["console"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "fromfile": false, + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-report"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--report"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["console"] + } + ] + } + }, + "PANTS_COVERAGE_PY_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DEBUGPY_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-args=\"[, , ...]\""], + "env_var": "PANTS_DEBUGPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DEBUGPY_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-console-script="], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEBUGPY_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-entry-point="], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + }, + "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-install-from-resolve="], + "env_var": "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `debugpy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_DEBUGPY_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-requirements=\"['', '', ...]\""], + "env_var": "PANTS_DEBUGPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DEBUG_ADAPTER_HOST": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-host="], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "fromfile": false, + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-host"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--host"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + "PANTS_DEBUG_ADAPTER_PORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-port="], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "fromfile": false, + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + }, + "PANTS_DEPENDEES_CLOSED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-closed"], + "env_var": "PANTS_DEPENDEES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-closed", "--no-dependees-closed"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDEES_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-output-file="], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEPENDEES_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-sep="], + "env_var": "PANTS_DEPENDEES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_DEPENDEES_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-transitive"], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENCIES_CLOSED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-closed"], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENCIES_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-output-file="], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEPENDENCIES_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-sep="], + "env_var": "PANTS_DEPENDENCIES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_DEPENDENCIES_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-transitive"], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENTS_CLOSED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-closed"], + "env_var": "PANTS_DEPENDENTS_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-closed", "--no-dependents-closed"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENTS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-output-file="], + "env_var": "PANTS_DEPENDENTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEPENDENTS_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-sep="], + "env_var": "PANTS_DEPENDENTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_DEPENDENTS_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-transitive"], + "env_var": "PANTS_DEPENDENTS_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-transitive", + "--no-dependents-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DISTDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.TG08L3iBWC/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-distdir="], + "env_var": "PANTS_DISTDIR", + "fromfile": false, + "help": "Write end products, such as the results of `pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-distdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-distdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/dist" + } + ] + } + }, + "PANTS_DOCFORMATTER_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCFORMATTER_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-console-script="], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + "PANTS_DOCFORMATTER_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-entry-point="], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-install-from-resolve="], + "env_var": "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `docformatter` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_DOCFORMATTER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCFORMATTER_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docformatter-skip"], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "fromfile": false, + "help": "If true, don't use docformatter when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-skip", "--no-docformatter-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dockerfile-parser-install-from-resolve="], + "env_var": "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `dockerfile-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_DOCKERFILE_PARSER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_BUILD_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "fromfile": false, + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_BUILD_HOSTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "build_hosts", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_BUILD_HOSTS", + "fromfile": false, + "help": "Hosts entries to be added to the `/etc/hosts` file in all built images.\n\nExample:\n\n [docker]\n build_hosts = {\"docker\": \"10.180.0.1\", \"docker2\": \"10.180.0.2\"}\n\nUse the `extra_build_hosts` field on a `docker_image` target for additional image specific host entries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-hosts"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--build-hosts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_DOCKER_BUILD_NO_CACHE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-no-cache", + "config_key": "build_no_cache", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-build-no-cache"], + "env_var": "PANTS_DOCKER_BUILD_NO_CACHE", + "fromfile": false, + "help": "Do not use the Docker cache when building images.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-no-cache", + "--no-docker-build-no-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--build-no-cache", "--no-build-no-cache"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOCKER_BUILD_TARGET_STAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-build-target-stage="], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "fromfile": false, + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-target-stage"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-target-stage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCKER_BUILD_VERBOSE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-build-verbose"], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "fromfile": false, + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--build-verbose", "--no-build-verbose"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-context-root="], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "fromfile": false, + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-context-root"], + "target_field_name": null, + "typ": "workspace_path", + "unscoped_cmd_line_args": ["--default-context-root"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_DOCKER_DEFAULT_REPOSITORY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-repository="], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "fromfile": false, + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + "PANTS_DOCKER_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-env-vars=\"[, , ...]\""], + "env_var": "PANTS_DOCKER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-env-vars"], + "target_field_name": "docker_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find the Docker client and any tools required. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-executable-search-paths"], + "target_field_name": "docker_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_DOCKER_EXECUTION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-execution", + "config_key": "docker_execution", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-execution"], + "env_var": "PANTS_DOCKER_EXECUTION", + "fromfile": false, + "help": "If true, `docker_environment` targets can be used to run builds inside a Docker container.\n\nIf false, anytime a `docker_environment` target is used, Pants will instead fallback to whatever the target's `fallback_environment` field is set to.\n\nThis can be useful, for example, if you want to always use Docker locally, but disable it in CI, or vice versa.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-execution", "--no-docker-execution"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--docker-execution", "--no-docker-execution"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DOCKER_REGISTRIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "fromfile": true, + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n \"use_local_alias\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.\n\nIf `use_local_alias` is true, a built image is additionally tagged locally using the registry alias as the value for repository (i.e. the additional image tag is not pushed) and will be used for any `pants run` requests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_DOCKER_RUN_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-run-args=\"[, , ...]\""], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "fromfile": false, + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--run-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-tailor"], + "env_var": "PANTS_DOCKER_TAILOR", + "fromfile": false, + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tailor", "--no-docker-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DOCKER_TOOLS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-tools=\"['', '', ...]\""], + "env_var": "PANTS_DOCKER_TOOLS", + "fromfile": false, + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tools"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tools"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_USE_BUILDX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-use-buildx", + "config_key": "use_buildx", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-use-buildx"], + "env_var": "PANTS_DOCKER_USE_BUILDX", + "fromfile": false, + "help": "Use [buildx](https://github.com/docker/buildx#buildx) (and BuildKit) for builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-use-buildx", "--no-docker-use-buildx"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--use-buildx", "--no-use-buildx"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to terraform, e.g. `--download-terraform-args='-auto-approve'`.\n\nAdditional arguments to pass to the Terraform command line.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_EXTRA_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Terraform processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-extra-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]download-terraform-tailor"], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "fromfile": false, + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-url-template="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.4.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-version="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "fromfile": false, + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.4.6" + } + ] + } + }, + "PANTS_DYNAMIC_UI": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dynamic-ui"], + "env_var": "PANTS_DYNAMIC_UI", + "fromfile": false, + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DYNAMIC_UI_RENDERER": { + "choices": ["indicatif-spinner", "experimental-prodash"], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dynamic-ui-renderer="], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "fromfile": false, + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui-renderer"], + "target_field_name": null, + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": ["--dynamic-ui-renderer"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + "PANTS_ENGINE_VISUALIZE_TO": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--engine-visualize-to="], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "fromfile": false, + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--engine-visualize-to"], + "target_field_name": null, + "typ": "dir_option", + "unscoped_cmd_line_args": ["--engine-visualize-to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ENVIRONMENTS_PREVIEW_NAMES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "names", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_ENVIRONMENTS_PREVIEW_NAMES", + "fromfile": false, + "help": "A mapping of logical names to addresses to environment targets. For example:\n\n [environments-preview.names]\n linux_local = \"//:linux_env\"\n macos_local = \"//:macos_env\"\n centos6 = \"//:centos6_docker_env\"\n linux_ci = \"build-support:linux_ci_env\"\n macos_ci = \"build-support:macos_ci_env\"\n\nTo use an environment for a given target, specify the name in the `environment` field on that target. Pants will consume the environment target at the address mapped from that name.\n\nPants will ignore any environment targets that are not given a name via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--environments-preview-names"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "fromfile": false, + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-groups-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--groups-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": ["PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-runner-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--runner-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["PATH"] + } + ] + } + }, + "PANTS_EXPERIMENTAL_BSP_SERVER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]experimental-bsp-server"], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "fromfile": false, + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--server", "--no-server"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-address="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "fromfile": false, + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + "PANTS_EXPERIMENTAL_EXPLORER_PORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-port="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "fromfile": false, + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + }, + "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-py-editable-in-resolve=\"['', '', ...]\"", + "config_key": "py_editable_in_resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-editable-in-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE", + "fromfile": false, + "help": "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.\n\nIf a resolve name is not in this list, 'python_distribution' targets will not be installed in the virtualenv. This defaults to an empty list for backwards compatibility and to prevent unnecessary work to generate and install the PEP-660 editable wheels.\n\nThis only applies when '[python].enable_resolves' is true and when exporting a 'mutable_virtualenv' ('symlinked_immutable_virtualenv' exports are not \"full\" virtualenvs because they must not be edited, and do not include 'pip').\n\nNOTE: If you are using legacy exports (not using the '--resolve' option), then this option has no effect. Legacy exports will not include any editable installs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-editable-in-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--py-editable-in-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_EXPORT_PY_RESOLVE_FORMAT": { + "choices": ["mutable_virtualenv", "symlinked_immutable_virtualenv"], + "comma_separated_choices": "mutable_virtualenv, symlinked_immutable_virtualenv", + "comma_separated_display_args": "--export-py-resolve-format=", + "config_key": "py_resolve_format", + "default": "mutable_virtualenv", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-resolve-format=" + ], + "env_var": "PANTS_EXPORT_PY_RESOLVE_FORMAT", + "fromfile": false, + "help": "Export Python resolves using this format. Options are:\n - `mutable_virtualenv`: Export a standalone mutable virtualenv that you can\n further modify.\n - `symlinked_immutable_virtualenv`: Export a symlink into a cached Python virtualenv.\n This virtualenv will have no pip binary, and will be immutable. Any attempt to\n modify it will corrupt the cache! It may, however, take significantly less time\n to export than a standalone, mutable virtualenv.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-resolve-format"], + "target_field_name": null, + "typ": "PythonResolveExportFormat", + "unscoped_cmd_line_args": ["--py-resolve-format"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mutable_virtualenv" + } + ] + } + }, + "PANTS_EXPORT_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--export-resolve=\"['', '', ...]\""], + "env_var": "PANTS_EXPORT_RESOLVE", + "fromfile": false, + "help": "Export the specified resolve(s). The export format is backend-specific, e.g., Python resolves are exported as virtualenvs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FILEDEPS_ABSOLUTE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-absolute"], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "fromfile": false, + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-absolute", "--no-filedeps-absolute"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--absolute", "--no-absolute"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILEDEPS_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-globs"], + "env_var": "PANTS_FILEDEPS_GLOBS", + "fromfile": false, + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-globs", "--no-filedeps-globs"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--globs", "--no-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILEDEPS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-output-file="], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FILEDEPS_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-sep="], + "env_var": "PANTS_FILEDEPS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_FILEDEPS_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-transitive"], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "fromfile": false, + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILTER_ADDRESS_REGEX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "fromfile": false, + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-address-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--address-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FILTER_GRANULARITY": { + "choices": ["all", "file", "BUILD"], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-granularity="], + "env_var": "PANTS_FILTER_GRANULARITY", + "fromfile": false, + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-granularity"], + "target_field_name": null, + "typ": "TargetGranularity", + "unscoped_cmd_line_args": ["--granularity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + "PANTS_FILTER_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-output-file="], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FILTER_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-sep="], + "env_var": "PANTS_FILTER_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_FILTER_TAG_REGEX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "fromfile": false, + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-tag-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FILTER_TARGET_TYPE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "fromfile": false, + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-target-type"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--target-type"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FIX_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-batch-size="], + "env_var": "PANTS_FIX_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each fixer batch.\n\nFixer processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in fixer processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_FIX_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-only=\"['', '', ...]\""], + "env_var": "PANTS_FIX_ONLY", + "fromfile": false, + "help": "Only run these fixers and skip all others.\n\nThe fixer names are outputted at the final summary of running this goal, e.g. `autoflake` and `pyupgrade`. You can also run `fix --only=fake` to get a list of all activated fixers.\n\nYou can repeat this option, e.g. `fix --only=autoflake --only=pyupgrade` or `fix --only=['autoflake', 'pyupgrade']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FIX_SKIP_FORMATTERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fix-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]fix-skip-formatters"], + "env_var": "PANTS_FIX_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters.\n\nFYI: when running `scie-pants-linux-x86_64 fix fmt ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `fix` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-skip-formatters", + "--no-fix-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-formatters", "--no-skip-formatters"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FLAKE8_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-args=\"[, , ...]\""], + "env_var": "PANTS_FLAKE8_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FLAKE8_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-config="], + "env_var": "PANTS_FLAKE8_CONFIG", + "fromfile": false, + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FLAKE8_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-config-discovery"], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_FLAKE8_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-console-script="], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + "PANTS_FLAKE8_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-entry-point="], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FLAKE8_EXTRA_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "fromfile": false, + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-extra-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FLAKE8_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-install-from-resolve="], + "env_var": "PANTS_FLAKE8_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `flake8` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FLAKE8_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-requirements=\"['', '', ...]\""], + "env_var": "PANTS_FLAKE8_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FLAKE8_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-skip"], + "env_var": "PANTS_FLAKE8_SKIP", + "fromfile": false, + "help": "If true, don't use Flake8 when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-skip", "--no-flake8-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FLAKE8_SOURCE_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add `'build-support/flake8'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.20/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside flake8 itself, as described in https://www.pantsbuild.org/v2.20/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FMT_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-batch-size="], + "env_var": "PANTS_FMT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_FMT_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-only=\"['', '', ...]\""], + "env_var": "PANTS_FMT_ONLY", + "fromfile": false, + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--generate-lockfiles-custom-command="], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "fromfile": false, + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-custom-command"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--custom-command"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_DIFF": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff", + "config_key": "diff", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF", + "fromfile": false, + "help": "Print a summary of changed distributions after generating the lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff", + "--no-generate-lockfiles-diff" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--diff", "--no-diff"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff-include-unchanged", + "config_key": "diff_include_unchanged", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff-include-unchanged"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED", + "fromfile": false, + "help": "Include unchanged distributions in the diff summary output. Implies `diff=true`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff-include-unchanged", + "--no-generate-lockfiles-diff-include-unchanged" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff-include-unchanged", + "--no-diff-include-unchanged" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "fromfile": false, + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from backend-specific configuration such as `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GOFMT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--gofmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--gofmt-args=\"[, , ...]\""], + "env_var": "PANTS_GOFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to gofmt, e.g. `--gofmt-args='-s -e'`.\n\nOnly the following style related options are supported: `-e`, `-r`, `-s`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GOFMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]gofmt-skip"], + "env_var": "PANTS_GOFMT_SKIP", + "fromfile": false, + "help": "If true, don't use gofmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-skip", "--no-gofmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GOLANG_ASDF_BIN_RELPATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-bin-relpath="], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "fromfile": false, + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-bin-relpath"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-bin-relpath"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + }, + "PANTS_GOLANG_ASDF_TOOL_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-tool-name="], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "fromfile": false, + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-tool-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-tool-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + "PANTS_GOLANG_CGO_CXX_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-cxx-flags=\"['', '', ...]\"", + "config_key": "cgo_cxx_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-cxx-flags=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_CGO_CXX_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C++ code when Cgo is enabled. Equivalent to setting the CGO_CXXFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-cxx-flags"], + "target_field_name": "golang_cgo_cxx_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-cxx-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + "PANTS_GOLANG_CGO_C_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-c-flags=\"['', '', ...]\"", + "config_key": "cgo_c_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-c-flags=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_CGO_C_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C code when Cgo is enabled. Equivalent to setting the CGO_CFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-c-flags"], + "target_field_name": "golang_cgo_c_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-c-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + "PANTS_GOLANG_CGO_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-cgo-enabled", + "config_key": "cgo_enabled", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-cgo-enabled"], + "env_var": "PANTS_GOLANG_CGO_ENABLED", + "fromfile": false, + "help": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-enabled", + "--no-golang-cgo-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cgo-enabled", "--no-cgo-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-binary-name=", + "config_key": "cgo_fortran_binary_name", + "default": "gfortran", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-fortran-binary-name="], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile fortran code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-binary-name"], + "target_field_name": "golang_cgo_fortran_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-fortran-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gfortran" + } + ] + } + }, + "PANTS_GOLANG_CGO_FORTRAN_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-flags=\"['', '', ...]\"", + "config_key": "cgo_fortran_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling Fortran code when Cgo is enabled. Equivalent to setting the CGO_FFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-flags"], + "target_field_name": "golang_cgo_fortran_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-fortran-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + "PANTS_GOLANG_CGO_GCC_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gcc-binary-name=", + "config_key": "cgo_gcc_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gcc-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GCC_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gcc-binary-name"], + "target_field_name": "golang_cgo_gcc_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gcc-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + "PANTS_GOLANG_CGO_GXX_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gxx-binary-name=", + "config_key": "cgo_gxx_binary_name", + "default": "g++", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gxx-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GXX_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C++ code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gxx-binary-name"], + "target_field_name": "golang_cgo_gxx_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gxx-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "g++" + } + ] + } + }, + "PANTS_GOLANG_CGO_LINKER_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-linker-flags=\"['', '', ...]\"", + "config_key": "cgo_linker_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-linker-flags=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_CGO_LINKER_FLAGS", + "fromfile": false, + "help": "Compiler options used when linking native code when Cgo is enabled. Equivalent to setting the CGO_LDFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-linker-flags"], + "target_field_name": "golang_cgo_linker_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-linker-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-tool-search-paths=\"['', '', ...]\"", + "config_key": "cgo_tool_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-tool-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for tools needed by CGo (e.g., gcc, g++).\n\nSpecify absolute paths to directories with tools needed by CGo , e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-tool-search-paths"], + "target_field_name": "golang_cgo_tool_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-tool-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-external-linker-binary-name=", + "config_key": "external_linker_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-external-linker-binary-name="], + "env_var": "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use as the \"external linker\" when invoking `go tool link`. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-external-linker-binary-name"], + "target_field_name": "golang_external_linker_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--external-linker-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + "PANTS_GOLANG_GO_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-go-search-paths=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable\n* ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binary with the version in `BUILD_ROOT/.tool-versions`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-go-search-paths"], + "target_field_name": "golang_go_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--go-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-minimum-expected-version="], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "fromfile": false, + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-minimum-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--minimum-expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + }, + "PANTS_GOLANG_SUBPROCESS_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-subprocess-env-vars"], + "target_field_name": "golang_subprocess_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--subprocess-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + }, + "PANTS_GOLANG_TAILOR_BINARY_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-binary-targets"], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-go-mod-targets"], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "fromfile": false, + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-package-targets"], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "fromfile": false, + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_AOSP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-aosp"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "fromfile": false, + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--aosp", "--no-aosp"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.google.googlejavaformat:google-java-format:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-lockfile="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-skip"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Google Java Format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-version="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + "PANTS_GO_GENERATE_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-generate-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-generate-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_GO_GENERATE_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking generator programs. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-generate-env-vars"], + "target_field_name": "go_generate_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + }, + "PANTS_GO_TEST_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GO_TEST_BLOCK_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-block-profile", + "config_key": "block_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-block-profile"], + "env_var": "PANTS_GO_TEST_BLOCK_PROFILE", + "fromfile": false, + "help": "Capture a goroutine blocking profile from the execution of the test runner. The profile will be written to the file `block.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-block-profile", + "--no-go-test-block-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--block-profile", "--no-block-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_COVERAGE_HTML": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-coverage-html", + "config_key": "coverage_html", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-coverage-html"], + "env_var": "PANTS_GO_TEST_COVERAGE_HTML", + "fromfile": false, + "help": "If true, then convert coverage reports to HTML format and write a `coverage.html` file next to the raw coverage data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-html", + "--no-go-test-coverage-html" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--coverage-html", "--no-coverage-html"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{target_spec}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-coverage-output-dir="], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Go coverage reports to. Must be relative to the build root.\n\nReplacements:\n\n - `{distdir}` is replaced with the Pants `distdir`.\n - `{target_spec}` is replaced with the address of the applicable `go_package` target with `/`\n characters replaced with dots (`.`).\n - `{import_path}` is replaced with the applicable package's import path. Subdirectories will be made\n for any path components separated by `/` characters.\n - `{import_path_escaped}` is replaced with the applicable package's import path but with\n slashes converted to underscores. This is deprecated and only exists to support behavior from\n earlier versions.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--coverage-output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{target_spec}" + } + ] + } + }, + "PANTS_GO_TEST_COVERAGE_PACKAGES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-packages=\"['', '', ...]\"", + "config_key": "coverage_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_PACKAGES", + "fromfile": false, + "help": "A list of \"import path patterns\" for determining which import paths will be instrumented for code coverage.\n\nFrom `go help packages`:\n\nAn import path is a pattern if it includes one or more \"...\" wildcards, each of which can match any string, including the empty string and strings containing slashes. Such a pattern expands to all package directories found in the GOPATH trees with names matching the patterns.\n\nTo make common patterns more convenient, there are two special cases. First, /... at the end of the pattern can match an empty string, so that net/... matches both net and packages in its subdirectories, like net/http. Second, any slash-separated pattern element containing a wildcard never participates in a match of the \"vendor\" element in the path of a vendored package, so that ./... does not match packages in subdirectories of ./vendor or ./mycode/vendor, but ./vendor/... and ./mycode/vendor/... do. Note, however, that a directory named vendor that itself contains code is not a vendored package: cmd/vendor would be a command named vendor, and the pattern cmd/... matches it. See golang.org/s/go15vendor for more about vendoring.\n\nThis option is similar to the `go test -coverpkg` option, but without support currently for reserved import path patterns like `std` and `all`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--coverage-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GO_TEST_COVER_MODE": { + "choices": ["set", "count", "atomic"], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-cover-mode="], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "fromfile": false, + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via `--test-use-coverage`. Valid values are `set`, `count`, and `atomic`:\n\n * `set`: bool: does this statement run?\n * `count`: int: how many times does this statement run?\n * `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-cover-mode"], + "target_field_name": null, + "typ": "GoCoverMode", + "unscoped_cmd_line_args": ["--cover-mode"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + }, + "PANTS_GO_TEST_CPU_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-cpu-profile", + "config_key": "cpu_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-cpu-profile"], + "env_var": "PANTS_GO_TEST_CPU_PROFILE", + "fromfile": false, + "help": "Capture a CPU profile from the execution of the test runner. The profile will be written to the file `cpu.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cpu-profile", + "--no-go-test-cpu-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cpu-profile", "--no-cpu-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_FORCE_ASAN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-asan", + "config_key": "force_asan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-asan"], + "env_var": "PANTS_GO_TEST_FORCE_ASAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"address sanitizer\" when running tests regardless of the test-by-test `asan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-asan", + "--no-go-test-force-asan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-asan", "--no-force-asan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_FORCE_MSAN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-msan", + "config_key": "force_msan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-msan"], + "env_var": "PANTS_GO_TEST_FORCE_MSAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"memory sanitizer\" when running tests regardless of the test-by-test `msan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-msan", + "--no-go-test-force-msan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-msan", "--no-force-msan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_FORCE_RACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-race", + "config_key": "force_race", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-race"], + "env_var": "PANTS_GO_TEST_FORCE_RACE", + "fromfile": false, + "help": "If true, then always enable the Go data race detector when running tests regardless of the test-by-test `test_race` field on the relevant `go_package` target.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-race", + "--no-go-test-force-race" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-race", "--no-force-race"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_MEM_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mem-profile", + "config_key": "mem_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mem-profile"], + "env_var": "PANTS_GO_TEST_MEM_PROFILE", + "fromfile": false, + "help": "Capture an allocation profile from the execution of the test runner after tests have passed. The profile will be written to the file `mem.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mem-profile", + "--no-go-test-mem-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mem-profile", "--no-mem-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_MUTEX_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mutex-profile", + "config_key": "mutex_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mutex-profile"], + "env_var": "PANTS_GO_TEST_MUTEX_PROFILE", + "fromfile": false, + "help": "Capture a mutex contention profile from the execution of the test runner when all tests are complete. The profile will be written to the file `mutex.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mutex-profile", + "--no-go-test-mutex-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mutex-profile", "--no-mutex-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_OUTPUT_TEST_BINARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-output-test-binary", + "config_key": "output_test_binary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-output-test-binary"], + "env_var": "PANTS_GO_TEST_OUTPUT_TEST_BINARY", + "fromfile": false, + "help": "Write the test binary to the test extra output directory.\n\nThis is similar to the `go test -c` option, but will still run the underlying test.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-output-test-binary", + "--no-go-test-output-test-binary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--output-test-binary", + "--no-output-test-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-skip"], + "env_var": "PANTS_GO_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Go test binary when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-skip", "--no-go-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_TRACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-trace", + "config_key": "trace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-trace"], + "env_var": "PANTS_GO_TEST_TRACE", + "fromfile": false, + "help": "Capture an execution trace from the execution of the test runner. The trace will be written to the file `trace.out` in the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-trace", "--no-go-test-trace"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--trace", "--no-trace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-url-template="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-version="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "fromfile": false, + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + "PANTS_HADOLINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-args=\"[, , ...]\""], + "env_var": "PANTS_HADOLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HADOLINT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-config="], + "env_var": "PANTS_HADOLINT_CONFIG", + "fromfile": false, + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HADOLINT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-config-discovery"], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_HADOLINT_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + "PANTS_HADOLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-skip"], + "env_var": "PANTS_HADOLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Hadolint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-skip", "--no-hadolint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HADOLINT_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + "PANTS_HADOLINT_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-url-template="], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_HADOLINT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-version="], + "env_var": "PANTS_HADOLINT_VERSION", + "fromfile": false, + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + "PANTS_HELM_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as follows:\n\n * --atomic\n * --cleanup-on-fail\n * --create-namespace\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n * --timeout\n\nBefore attempting to use passthrough arguments, check the reference of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-default-registry-repository="], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "fromfile": false, + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-default-registry-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-registry-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HELM_EXTRA_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-extra-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-k8s-parser-install-from-resolve="], + "env_var": "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-k8s-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + }, + "PANTS_HELM_K8S_PARSER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + "PANTS_HELM_LINT_STRICT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-lint-strict"], + "env_var": "PANTS_HELM_LINT_STRICT", + "fromfile": false, + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-lint-strict", "--no-helm-lint-strict"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-strict", "--no-lint-strict"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-post-renderer-install-from-resolve="], + "env_var": "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-post-renderer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + }, + "PANTS_HELM_POST_RENDERER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_REGISTRIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "fromfile": true, + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_HELM_TAILOR_CHARTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-charts", + "config_key": "tailor_charts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-tailor-charts"], + "env_var": "PANTS_HELM_TAILOR_CHARTS", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-charts", + "--no-helm-tailor-charts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-charts", "--no-tailor-charts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_HELM_TAILOR_UNITTESTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-unittests", + "config_key": "tailor_unittests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-tailor-unittests"], + "env_var": "PANTS_HELM_TAILOR_UNITTESTS", + "fromfile": false, + "help": "If true, add `helm_unittest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-unittests", + "--no-helm-tailor-unittests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-unittests", "--no-tailor-unittests"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_HELM_UNITTEST_COLOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-color"], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "fromfile": false, + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--color", "--no-color"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_UNITTEST_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + "PANTS_HELM_UNITTEST_OUTPUT_TYPE": { + "choices": ["XUnit", "NUnit", "JUnit"], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "fromfile": false, + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-output-type"], + "target_field_name": null, + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": ["--output-type"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + }, + "PANTS_HELM_UNITTEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-skip"], + "env_var": "PANTS_HELM_UNITTEST_SKIP", + "fromfile": false, + "help": "If true, don't use helmunittestsubsystem when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-skip", + "--no-helm-unittest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + }, + "PANTS_HELM_UNITTEST_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-url-template="], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_HELM_UNITTEST_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.3.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-version="], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "fromfile": false, + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.3.3" + } + ] + } + }, + "PANTS_HELM_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + "PANTS_HELM_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-url-template="], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + "PANTS_HELM_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_HELM_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.12.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-version="], + "env_var": "PANTS_HELM_VERSION", + "fromfile": false, + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.12.3" + } + ] + } + }, + "PANTS_IGNORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [".*/", "/dist/", "__pycache__", "!.semgrep/"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-ignore=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE", + "fromfile": false, + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc).\n\nPatterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored.\n\n`pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [".*/", "/dist/", "__pycache__", "!.semgrep/"] + } + ] + } + }, + "PANTS_IGNORE_USE_GITIGNORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pants-ignore-use-gitignore"], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "fromfile": false, + "help": "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.\n\nPatterns from `[GLOBAL].pants_ignore` take precedence over these files' rules. For example, you can use `!my_pattern` in `pants_ignore` to have Pants operate on files that are gitignored.\n\nWarning: this does not yet support reading nested gitignore files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_IGNORE_WARNINGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ignore-warnings=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE_WARNINGS", + "fromfile": false, + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ignore-warnings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-warnings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_IPYTHON_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-console-script="], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + "PANTS_IPYTHON_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-entry-point="], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_IPYTHON_IGNORE_CWD": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ipython-ignore-cwd"], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "fromfile": false, + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--ignore-cwd", "--no-ignore-cwd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_IPYTHON_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-install-from-resolve="], + "env_var": "PANTS_IPYTHON_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ipython` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_IPYTHON_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-requirements=\"['', '', ...]\""], + "env_var": "PANTS_IPYTHON_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-args=\"[, , ...]\""], + "env_var": "PANTS_ISORT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "fromfile": false, + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-config"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-config-discovery"], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_ISORT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-console-script="], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + "PANTS_ISORT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-entry-point="], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ISORT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-install-from-resolve="], + "env_var": "PANTS_ISORT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `isort` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ISORT_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_ISORT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-requirements=\"['', '', ...]\""], + "env_var": "PANTS_ISORT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-skip"], + "env_var": "PANTS_ISORT_SKIP", + "fromfile": false, + "help": "If true, don't use isort when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-skip", "--no-isort-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JARJAR_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[jarjar].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"] + } + ] + } + }, + "PANTS_JARJAR_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `jarjar` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JARJAR_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-lockfile="], + "env_var": "PANTS_JARJAR_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/jvm/shading/jarjar.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=jarjar`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY": { + "choices": ["fatal", "skip", "omit", "move"], + "comma_separated_choices": "fatal, skip, omit, move", + "comma_separated_display_args": "--jarjar-misplaced-class-strategy=", + "config_key": "misplaced_class_strategy", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-misplaced-class-strategy=" + ], + "env_var": "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY", + "fromfile": false, + "help": "The strategy to use when processing class files that are in the wrong package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-misplaced-class-strategy"], + "target_field_name": null, + "typ": "MisplacedClassStrategy", + "unscoped_cmd_line_args": ["--misplaced-class-strategy"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_JARJAR_SKIP_MANIFEST": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jarjar-skip-manifest", + "config_key": "skip_manifest", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jarjar-skip-manifest"], + "env_var": "PANTS_JARJAR_SKIP_MANIFEST", + "fromfile": false, + "help": "Skip the processing of the JAR manifest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-skip-manifest", + "--no-jarjar-skip-manifest" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-manifest", "--no-skip-manifest"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JARJAR_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-version=", + "config_key": "version", + "default": "1.8.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-version="], + "env_var": "PANTS_JARJAR_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[jarjar].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.8.1" + } + ] + } + }, + "PANTS_JAVAC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--javac-args=\"[, , ...]\""], + "env_var": "PANTS_JAVAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--javac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JAVAC_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]javac-tailor-source-targets"], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_JAVA_INFER_CONSUMED_TYPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-consumed-types"], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_JAVA_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-imports"], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "fromfile": false, + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--java-infer-third-party-import-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--third-party-import-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_JUNIT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JUNIT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + "PANTS_JUNIT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JUNIT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-lockfile="], + "env_var": "PANTS_JUNIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_JUNIT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]junit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]junit-skip"], + "env_var": "PANTS_JUNIT_SKIP", + "fromfile": false, + "help": "If true, don't use JUnit when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-skip", "--no-junit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JUNIT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-version="], + "env_var": "PANTS_JUNIT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + "PANTS_JVM_DEBUG_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-debug-args=\"['', '', ...]\""], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "fromfile": false, + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like `['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-debug-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--debug-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JVM_DEFAULT_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-default-resolve="], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + "PANTS_JVM_GLOBAL_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-global-options=\"['', '', ...]\""], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-global-options"], + "target_field_name": "jvm_global_options", + "typ": "list", + "unscoped_cmd_line_args": ["--global-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JVM_JDK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-jdk="], + "env_var": "PANTS_JVM_JDK", + "fromfile": false, + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-nailgun-remote-cache-speculation-delay="], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "fromfile": false, + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-nailgun-remote-cache-speculation-delay"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--nailgun-remote-cache-speculation-delay"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + }, + "PANTS_JVM_REPRODUCIBLE_JARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jvm-reproducible-jars"], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "fromfile": false, + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JVM_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\""], + "env_var": "PANTS_JVM_RESOLVES", + "fromfile": false, + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + "PANTS_JVM_TOOL_JDK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-tool-jdk="], + "env_var": "PANTS_JVM_TOOL_JDK", + "fromfile": false, + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-tool-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--tool-jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + "PANTS_KEEP_SANDBOXES": { + "choices": ["always", "on_failure", "never"], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--keep-sandboxes="], + "env_var": "PANTS_KEEP_SANDBOXES", + "fromfile": false, + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--keep-sandboxes"], + "target_field_name": null, + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": ["--keep-sandboxes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + "PANTS_KOTLINC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--kotlinc-args=\"[, , ...]\""], + "env_var": "PANTS_KOTLINC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_KOTLIN_INFER_CONSUMED_TYPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-consumed-types"], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_KOTLIN_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-imports"], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-tailor-source-targets"], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_KOTLIN_VERSION_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlin-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_KTLINT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.pinterest:ktlint:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.pinterest:ktlint:{version}"] + } + ] + } + }, + "PANTS_KTLINT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_KTLINT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-lockfile="], + "env_var": "PANTS_KTLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_KTLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ktlint-skip"], + "env_var": "PANTS_KTLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Ktlint when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-skip", "--no-ktlint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_KTLINT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-version="], + "env_var": "PANTS_KTLINT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + "PANTS_LEVEL": { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["-l=", "--level="], + "env_var": "PANTS_LEVEL", + "fromfile": false, + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["-l", "--level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["-l", "--level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + "PANTS_LINT_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-batch-size="], + "env_var": "PANTS_LINT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_LINT_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-only=\"['', '', ...]\""], + "env_var": "PANTS_LINT_ONLY", + "fromfile": false, + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_LINT_SKIP_FIXERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-fixers", + "config_key": "skip_fixers", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-fixers"], + "env_var": "PANTS_LINT_SKIP_FIXERS", + "fromfile": false, + "help": "If true, skip running all fixers in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fix lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fix` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-skip-fixers", "--no-lint-skip-fixers"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-fixers", "--no-skip-fixers"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LINT_SKIP_FORMATTERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-formatters"], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fmt lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-formatters", "--no-skip-formatters"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LIST_DOCUMENTED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]list-documented"], + "env_var": "PANTS_LIST_DOCUMENTED", + "fromfile": false, + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-documented", "--no-list-documented"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--documented", "--no-documented"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LIST_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-output-file="], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_LIST_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-sep="], + "env_var": "PANTS_LIST_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_LOCAL_CACHE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]local-cache"], + "env_var": "PANTS_LOCAL_CACHE", + "fromfile": false, + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_LOCAL_EXECUTION_ROOT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-execution-root-dir="], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "fromfile": false, + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-execution-root-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-execution-root-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + "PANTS_LOCAL_STORE_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-dir="], + "env_var": "PANTS_LOCAL_STORE_DIR", + "fromfile": false, + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-store-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-directories-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-directories-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-directories-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-files-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-processes-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + "PANTS_LOCAL_STORE_SHARD_COUNT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-shard-count="], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "fromfile": false, + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-shard-count"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-shard-count"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + "PANTS_LOGDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--logdir="], + "env_var": "PANTS_LOGDIR", + "fromfile": false, + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_LOG_LEVELS_BY_TARGET": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "fromfile": false, + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with `--level`. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--log-levels-by-target"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--log-levels-by-target"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_LOG_SHOW_RUST_3RDPARTY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]log-show-rust-3rdparty"], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "fromfile": false, + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LOOP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]loop"], + "env_var": "PANTS_LOOP", + "fromfile": false, + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop", "--no-loop"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--loop", "--no-loop"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LOOP_MAX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--loop-max="], + "env_var": "PANTS_LOOP_MAX", + "fromfile": false, + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--loop-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + "PANTS_MYPY_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-args=\"[, , ...]\""], + "env_var": "PANTS_MYPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_MYPY_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-config="], + "env_var": "PANTS_MYPY_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-config-discovery"], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_MYPY_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-console-script="], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + "PANTS_MYPY_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-entry-point="], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-install-from-resolve="], + "env_var": "PANTS_MYPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-protobuf-install-from-resolve="], + "env_var": "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy-protobuf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_MYPY_PROTOBUF_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_MYPY_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-requirements=\"['', '', ...]\""], + "env_var": "PANTS_MYPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_MYPY_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-skip"], + "env_var": "PANTS_MYPY_SKIP", + "fromfile": false, + "help": "If true, don't use MyPy when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-skip", "--no-mypy-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_MYPY_SOURCE_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].install_from_resolve` to a resolve whose lockfile includes those plugins, and set the `plugins` option in `mypy.ini`. See https://www.pantsbuild.org/v2.20/docs/python-check-goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_NAMED_CACHES_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--named-caches-dir="], + "env_var": "PANTS_NAMED_CACHES_DIR", + "fromfile": false, + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--named-caches-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--named-caches-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + "PANTS_NODEJS_COREPACK_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-corepack-env-vars=\"[, , ...]\"", + "config_key": "corepack_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-corepack-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_COREPACK_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `corepack` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nReview https://github.com/nodejs/corepack#environment-variables for available variables.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-corepack-env-vars"], + "target_field_name": "nodejs_corepack_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--corepack-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find any tools required to run nodejs processes. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-executable-search-paths"], + "target_field_name": "nodejs_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_NODEJS_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]nodejs-infer-imports"], + "env_var": "PANTS_NODEJS_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `// pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-imports", + "--no-nodejs-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_NODEJS_INFER_PACKAGE_JSON_ENTRY_POINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-package-json-entry-points", + "config_key": "package_json_entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]nodejs-infer-package-json-entry-points"], + "env_var": "PANTS_NODEJS_INFER_PACKAGE_JSON_ENTRY_POINTS", + "fromfile": false, + "help": "Infer a `package_json`'s dependencies by parsing entry point statements from the package.json file.\n\nTo ignore a false positive, you can put `!{bad_address}` in the `dependencies` field of the `package_json` target.\n\nSee https://nodejs.org/api/packages.html#package-entry-points and\n https://docs.npmjs.com/cli/v9/configuring-npm/package-json#browser.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-package-json-entry-points", + "--no-nodejs-infer-package-json-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-json-entry-points", + "--no-package-json-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_NODEJS_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_NODEJS_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ] + } + ] + } + }, + "PANTS_NODEJS_PACKAGE_MANAGER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-manager=", + "config_key": "package_manager", + "default": "npm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-package-manager="], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGER", + "fromfile": false, + "help": "Default Node.js package manager to use.\n\nYou can either rely on this default together with the [nodejs].package_managers option, or specify the `package.json#packageManager` tool and version in the package.json of your project.\n\nSpecifying conflicting package manager versions within a multi-package workspace is an error.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-manager"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--package-manager"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "npm" + } + ] + } + }, + "PANTS_NODEJS_PACKAGE_MANAGERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "package_managers", + "default": { + "npm": "8.5.5" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGERS", + "fromfile": false, + "help": "A mapping of package manager versions to semver releases.\n\nMany organizations only need a single version of a package manager, which is a good default and often the simplest thing to do.\n\nThe version download is managed by Corepack. This mapping corresponds to the https://github.com/nodejs/corepack#known-good-releases setting, using the `--activate` flag.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-managers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--package-managers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "npm": "8.5.5" + } + } + ] + } + }, + "PANTS_NODEJS_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_RESOLVES", + "fromfile": false, + "help": "A mapping of names to lockfile paths used in your project.\n\nSpecifying a resolve name is optional. If unspecified, the default resolve name is calculated by taking the path from the source root to the directory containing the lockfile and replacing '/' with '.' in that path.\n\nExample: An npm lockfile located at `src/js/package/package-lock.json' will result in a resolve named `js.package`, assuming src/ is a source root.\n\nRun `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_NODEJS_SEARCH_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Node.js distributions.\n\nThis option is only used if a templated url download specified via [nodejs].known_versions does not contain a version matching the configured [nodejs].version range.\n\nYou can specify absolute paths to binaries and/or to directories containing binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Node.js versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binaries with the version in `BUILD_ROOT/.tool-versions`\n* ``, all NodeJS versions under $NVM_DIR/versions/node\n* ``, the nvm installation with the version in BUILD_ROOT/.nvmrc\nNote that the version in the .nvmrc file has to be on the form \"vX.Y.Z\".", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-search-path"], + "target_field_name": "nodejs_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_NODEJS_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + } + } + ] + } + }, + "PANTS_NODEJS_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-template=", + "config_key": "url_template", + "default": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-url-template="], + "env_var": "PANTS_NODEJS_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar" + } + ] + } + }, + "PANTS_NODEJS_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-version=", + "config_key": "version", + "default": "v16.15.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-version="], + "env_var": "PANTS_NODEJS_VERSION", + "fromfile": false, + "help": "Use this version of nodejs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v16.15.0" + } + ] + } + }, + "PANTS_OPENAPI_FORMAT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--openapi-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_OPENAPI_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to openapi-format, e.g. `--openapi-format-args='--no-sort'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--openapi-format-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_OPENAPI_FORMAT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--openapi-format-install-from-resolve="], + "env_var": "PANTS_OPENAPI_FORMAT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--openapi-format-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_OPENAPI_FORMAT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]openapi-format-skip"], + "env_var": "PANTS_OPENAPI_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use openapi-format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-skip", + "--no-openapi-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_OPENAPI_FORMAT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-version=", + "config_key": "version", + "default": "openapi-format@1.13.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--openapi-format-version="], + "env_var": "PANTS_OPENAPI_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--openapi-format-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "openapi-format@1.13.1" + } + ] + } + }, + "PANTS_OPENAPI_TAILOR_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-tailor-targets", + "config_key": "tailor_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]openapi-tailor-targets"], + "env_var": "PANTS_OPENAPI_TAILOR_TARGETS", + "fromfile": false, + "help": "If true, add `openapi_documents` and `openapi_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-tailor-targets", + "--no-openapi-tailor-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-targets", "--no-tailor-targets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PANTSD": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsd"], + "env_var": "PANTS_PANTSD", + "fromfile": false, + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PANTSD_INVALIDATION_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "fromfile": false, + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PANTSD_MAX_MEMORY_USAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "4GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-max-memory-usage="], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + "PANTS_PANTSD_PAILGUN_PORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-pailgun-port="], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "fromfile": false, + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-pailgun-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--pantsd-pailgun-port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-timeout-when-multiple-invocations="], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "fromfile": false, + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-timeout-when-multiple-invocations"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--pantsd-timeout-when-multiple-invocations"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + "PANTS_PANTSRC": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsrc"], + "env_var": "PANTS_PANTSRC", + "fromfile": false, + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PANTSRC_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsrc-files=\"[, , ...]\""], + "env_var": "PANTS_PANTSRC_FILES", + "fromfile": false, + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsrc-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"] + } + ] + } + }, + "PANTS_PATHS_FROM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-from="], + "env_var": "PANTS_PATHS_FROM", + "fromfile": false, + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-from"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--from"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PATHS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-output-file="], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PATHS_TO": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-to="], + "env_var": "PANTS_PATHS_TO", + "fromfile": false, + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-to"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PEEK_EXCLUDE_DEFAULTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-exclude-defaults"], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "fromfile": false, + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--exclude-defaults", "--no-exclude-defaults"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEEK_INCLUDE_DEP_RULES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-include-dep-rules", + "config_key": "include_dep_rules", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-include-dep-rules"], + "env_var": "PANTS_PEEK_INCLUDE_DEP_RULES", + "fromfile": false, + "help": "Whether to include `_dependencies_rules`, `_dependents_rules` and `_applicable_dep_rules` that apply to the target and its dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-include-dep-rules", + "--no-peek-include-dep-rules" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--include-dep-rules", + "--no-include-dep-rules" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEEK_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--peek-output-file="], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--peek-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-binary-defaults-emit-warnings"], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "fromfile": false, + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--emit-warnings", "--no-emit-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-binary-defaults-resolve-local-platforms"], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "fromfile": false, + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEX_CLI_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.152|macos_arm64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|macos_x86_64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|linux_x86_64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|linux_arm64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.152|macos_arm64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|macos_x86_64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|linux_x86_64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|linux_arm64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187" + ] + } + ] + } + }, + "PANTS_PEX_CLI_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + "PANTS_PEX_CLI_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-url-template="], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.135,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_PEX_CLI_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.152", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-version="], + "env_var": "PANTS_PEX_CLI_VERSION", + "fromfile": false, + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.135,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.152" + } + ] + } + }, + "PANTS_PEX_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-executable-search-paths"], + "target_field_name": "pex_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_PEX_VENV_USE_SYMLINKS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-venv-use-symlinks"], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "fromfile": false, + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEX_VERBOSITY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-verbosity="], + "env_var": "PANTS_PEX_VERBOSITY", + "fromfile": false, + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-verbosity"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--verbosity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + "PANTS_PHYSICAL_WORKDIR_BASE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-physical-workdir-base="], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "fromfile": false, + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-physical-workdir-base"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-physical-workdir-base"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--plugins=\"['', '', ...]\""], + "env_var": "PANTS_PLUGINS", + "fromfile": false, + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PLUGINS_FORCE_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]plugins-force-resolve"], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "fromfile": false, + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PREAMBLE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]preamble-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]preamble-skip"], + "env_var": "PANTS_PREAMBLE_SKIP", + "fromfile": false, + "help": "If true, don't use preamble when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-skip", "--no-preamble-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "template_by_globs", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS", + "fromfile": true, + "help": "Which preamble template to use based on the path globs (relative to the build root).\n\nExample:\n\n {\n '*.rs': '// Copyright (c) $year\\n// Line 2\\n'\n '*.py:!__init__.py': '# Copyright (c) $year\\n# Line 2\\n',\n }\n\nIt might be helpful to load this config from a JSON or YAML file. To do that, set `[preamble].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-template-by-globs"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--template-by-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PRINT_STACKTRACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]print-stacktrace"], + "env_var": "PANTS_PRINT_STACKTRACE", + "fromfile": false, + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--print-stacktrace", "--no-print-stacktrace"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--print-stacktrace", "--no-print-stacktrace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PROCESS_CLEANUP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]process-cleanup"], + "env_var": "PANTS_PROCESS_CLEANUP", + "fromfile": false, + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--process-cleanup", "--no-process-cleanup"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--process-cleanup", "--no-process-cleanup"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-cache-namespace="], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "fromfile": false, + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-cache-namespace"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--process-execution-cache-namespace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-graceful-shutdown-timeout="], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "fromfile": false, + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-graceful-shutdown-timeout"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]process-execution-local-enable-nailgun"], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "fromfile": false, + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-local-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-local-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-local-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-remote-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-per-child-memory-usage="], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-per-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-per-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-total-child-memory-usage="], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-total-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-total-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-lockfile="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-version="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + "PANTS_PROTOC_DEPENDENCY_INFERENCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-dependency-inference"], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROTOC_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "24.4|linux_arm64 |83ac000ff540e242b6a2ff221a3ac88d2d8e55443801b7a28e9697e5f40e8937|2971447", + "24.4|linux_x86_64|5871398dfd6ac954a6adebf41f1ae3a4de915a36a6ab2fd3e8f2c00d45b50dec|3005774", + "24.4|macos_arm64 |d80544480397fe8a05d966fba291cf1233ad0db0ebc24ec72d7bd077d6e7ac59|2088802", + "24.4|macos_x86_64|6c3b6bf4038d733b6d31f1cc4516a656570b5b5aafb966b650f8182afd0b98cf|2121366", + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "24.4|linux_arm64 |83ac000ff540e242b6a2ff221a3ac88d2d8e55443801b7a28e9697e5f40e8937|2971447", + "24.4|linux_x86_64|5871398dfd6ac954a6adebf41f1ae3a4de915a36a6ab2fd3e8f2c00d45b50dec|3005774", + "24.4|macos_arm64 |d80544480397fe8a05d966fba291cf1233ad0db0ebc24ec72d7bd077d6e7ac59|2088802", + "24.4|macos_x86_64|6c3b6bf4038d733b6d31f1cc4516a656570b5b5aafb966b650f8182afd0b98cf|2121366", + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + "PANTS_PROTOC_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-tailor"], + "env_var": "PANTS_PROTOC_TAILOR", + "fromfile": false, + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-tailor", "--no-protoc-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROTOC_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + "PANTS_PROTOC_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-url-template="], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + "PANTS_PROTOC_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_PROTOC_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-version="], + "env_var": "PANTS_PROTOC_VERSION", + "fromfile": false, + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + "PANTS_PUBLISH_OUTPUT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--publish-output="], + "env_var": "PANTS_PUBLISH_OUTPUT", + "fromfile": false, + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--publish-output"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-args=\"[, , ...]\""], + "env_var": "PANTS_PYDOCSTYLE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pydocstyle, e.g. `--pydocstyle-args='--select=D101,D102'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYDOCSTYLE_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-config="], + "env_var": "PANTS_PYDOCSTYLE_CONFIG", + "fromfile": false, + "help": "Path to a Pydocstyle config file (http://www.pydocstyle.org/en/stable/usage.html#configuration-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-config-discovery"], + "env_var": "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`setup.cfg`, `tox.ini`, `.pydocstyle`, `.pydocstyle.ini`, `.pydocstylerc`, `.pydocstylerc.ini`, and `pyproject.toml`) searching for the configuration file in this particular order.\n\nPlease note that even though `pydocstyle` keeps looking for a configuration file up the directory tree until one is found, Pants will only search for the config files in the repository root (from where you would normally run the `` command).\n\nUse `[pydocstyle].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config-discovery", + "--no-pydocstyle-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-console-script=", + "config_key": "console_script", + "default": "pydocstyle", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-console-script="], + "env_var": "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle" + } + ] + } + }, + "PANTS_PYDOCSTYLE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-entry-point="], + "env_var": "PANTS_PYDOCSTYLE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-install-from-resolve="], + "env_var": "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pydocstyle` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_PYDOCSTYLE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYDOCSTYLE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYDOCSTYLE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-skip"], + "env_var": "PANTS_PYDOCSTYLE_SKIP", + "fromfile": false, + "help": "If true, don't use Pydocstyle when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-skip", "--no-pydocstyle-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYLINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-args=\"[, , ...]\""], + "env_var": "PANTS_PYLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYLINT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-config="], + "env_var": "PANTS_PYLINT_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYLINT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-config-discovery"], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYLINT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-console-script="], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + "PANTS_PYLINT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-entry-point="], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYLINT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-install-from-resolve="], + "env_var": "PANTS_PYLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pylint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYLINT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-skip"], + "env_var": "PANTS_PYLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Pylint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-skip", "--no-pylint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYLINT_SOURCE_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add `'build-support/pylint'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.20/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside pylint itself, as described in https://www.pantsbuild.org/v2.20/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYOXIDIZER_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-args=\"[, , ...]\""], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYOXIDIZER_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-console-script="], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + "PANTS_PYOXIDIZER_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-entry-point="], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-install-from-resolve="], + "env_var": "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyoxidizer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.8,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.8,<4"] + } + ] + } + }, + "PANTS_PYOXIDIZER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYOXIDIZER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTEST_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTEST_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-config="], + "env_var": "PANTS_PYTEST_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-config-discovery"], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTEST_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-console-script="], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + "PANTS_PYTEST_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-entry-point="], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_EXECUTION_SLOT_VAR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-execution-slot-var="], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "fromfile": false, + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-execution-slot-var"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--execution-slot-var"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-install-from-resolve="], + "env_var": "PANTS_PYTEST_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytest` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_JUNIT_FAMILY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-junit-family="], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "fromfile": false, + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-junit-family"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--junit-family"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + "PANTS_PYTEST_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYTEST_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-skip"], + "env_var": "PANTS_PYTEST_SKIP", + "fromfile": false, + "help": "If true, don't use Pytest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-skip", "--no-pytest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTEST_XDIST_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-xdist-enabled"], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "fromfile": false, + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--xdist-enabled", "--no-xdist-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHONPATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pythonpath=\"['', '', ...]\""], + "env_var": "PANTS_PYTHONPATH", + "fromfile": false, + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pythonpath"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pythonpath"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "internal_python_build_standalone_info", + "default": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO", + "fromfile": false, + "help": "A map from platform to the information needed to download Python Build Standalone.\n\nPython Build Standalone is used to run Python-implemented Pants tools/scripts in docker environments (so that Python doesn't need to be installed).\n\nThe version of Python provided should match the default value's version, which is the highest Python Major/Minor version compatible with the Pants package's interpreter constraints. Additionally, the downloaded file should be extractable by `tar` using `-xvf` (most likely a `.tar.gz` file).\n\nThe schema is `: (, , )` for each possible platform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-internal-python-build-standalone-info" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--internal-python-build-standalone-info"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + } + } + ] + } + }, + "PANTS_PYTHON_BOOTSTRAP_NAMES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": ["python", "python3"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "fromfile": false, + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-names"], + "target_field_name": "python_bootstrap_names", + "typ": "list", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["python", "python3"] + } + ] + } + }, + "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": ["", "", ""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Python interpreters.\n\nWhich interpreters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in `BUILD_ROOT/.tool-versions`\n* ``, all Python versions under `$(pyenv root)/versions`\n* ``, the Pyenv interpreter with the version in `BUILD_ROOT/.python-version`\n* ``, paths in the `PEX_PYTHON_PATH` variable in `/etc/pexrc` or `~/.pexrc`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-search-path"], + "target_field_name": "python_bootstrap_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["", "", ""] + } + ] + } + }, + "PANTS_PYTHON_DEFAULT_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-default-resolve="], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-default-run-goal-use-sandbox"], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "fromfile": false, + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR": { + "choices": ["raw_dependency_inference", "dependency_inference"], + "comma_separated_choices": "raw_dependency_inference, dependency_inference", + "comma_separated_display_args": "--python-dump-source-analysis-analysis-flavor=", + "config_key": "analysis_flavor", + "default": "dependency_inference", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-dump-source-analysis-analysis-flavor=" + ], + "env_var": "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR", + "fromfile": false, + "help": "The type of information that should be returned.\n\n* `dependency_inference`: The results of dependency inference, for every detected import in every file.\n\n* `raw_dependency_inference`: The raw intermediate results of the dependency inference process,\nat every stage they're available. Potentially useful for debugging the dependency inference process.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-dump-source-analysis-analysis-flavor"], + "target_field_name": null, + "typ": "AnalysisFlavor", + "unscoped_cmd_line_args": ["--analysis-flavor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dependency_inference" + } + ] + } + }, + "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-lockfile-targets", + "config_key": "enable_lockfile_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-lockfile-targets"], + "env_var": "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS", + "fromfile": false, + "help": "Create targets for all Python lockfiles defined in `[python].resolves`.\n\nThe lockfile targets will then be used as dependencies to the `python_requirement` targets that use them, invalidating source targets per resolve when the lockfile changes.\n\nIf another targets address is in conflict with the created lockfile target, it will shadow the lockfile target and it will not be available as a dependency for any `python_requirement` targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-lockfile-targets", + "--no-python-enable-lockfile-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-lockfile-targets", + "--no-enable-lockfile-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_ENABLE_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-resolves"], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "fromfile": false, + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enable-resolves", "--no-enable-resolves"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION": { + "choices": ["none", "by_source_root"], + "comma_separated_choices": "none, by_source_root", + "comma_separated_display_args": "--python-infer-ambiguity-resolution=", + "config_key": "ambiguity_resolution", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ambiguity-resolution=" + ], + "env_var": "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION", + "fromfile": false, + "help": "When multiple sources provide the same symbol, how to choose the provider to use.\n\n`none`: Do not attempt to resolve this ambiguity. No dependency will be inferred, and warnings will be logged.\n\n`by_source_root`: Choose the provider with the closest common ancestor to the consumer's source root. If the provider is under the same source root then this will be the source root itself. This is useful when multiple projects in different source roots provide the same symbols (because of repeated first-party module paths or overlapping requirements.txt) and you want to resolve the ambiguity locally in each project.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ambiguity-resolution"], + "target_field_name": null, + "typ": "AmbiguityResolution", + "unscoped_cmd_line_args": ["--ambiguity-resolution"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + "PANTS_PYTHON_INFER_ASSETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-assets"], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "fromfile": false, + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--assets", "--no-assets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-assets-min-slashes="], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "fromfile": false, + "help": "If `--assets` is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-assets-min-slashes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--assets-min-slashes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + "PANTS_PYTHON_INFER_CONFTESTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-conftests"], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "fromfile": false, + "help": "Infer a test target's dependencies on any `conftest.py` files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--conftests", "--no-conftests"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INFER_ENTRY_POINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-entry-points"], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "fromfile": false, + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_aws_lambda_function`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--entry-points", "--no-entry-points"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-ignored-unowned-imports=\"['', '', ...]\"", + "config_key": "ignored_unowned_imports", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ignored-unowned-imports=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS", + "fromfile": false, + "help": "Unowned imports that should be ignored.\n\nIf there are any unowned import statements and adding the `# pants: no-infer-dep` to the lines of the import is impractical, you can instead provide a list of imports that Pants should ignore. You can declare a specific import or a path to a package if you would like any of the package imports to be ignored.\n\nFor example, you could ignore all the following imports of the code\n\n import src.generated.app\n from src.generated.app import load\n from src.generated.app import start\n from src.generated.client import connect\n\nby setting `ignored-unowned-imports=[\"src.generated.app\", \"src.generated.client.connect\"]`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ignored-unowned-imports"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignored-unowned-imports"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-imports"], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INFER_INIT_FILES": { + "choices": ["always", "content_only", "never"], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-init-files="], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "fromfile": false, + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-init-files"], + "target_field_name": null, + "typ": "InitFilesInference", + "unscoped_cmd_line_args": ["--init-files"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + "PANTS_PYTHON_INFER_STRING_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-string-imports"], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings or pytest plugins listed in the `pytest_plugins` variable in a test module or a conftest file.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--string-imports", "--no-string-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-string-imports-min-dots="], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "fromfile": false, + "help": "If `--string-imports` is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-string-imports-min-dots"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--string-imports-min-dots"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR": { + "choices": ["error", "warning", "ignore"], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "fromfile": false, + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-unowned-dependency-behavior"], + "target_field_name": null, + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": ["--unowned-dependency-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + }, + "PANTS_PYTHON_INFER_USE_RUST_PARSER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-use-rust-parser", + "config_key": "use_rust_parser", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-use-rust-parser"], + "env_var": "PANTS_PYTHON_INFER_USE_RUST_PARSER", + "fromfile": false, + "help": "Use the new Rust-based, multithreaded, in-process dependency parser.\n\nPants 2.17 introduced a new paradigm to dependency parsing for Python by leveraging a Rust-based parser that's called in the same process as Pants itself, instead of farming out to one-python-process-per-file.\n\nAs a result of the switch, cold-cache performance improved by a factor of about 12x, while hot-cache had no difference. Additionally, Pants can now infer dependencies from Python scripts with syntax errors.\n\nAfter leaving this defaulted to disabled for a release cycle, Pants 2.18 started defaulting to enabling this.\n\nIf you think the new behaviour is causing problems, it is recommended that you run `scie-pants-linux-x86_64 peek :: > before.json` and then `scie-pants-linux-x86_64 --python-infer-use-rust-parser=False peek :: > after.json` and compare the two results.\n\nIf you think there is a bug and need to disable it, please file an issue: https://github.com/pantsbuild/pants/issues/new/choose.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-use-rust-parser", + "--no-python-infer-use-rust-parser" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--use-rust-parser", "--no-use-rust-parser"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. `'CPython>=2.7,<3'` (A CPython interpreter with version >=2.7 AND version <3) or `'PyPy'` (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "fromfile": false, + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. `'2.7'` or `'3.10'`. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-versions-universe"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-versions-universe"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ] + } + ] + } + }, + "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR": { + "choices": ["error", "ignore", "warn"], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "fromfile": false, + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-invalid-lockfile-behavior"], + "target_field_name": null, + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": ["--invalid-lockfile-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-macos-big-sur-compatibility"], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "fromfile": false, + "help": "If set, and if running on macOS Big Sur, use `macosx_10_16` as the platform when building wheels. Otherwise, the default of `macosx_11_0` will be used. This may be required for `pip` to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "fromfile": false, + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `CPPFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-cpp-flags"], + "target_field_name": "python_native_code_cpp_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cpp-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "fromfile": false, + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `LDFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-ld-flags"], + "target_field_name": "python_native_code_ld_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--ld-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_PYTHON_PIP_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-pip-version=", + "config_key": "pip_version", + "default": "23.1.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-pip-version="], + "env_var": "PANTS_PYTHON_PIP_VERSION", + "fromfile": false, + "help": "Use this version of Pip for resolving requirements and generating lockfiles.\n\nThe value used here must be one of the Pip versions supported by the underlying PEX version. See https://www.pantsbuild.org/v2.20/docs/pex for details.\n\nN.B.: The `latest` value selects the latest of the choices listed by PEX which is not necessarily the latest Pip version released on PyPI.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-pip-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pip-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "23.1.2" + } + ] + } + }, + "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-mypy-plugin"], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "fromfile": false, + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate `.pyi` type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mypy-plugin", "--no-mypy-plugin"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_REPL_HISTORY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-repl-history", + "config_key": "repl_history", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-repl-history"], + "env_var": "PANTS_PYTHON_REPL_HISTORY", + "fromfile": false, + "help": "Whether to use the standard Python command history file when running a repl.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repl-history", + "--no-python-repl-history" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--repl-history", "--no-repl-history"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_REPOS_FIND_LINKS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-repos-find-links=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "fromfile": false, + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-find-links"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--find-links"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_REPOS_INDEXES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": ["https://pypi.org/simple/"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-repos-indexes=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "fromfile": false, + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-indexes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--indexes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["https://pypi.org/simple/"] + } + ] + } + }, + "PANTS_PYTHON_REPOS_PATH_MAPPINGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "fromfile": false, + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what `WHEELS_DIR` points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.20/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.20/docs/options#pantsrc-file.\n\nNote: Only takes effect if using Pex lockfiles, i.e. using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-path-mappings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--path-mappings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_REPOS_REPOS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-repos-repos=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "fromfile": false, + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-repos-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-requirement-constraints="], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "fromfile": false, + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-requirement-constraints"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--requirement-constraints"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTHON_RESOLVER_MANYLINUX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-resolver-manylinux="], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "fromfile": false, + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g. `'manylinux2010'`, or else the string `'no'` to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolver-manylinux"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--resolver-manylinux"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + "PANTS_PYTHON_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "fromfile": false, + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.20/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-resolves-generate-lockfiles"], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "fromfile": false, + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "fromfile": false, + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-constraints-file"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-constraints-file"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python].interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use `['==3.9.*']` via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to `['==3.7.*']`, then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-interpreter-constraints"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_NO_BINARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve, you can also use the value `:all:` to disable all binary packages: `{'data-science': [':all:']}`.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-no-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-no-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve you can use the value `:all:` to disable all source packages: `{'data-science': [':all:']}`.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-only-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-only-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]python-resolve-all-constraints"], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "fromfile": false, + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-run-against-entire-lockfile"], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "fromfile": false, + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile\n changes, rather than just those that depend on the changed requirement.\n2) Requirements unneeded by a test/run/repl will be present on the sys.path, which\n might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-ignore-empty-init-files"], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "fromfile": false, + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-pex-binary-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-py-typed-targets", + "config_key": "tailor_py_typed_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-py-typed-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS", + "fromfile": false, + "help": "If true, add `resource` targets for marker files named `py.typed` with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-py-typed-targets", + "--no-python-tailor-py-typed-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-py-typed-targets", + "--no-tailor-py-typed-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-requirements-targets"], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "fromfile": false, + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-source-targets"], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-thrift-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_THRIFT_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-thrift-options=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "fromfile": false, + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-thrift-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTYPE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-args=\"[, , ...]\""], + "env_var": "PANTS_PYTYPE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytype, e.g. `--pytype-args='--version'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTYPE_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-config="], + "env_var": "PANTS_PYTYPE_CONFIG", + "fromfile": false, + "help": "Path to an toml config file understood by Pytype (https://github.com/google/pytype#config-file).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTYPE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-console-script=", + "config_key": "console_script", + "default": "pytype", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-console-script="], + "env_var": "PANTS_PYTYPE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytype" + } + ] + } + }, + "PANTS_PYTYPE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-entry-point="], + "env_var": "PANTS_PYTYPE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTYPE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-install-from-resolve="], + "env_var": "PANTS_PYTYPE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytype` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTYPE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTYPE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + }, + "PANTS_PYTYPE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYTYPE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTYPE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytype-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytype-skip"], + "env_var": "PANTS_PYTYPE_SKIP", + "fromfile": false, + "help": "If true, don't use Pytype when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-skip", "--no-pytype-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYUPGRADE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-args=\"[, , ...]\""], + "env_var": "PANTS_PYUPGRADE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYUPGRADE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-console-script="], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + "PANTS_PYUPGRADE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-entry-point="], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-install-from-resolve="], + "env_var": "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyupgrade` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_PYUPGRADE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYUPGRADE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYUPGRADE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pyupgrade-skip"], + "env_var": "PANTS_PYUPGRADE_SKIP", + "fromfile": false, + "help": "If true, don't use pyupgrade when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-skip", "--no-pyupgrade-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PY_CONSTRAINTS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--py-constraints-output-file="], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--py-constraints-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PY_CONSTRAINTS_SUMMARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]py-constraints-summary"], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "fromfile": false, + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependents`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependents` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependents).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--summary", "--no-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REGEX_LINT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "fromfile": true, + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-config"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_REGEX_LINT_DETAIL_LEVEL": { + "choices": ["none", "summary", "nonmatching", "names", "all"], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--regex-lint-detail-level="], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "fromfile": false, + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-detail-level"], + "target_field_name": null, + "typ": "DetailLevel", + "unscoped_cmd_line_args": ["--detail-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + }, + "PANTS_REGEX_LINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]regex-lint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]regex-lint-skip"], + "env_var": "PANTS_REGEX_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use regex-lint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-skip", "--no-regex-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_CACHE_READ": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-read"], + "env_var": "PANTS_REMOTE_CACHE_READ", + "fromfile": false, + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-read", "--no-remote-cache-read"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_CACHE_RPC_CONCURRENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-concurrency="], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-timeout-millis=", + "config_key": "remote_cache_rpc_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache RPCs in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + "PANTS_REMOTE_CACHE_WARNINGS": { + "choices": ["ignore", "first_only", "backoff", "always"], + "comma_separated_choices": "ignore, first_only, backoff, always", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-warnings="], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "fromfile": false, + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-warnings"], + "target_field_name": null, + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": ["--remote-cache-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + "PANTS_REMOTE_CACHE_WRITE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-write"], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "fromfile": false, + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_CA_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-ca-certs-path="], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_CLIENT_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-certs-path=", + "config_key": "remote_client_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-client-certs-path="], + "env_var": "PANTS_REMOTE_CLIENT_CERTS_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_key_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-client-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-client-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_CLIENT_KEY_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-key-path=", + "config_key": "remote_client_key_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-client-key-path="], + "env_var": "PANTS_REMOTE_CLIENT_KEY_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_certs_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-client-key-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-client-key-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_EXECUTION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-execution"], + "env_var": "PANTS_REMOTE_EXECUTION", + "fromfile": false, + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution", "--no-remote-execution"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--remote-execution", "--no-remote-execution"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_ADDRESS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-address="], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "fromfile": false, + "help": "The URI of a server/entity used as a remote execution scheduler.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.\n\nSupported schemes:\n\n- `grpc://`, `grpcs://`: Use a [Remote Execution API](https://github.com/bazelbuild/remote-apis) remote caching/execution server. `grpcs` uses TLS while `grpc` does not. Format: `grpc[s]://$host:$port`.\n\n- `experimental:file://`, `experimental:github-actions-cache+http://`, `experimental:github-actions-cache+https://`: Remote execution is not supported.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-execution-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-append-only-caches-base-path=", + "config_key": "remote_execution_append_only_caches_base_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-append-only-caches-base-path="], + "env_var": "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH", + "fromfile": false, + "help": "Sets the base path to use when setting up an append-only cache for a process running remotely. If this option is not set, then append-only caches will not be used with remote execution. The option should be set to the absolute path of a writable directory in the remote execution environment where Pants can create append-only caches for use with remotely executing processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "fromfile": false, + "help": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.\n\nIf you are using the `remote_environment` target mechanism, set this value as a field on the target instead. This option will be ignored.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-extra-platform-properties"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_HEADERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "fromfile": false, + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-execution-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.20.0.dev2" + } + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-overall-deadline-secs="], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "fromfile": false, + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-overall-deadline-secs"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-execution-overall-deadline-secs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-rpc-concurrency="], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_REMOTE_INSTANCE_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-instance-name="], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "fromfile": false, + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use a Pants plugin which provides remote authentication to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-instance-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-instance-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_OAUTH_BEARER_TOKEN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token=", + "config_key": "remote_oauth_bearer_token", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-oauth-bearer-token="], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN", + "fromfile": false, + "help": "An oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.\n\nRecommendation: do not place a token directly in `pants.toml`, instead do one of: set the token via the environment variable (`PANTS_REMOTE_OAUTH_BEARER_TOKEN`), CLI option (`--remote-oauth-bearer-token`), or store the token in a file and set the option to `\"@/path/to/token.txt\"` to [read the value from that file](https://www.pantsbuild.org/v2.20/docs/options#reading-individual-option-values-from-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-oauth-bearer-token"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-oauth-bearer-token"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.21.0.dev0.", + "deprecation_active": true, + "display_args": ["--remote-oauth-bearer-token-path="], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "fromfile": false, + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": "use `[GLOBAL].remote_oauth_bearer_token = \"@/path/to/token.txt\"` instead, see https://www.pantsbuild.org/v2.20/docs/reference-global#remote_oauth_bearer_token", + "removal_version": "2.21.0.dev0", + "scoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_STORE_ADDRESS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-address="], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "fromfile": false, + "help": "The URI of a server/entity used as a remote file store.\n\nSupported schemes:\n\n- `grpc://`, `grpcs://`: Use a [Remote Execution API](https://github.com/bazelbuild/remote-apis) remote caching/execution server. `grpcs` uses TLS while `grpc` does not. Format: `grpc[s]://$host:$port`.\n\n- `experimental:file://`: Use a local directory as a 'remote' store, for testing, debugging, or potentially an NFS mount. Format: `file://$path`. For example: `file:///tmp/remote-cache-example/` will store within the `/tmp/remote-cache-example/` directory, creating it if necessary.\n\n- `experimental:github-actions-cache+http://`, `experimental:github-actions-cache+https://`: Use the GitHub Actions Cache for fine-grained caching. This requires extracting `ACTIONS_CACHE_URL` (passing it in `PANTS_REMOTE_STORE_ADDRESS`) and `ACTIONS_RUNTIME_TOKEN` (passing it in `PANTS_REMOTE_OAUTH_BEARER_TOKEN`). See https://www.pantsbuild.org/v2.20/docs/remote-caching#github-actions-cache for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-store-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-batch-api-size-limit="], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "fromfile": false, + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + "PANTS_REMOTE_STORE_CHUNK_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-chunk-bytes="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "fromfile": false, + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + "PANTS_REMOTE_STORE_HEADERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "fromfile": false, + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-store-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.20.0.dev2" + } + } + ] + } + }, + "PANTS_REMOTE_STORE_RPC_CONCURRENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-concurrency="], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_REMOTE_STORE_RPC_RETRIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-retries="], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "fromfile": false, + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-retries"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-retries"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-timeout-millis=", + "config_key": "remote_store_rpc_timeout_millis", + "default": 30000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote store RPCs (not including streaming requests) in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 30000 + } + ] + } + }, + "PANTS_REPL_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_REPL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the repl program, e.g. `--repl-args='-i helloworld/main.py'`.\n\nCurrently supported only for the ipython shell.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_REPL_RESTARTABLE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]repl-restartable"], + "env_var": "PANTS_REPL_RESTARTABLE", + "fromfile": false, + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-restartable", "--no-repl-restartable"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--restartable", "--no-restartable"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REPL_SHELL": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--repl-shell="], + "env_var": "PANTS_REPL_SHELL", + "fromfile": false, + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-shell"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shell"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ROOTS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-output-file="], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ROOTS_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-sep="], + "env_var": "PANTS_ROOTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_RUFF_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-args=\"[, , ...]\""], + "env_var": "PANTS_RUFF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Ruff, e.g. `--ruff-args='--exclude=foo --ignore=E501'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_RUFF_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-config="], + "env_var": "PANTS_RUFF_CONFIG", + "fromfile": false, + "help": "Path to the `pyproject.toml` or `ruff.toml` file to use for configuration (https://github.com/astral-sh/ruff#configuration).\n\nSetting this option will disable `[ruff].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUFF_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-config-discovery"], + "env_var": "PANTS_RUFF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`pyproject.toml`, and `ruff.toml`).\n\nUse `[ruff].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config-discovery", + "--no-ruff-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_RUFF_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-console-script=", + "config_key": "console_script", + "default": "ruff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-console-script="], + "env_var": "PANTS_RUFF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff" + } + ] + } + }, + "PANTS_RUFF_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-entry-point="], + "env_var": "PANTS_RUFF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUFF_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-install-from-resolve="], + "env_var": "PANTS_RUFF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ruff` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUFF_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_RUFF_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-requirements=\"['', '', ...]\""], + "env_var": "PANTS_RUFF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_RUFF_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-skip"], + "env_var": "PANTS_RUFF_SKIP", + "fromfile": false, + "help": "If true, don't use Ruff when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 fix` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-skip", "--no-ruff-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_RULE_THREADS_CORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-core="], + "env_var": "PANTS_RULE_THREADS_CORE", + "fromfile": false, + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-core"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-core"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + "PANTS_RULE_THREADS_MAX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-max="], + "env_var": "PANTS_RULE_THREADS_MAX", + "fromfile": false, + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUN_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_RUN_DEBUG_ADAPTER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]run-debug-adapter"], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--run-debug-adapter", "--no-run-debug-adapter"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALAC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalac-args=\"[, , ...]\""], + "env_var": "PANTS_SCALAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAC_PLUGINS_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_SCALAFMT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalameta:scalafmt-cli_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalameta:scalafmt-cli_2.13:{version}"] + } + ] + } + }, + "PANTS_SCALAFMT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAFMT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-lockfile="], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_SCALAFMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalafmt-skip"], + "env_var": "PANTS_SCALAFMT_SKIP", + "fromfile": false, + "help": "If true, don't use scalafmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-skip", "--no-scalafmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALAFMT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-version="], + "env_var": "PANTS_SCALAFMT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + "PANTS_SCALAPB_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.thesamet.scalapb:scalapbc_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.thesamet.scalapb:scalapbc_2.13:{version}"] + } + ] + } + }, + "PANTS_SCALAPB_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAPB_JVM_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-plugins=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "fromfile": false, + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set `--scalapb-runtime-dependencies` appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAPB_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-lockfile="], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_SCALAPB_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-version="], + "env_var": "PANTS_SCALAPB_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + "PANTS_SCALATEST_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALATEST_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalatest:scalatest_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalatest:scalatest_2.13:{version}"] + } + ] + } + }, + "PANTS_SCALATEST_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALATEST_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-lockfile="], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_SCALATEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalatest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalatest-skip"], + "env_var": "PANTS_SCALATEST_SKIP", + "fromfile": false, + "help": "If true, don't use Scalatest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-skip", "--no-scalatest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALATEST_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-version="], + "env_var": "PANTS_SCALATEST_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + "PANTS_SCALA_INFER_CONSUMED_TYPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-consumed-types"], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-force-add-siblings-as-dependencies"], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "fromfile": false, + "help": "If true, add a dependency on all `scala_source` targets generated by the same `scala_sources` target generator. If false, the dependencies will only be added if `[scala-infer].imports` is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALA_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-imports"], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_INFER_PACKAGE_OBJECTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-package-objects"], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "fromfile": false, + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--package-objects", "--no-package-objects"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-tailor-source-targets"], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_VERSION_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scala-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_SCC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCC_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + "PANTS_SCC_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + "PANTS_SCC_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-url-template="], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + "PANTS_SCC_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SCC_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-version="], + "env_var": "PANTS_SCC_VERSION", + "fromfile": false, + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + "PANTS_SEMGREP_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-args=\"[, , ...]\"", + "config_key": "args", + "default": ["--quiet"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--semgrep-args=\"[, , ...]\""], + "env_var": "PANTS_SEMGREP_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Semgrep, e.g. `--semgrep-args='--verbose'`.\n\nThis includes --quiet by default to reduce the volume of output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["--quiet"] + } + ] + } + }, + "PANTS_SEMGREP_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-console-script=", + "config_key": "console_script", + "default": "semgrep", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--semgrep-console-script="], + "env_var": "PANTS_SEMGREP_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "semgrep" + } + ] + } + }, + "PANTS_SEMGREP_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--semgrep-entry-point="], + "env_var": "PANTS_SEMGREP_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SEMGREP_FORCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]semgrep-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]semgrep-force"], + "env_var": "PANTS_SEMGREP_FORCE", + "fromfile": false, + "help": "If true, semgrep is always run, even if the input files haven't changed. This can be used to run cloud rulesets like `pants lint --semgrep-force --semgrep-args='--config=p/python' ::`. Without `--semgrep-force`, using the cloud rulesets may give inconsistent results on different machines, due to caching, because the rulesets may change.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-force", "--no-semgrep-force"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force", "--no-force"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SEMGREP_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--semgrep-install-from-resolve="], + "env_var": "PANTS_SEMGREP_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `semgrep` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SEMGREP_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SEMGREP_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_SEMGREP_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--semgrep-requirements=\"['', '', ...]\""], + "env_var": "PANTS_SEMGREP_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SEMGREP_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]semgrep-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]semgrep-skip"], + "env_var": "PANTS_SEMGREP_SKIP", + "fromfile": false, + "help": "If true, don't use Semgrep when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-skip", "--no-semgrep-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SESSION_END_TASKS_TIMEOUT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--session-end-tasks-timeout=", + "config_key": "session_end_tasks_timeout", + "default": 3.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--session-end-tasks-timeout="], + "env_var": "PANTS_SESSION_END_TASKS_TIMEOUT", + "fromfile": false, + "help": "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 invocation to a configured remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--session-end-tasks-timeout"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--session-end-tasks-timeout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3.0 + } + ] + } + }, + "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SETUPTOOLS_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-requirements=\"['', '', ...]\""], + "env_var": "PANTS_SETUPTOOLS_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-console-script="], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-entry-point="], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools-scm` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME": { + "choices": ["exact", "compatible", "any"], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "fromfile": false, + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "target_field_name": null, + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": ["--first-party-dependency-version-scheme"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + }, + "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]setup-py-generation-generate-setup-default"], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "fromfile": false, + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (`setup.py`, `setup.cfg` and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELLCHECK_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-args=\"[, , ...]\""], + "env_var": "PANTS_SHELLCHECK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SHELLCHECK_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-config-discovery"], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELLCHECK_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ] + } + ] + } + }, + "PANTS_SHELLCHECK_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-skip"], + "env_var": "PANTS_SHELLCHECK_SKIP", + "fromfile": false, + "help": "If true, don't use Shellcheck when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-skip", "--no-shellcheck-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + "PANTS_SHELLCHECK_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-url-template="], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz" + } + ] + } + }, + "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SHELLCHECK_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-version="], + "env_var": "PANTS_SHELLCHECK_VERSION", + "fromfile": false, + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-dependency-inference"], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-setup-executable-search-paths"], + "target_field_name": "shell_setup_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_SHELL_SETUP_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-tailor"], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "fromfile": false, + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELL_TEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-test-skip"], + "env_var": "PANTS_SHELL_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Test with shell scripts when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-test-skip", "--no-shell-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHFMT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-args=\"[, , ...]\""], + "env_var": "PANTS_SHFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SHFMT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-config-discovery"], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHFMT_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ] + } + ] + } + }, + "PANTS_SHFMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-skip"], + "env_var": "PANTS_SHFMT_SKIP", + "fromfile": false, + "help": "If true, don't use shfmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-skip", "--no-shfmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHFMT_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + "PANTS_SHFMT_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-url-template="], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + "PANTS_SHFMT_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SHFMT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-version="], + "env_var": "PANTS_SHFMT_VERSION", + "fromfile": false, + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.6.0" + } + ] + } + }, + "PANTS_SHOW_LOG_TARGET": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]show-log-target"], + "env_var": "PANTS_SHOW_LOG_TARGET", + "fromfile": false, + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with `--log-levels-by-target`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--show-log-target", "--no-show-log-target"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--show-log-target", "--no-show-log-target"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHUNIT2_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SHUNIT2_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ] + } + ] + } + }, + "PANTS_SHUNIT2_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shunit2-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shunit2-skip"], + "env_var": "PANTS_SHUNIT2_SKIP", + "fromfile": false, + "help": "If true, don't use shunit2 when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-skip", "--no-shunit2-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHUNIT2_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHUNIT2_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + "PANTS_SHUNIT2_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-template=", + "config_key": "url_template", + "default": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-url-template="], + "env_var": "PANTS_SHUNIT2_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2" + } + ] + } + }, + "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shunit2-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-use-unsupported-version=" + ], + "env_var": "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shunit2 is not supported.\n\nSupported shunit2 versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SHUNIT2_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-version=", + "config_key": "version", + "default": "b9102bb763cc603b3115ed30a5648bf950548097", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-version="], + "env_var": "PANTS_SHUNIT2_VERSION", + "fromfile": false, + "help": "Use this version of shunit2.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "b9102bb763cc603b3115ed30a5648bf950548097" + } + ] + } + }, + "PANTS_SOURCE_MARKER_FILENAMES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "fromfile": false, + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-marker-filenames"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--marker-filenames"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SOURCE_ROOT_PATTERNS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "fromfile": false, + "help": "A list of source root suffixes.\n\nA directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc.\n\nPrepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`.\n\nA `*` wildcard will match a single path segment, E.g., `src/*` will match `/src/python` and `/src/rust`.\n\nUse `/` to signify that the buildroot itself is a source root.\n\nSee https://www.pantsbuild.org/v2.20/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-root-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--root-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + "PANTS_SPECTRAL_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-args=\"[, , ...]\""], + "env_var": "PANTS_SPECTRAL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Spectral, e.g. `--spectral-args='--fail-severity=warn'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SPECTRAL_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-install-from-resolve="], + "env_var": "PANTS_SPECTRAL_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SPECTRAL_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]spectral-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]spectral-skip"], + "env_var": "PANTS_SPECTRAL_SKIP", + "fromfile": false, + "help": "If true, don't use Spectral when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-skip", "--no-spectral-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SPECTRAL_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-version=", + "config_key": "version", + "default": "@stoplight/spectral-cli@6.5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-version="], + "env_var": "PANTS_SPECTRAL_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "@stoplight/spectral-cli@6.5.1" + } + ] + } + }, + "PANTS_SPEC_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spec-files=\"['', '', ...]\""], + "env_var": "PANTS_SPEC_FILES", + "fromfile": false, + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spec-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--spec-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_STATS_LOG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-log"], + "env_var": "PANTS_STATS_LOG", + "fromfile": false, + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-log", "--no-stats-log"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--log", "--no-log"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_STATS_MEMORY_SUMMARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-memory-summary"], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "fromfile": false, + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--memory-summary", "--no-memory-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_STATS_RECORD_OPTION_SCOPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": ["*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "fromfile": false, + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-record-option-scopes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--stats-record-option-scopes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["*"] + } + ] + } + }, + "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]streaming-workunits-complete-async"], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "fromfile": false, + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_STREAMING_WORKUNITS_LEVEL": { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-level="], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "fromfile": false, + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["--streaming-workunits-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-report-interval="], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "fromfile": false, + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + "PANTS_SUBPROCESSDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.TG08L3iBWC/.pants.d/pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-subprocessdir="], + "env_var": "PANTS_SUBPROCESSDIR", + "fromfile": false, + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-subprocessdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-subprocessdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/.pants.d/pids" + } + ] + } + }, + "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.20/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subprocess-environment-env-vars"], + "target_field_name": "subprocess_environment_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + }, + "PANTS_SUBPROJECT_ROOTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--subproject-roots=\"['', '', ...]\""], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "fromfile": false, + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subproject-roots"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--subproject-roots"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SYSTEM_BINARIES_SYSTEM_BINARY_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--system-binaries-system-binary-paths=\"['', '', ...]\"", + "config_key": "system_binary_paths", + "default": ["/usr/bin", "/bin", "/usr/local/bin", "/opt/homebrew/bin"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--system-binaries-system-binary-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_SYSTEM_BINARIES_SYSTEM_BINARY_PATHS", + "fromfile": false, + "help": "The PATH value that will searched for executables.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--system-binaries-system-binary-paths"], + "target_field_name": "system_binaries_system_binary_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--system-binary-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/usr/bin", "/bin", "/usr/local/bin", "/opt/homebrew/bin"] + } + ] + } + }, + "PANTS_TAG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\""], + "env_var": "PANTS_TAG", + "fromfile": false, + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.20/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tag"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TAILOR_ALIAS_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "fromfile": false, + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.20/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-alias-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_TAILOR_BUILD_FILE_HEADER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-header="], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "fromfile": false, + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-header"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-header"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TAILOR_BUILD_FILE_INDENT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-indent="], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "fromfile": false, + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-indent"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-indent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + "PANTS_TAILOR_BUILD_FILE_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-name="], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "fromfile": false, + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + "PANTS_TAILOR_CHECK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]tailor-check"], + "env_var": "PANTS_TAILOR_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-check", "--no-tailor-check"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TAILOR_IGNORE_ADDING_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "fromfile": false, + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-adding-targets"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-adding-targets"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TAILOR_IGNORE_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-ignore-paths=\"['', '', ...]\""], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "fromfile": false, + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-paths"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TERRAFORM_FMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-fmt-skip"], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform fmt` when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--terraform-hcl2-parser-install-from-resolve="], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `terraform-hcl2-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--terraform-hcl2-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--terraform-hcl2-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TERRAFORM_VALIDATE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-validate-skip"], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform validate` when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_ATTEMPTS_DEFAULT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-attempts-default=", + "config_key": "attempts_default", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-attempts-default="], + "env_var": "PANTS_TEST_ATTEMPTS_DEFAULT", + "fromfile": false, + "help": "The number of attempts to run tests, in case of a test failure. Tests that were retried will include the number of attempts in the summary output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-attempts-default"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--attempts-default"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + "PANTS_TEST_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-batch-size="], + "env_var": "PANTS_TEST_BATCH_SIZE", + "fromfile": false, + "help": "The target maximum number of files to be included in each run of batch-enabled test runners.\n\nSome test runners can execute tests from multiple files in a single run. Test implementations will return all tests that _can_ run together as a single group - and then this may be further divided into smaller batches, based on this option. This is done:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch\n 3. to allow for parallelism in test runners which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" max batch size (rather than an exact value).\n\nNOTE: This parameter has no effect on test runners/plugins that do not implement support for batched testing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_TEST_DEBUG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug"], + "env_var": "PANTS_TEST_DEBUG", + "fromfile": false, + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-debug", "--no-test-debug"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug", "--no-debug"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_DEBUG_ADAPTER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug-adapter"], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies `--debug`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_EXTRA_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-extra-env-vars"], + "target_field_name": "test_extra_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TEST_FORCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-force"], + "env_var": "PANTS_TEST_FORCE", + "fromfile": false, + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-force", "--no-test-force"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force", "--no-force"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_OPEN_COVERAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-open-coverage"], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "fromfile": false, + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--open-coverage", "--no-open-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_OUTPUT": { + "choices": ["all", "failed", "none"], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-output="], + "env_var": "PANTS_TEST_OUTPUT", + "fromfile": false, + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-output"], + "target_field_name": null, + "typ": "ShowOutput", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + "PANTS_TEST_REPORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-report"], + "env_var": "PANTS_TEST_REPORT", + "fromfile": false, + "help": "Write test reports to `--report-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report", "--no-test-report"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--report", "--no-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_REPORT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-report-dir="], + "env_var": "PANTS_TEST_REPORT_DIR", + "fromfile": false, + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--report-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + "PANTS_TEST_SHARD": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-shard="], + "env_var": "PANTS_TEST_SHARD", + "fromfile": false, + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with `--shard=0/3`, `--shard=1/3`, `--shard=2/3`.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-shard"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shard"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_TEST_TIMEOUTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-timeouts"], + "env_var": "PANTS_TEST_TIMEOUTS", + "fromfile": false, + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeouts", "--no-test-timeouts"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--timeouts", "--no-timeouts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_TEST_TIMEOUT_DEFAULT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-default="], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "fromfile": false, + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-default"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-default"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TEST_TIMEOUT_MAXIMUM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-maximum="], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "fromfile": false, + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-maximum"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-maximum"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TEST_USE_COVERAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-use-coverage"], + "env_var": "PANTS_TEST_USE_COVERAGE", + "fromfile": false, + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-use-coverage", "--no-test-use-coverage"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--use-coverage", "--no-use-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_THRIFT_DEPENDENCY_INFERENCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-dependency-inference"], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_THRIFT_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-tailor"], + "env_var": "PANTS_THRIFT_TAILOR", + "fromfile": false, + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--thrift-tailor", "--no-thrift-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_TWINE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-args=\"[, , ...]\""], + "env_var": "PANTS_TWINE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TWINE_CA_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-ca-certs-path="], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use any certificates.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.20/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_TWINE_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-config="], + "env_var": "PANTS_TWINE_CONFIG", + "fromfile": false, + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TWINE_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-config-discovery"], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_TWINE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-console-script="], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + "PANTS_TWINE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-entry-point="], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TWINE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-install-from-resolve="], + "env_var": "PANTS_TWINE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `twine` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TWINE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_TWINE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-requirements=\"['', '', ...]\""], + "env_var": "PANTS_TWINE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TWINE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-skip"], + "env_var": "PANTS_TWINE_SKIP", + "fromfile": false, + "help": "If true, don't use Twine when running `scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-skip", "--no-twine-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_UNMATCHED_BUILD_FILE_GLOBS": { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--unmatched-build-file-globs="], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "fromfile": false, + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-build-file-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-build-file-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + "PANTS_UNMATCHED_CLI_GLOBS": { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--unmatched-cli-globs="], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "fromfile": false, + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-cli-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-cli-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_CHECK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-check"], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fix-safe-deprecations"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "fromfile": false, + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_FMT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fmt"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "fromfile": false, + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--fmt", "--no-fmt"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_FORMATTER": { + "choices": ["yapf", "black"], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--update-build-files-formatter="], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "fromfile": false, + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--update-build-files-formatter"], + "target_field_name": null, + "typ": "Formatter", + "unscoped_cmd_line_args": ["--formatter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + "PANTS_VERIFY_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]verify-config"], + "env_var": "PANTS_VERIFY_CONFIG", + "fromfile": false, + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-version="], + "env_var": "PANTS_VERSION", + "fromfile": false, + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.20/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.20.0.dev2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.20.0.dev2" + } + ] + } + }, + "PANTS_WATCH_FILESYSTEM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]watch-filesystem"], + "env_var": "PANTS_WATCH_FILESYSTEM", + "fromfile": false, + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--watch-filesystem", "--no-watch-filesystem"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--watch-filesystem", "--no-watch-filesystem"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_WORKDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.TG08L3iBWC/.pants.d/workdir", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-workdir="], + "env_var": "PANTS_WORKDIR", + "fromfile": false, + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-workdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-workdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/.pants.d/workdir" + } + ] + } + }, + "PANTS_WORKUNIT_LOGGER_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]workunit-logger-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]workunit-logger-enabled"], + "env_var": "PANTS_WORKUNIT_LOGGER_ENABLED", + "fromfile": false, + "help": "Whether to enable workunit logging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--workunit-logger-enabled", + "--no-workunit-logger-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_WORKUNIT_LOGGER_LOGDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--workunit-logger-logdir=", + "config_key": "logdir", + "default": ".pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--workunit-logger-logdir="], + "env_var": "PANTS_WORKUNIT_LOGGER_LOGDIR", + "fromfile": false, + "help": "Where to write the log to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--workunit-logger-logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".pants.d" + } + ] + } + }, + "PANTS_YAMLLINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-args=\"[, , ...]\""], + "env_var": "PANTS_YAMLLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Yamllint, e.g. `--yamllint-args='-d relaxed'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAMLLINT_CONFIG_FILE_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-config-file-name=", + "config_key": "config_file_name", + "default": ".yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-config-file-name="], + "env_var": "PANTS_YAMLLINT_CONFIG_FILE_NAME", + "fromfile": false, + "help": "Name of a config file understood by yamllint (https://yamllint.readthedocs.io/en/stable/configuration.html). The plugin will search the ancestors of each directory in which YAML files are found for a config file of this name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-config-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--config-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".yamllint" + } + ] + } + }, + "PANTS_YAMLLINT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-console-script=", + "config_key": "console_script", + "default": "yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-console-script="], + "env_var": "PANTS_YAMLLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint" + } + ] + } + }, + "PANTS_YAMLLINT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-entry-point="], + "env_var": "PANTS_YAMLLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAMLLINT_EXCLUDE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-exclude=\"['', '', ...]\"", + "config_key": "exclude", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-exclude=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_EXCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to exclude from linting.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-exclude"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--exclude"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAMLLINT_INCLUDE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-include=\"['', '', ...]\"", + "config_key": "include", + "default": ["**/*.yml", "**/*.yaml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-include=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_INCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to lint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-include"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--include"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["**/*.yml", "**/*.yaml"] + } + ] + } + }, + "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-install-from-resolve="], + "env_var": "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yamllint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_YAMLLINT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-requirements=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAMLLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yamllint-skip"], + "env_var": "PANTS_YAMLLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Yamllint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-skip", "--no-yamllint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_YAPF_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-args=\"[, , ...]\""], + "env_var": "PANTS_YAPF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAPF_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-config="], + "env_var": "PANTS_YAPF_CONFIG", + "fromfile": false, + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAPF_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-config-discovery"], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_YAPF_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-console-script="], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + "PANTS_YAPF_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-entry-point="], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAPF_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-install-from-resolve="], + "env_var": "PANTS_YAPF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yapf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAPF_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_YAPF_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-requirements=\"['', '', ...]\""], + "env_var": "PANTS_YAPF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAPF_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-skip"], + "env_var": "PANTS_YAPF_SKIP", + "fromfile": false, + "help": "If true, don't use yapf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-skip", "--no-yapf-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + }, + "name_to_api_type_info": { + "abc.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "abc", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_subprocess_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "builtins.AddPrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "AddPrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.core.goals.export.export", + "pants.core.target_types.relocate_files", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "builtins.AddressInput": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "AddressInput", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.find_code_quality_tool", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "builtins.Digest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.go.goals.generate", + "pants.backend.helm.util_rules.chart_metadata", + "pants.engine.fs", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.strip_jar.strip_jar" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "Digest", + "provider": "builtins, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.core.util_rules.archive.create_archive", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.adhoc.code_quality_tool.process_files", + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.package_json.pnpm_workspace_files", + "pants.backend.javascript.package_json.read_package_jsons", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_fmt", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.generate_setup_py", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "builtins.FileDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.util_rules" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "FileDigest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.util_rules.digest_to_file_digest"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "builtins.InferenceMetadata": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "InferenceMetadata", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ] + }, + "builtins.MergeDigests": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "MergeDigests", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.adhoc.code_quality_tool.process_files", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.generate_snapshots.generate_snapshots", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.source_files.determine_source_files", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "builtins.NativeDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "NativeDependenciesRequest", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ] + }, + "builtins.RemovePrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "RemovePrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.backend.adhoc.adhoc_tool.GenerateFilesFromAdhocToolRequest": { + "consumed_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.adhoc"], + "documentation": null, + "is_union": false, + "module": "pants.backend.adhoc.adhoc_tool", + "name": "GenerateFilesFromAdhocToolRequest", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.adhoc.code_quality_tool.CodeQualityTool": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.adhoc.code_quality_tool", + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": ["pants.backend.experimental.adhoc"], + "documentation": "CodeQualityTool(runnable_address_str: str, args: tuple[str, ...], execution_dependencies: tuple[str, ...], runnable_dependencies: tuple[str, ...], file_glob_include: tuple[str, ...], file_glob_exclude: tuple[str, ...], target: pants.engine.target.Target)", + "is_union": false, + "module": "pants.backend.adhoc.code_quality_tool", + "name": "CodeQualityTool", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [ + "pants.backend.adhoc.code_quality_tool.find_code_quality_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool" + ] + }, + "pants.backend.adhoc.code_quality_tool.CodeQualityToolAddressString": { + "consumed_by_rules": [ + "pants.backend.adhoc.code_quality_tool.find_code_quality_tool", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.adhoc"], + "documentation": "CodeQualityToolAddressString(address: str)", + "is_union": false, + "module": "pants.backend.adhoc.code_quality_tool", + "name": "CodeQualityToolAddressString", + "provider": "pants.backend.adhoc.code_quality_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool" + ] + }, + "pants.backend.adhoc.code_quality_tool.CodeQualityToolBatchRunner": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.adhoc.code_quality_tool", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.environment" + ], + "dependents": [], + "documentation": "CodeQualityToolBatchRunner(digest: Digest, args: tuple[str, ...], extra_env: Mapping[str, str], append_only_caches: Mapping[str, str], immutable_input_digests: Mapping[str, Digest])", + "is_union": false, + "module": "pants.backend.adhoc.code_quality_tool", + "name": "CodeQualityToolBatchRunner", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [ + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.adhoc.run_system_binary.SystemBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_SystemBinaryFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.adhoc"], + "documentation": "SystemBinaryFieldSet(address: 'Address', name: 'SystemBinaryNameField', extra_search_paths: 'SystemBinaryExtraSearchPathsField', fingerprint_pattern: 'SystemBinaryFingerprintPattern', fingerprint_argv: 'SystemBinaryFingerprintArgsField', fingerprint_dependencies: 'SystemBinaryFingerprintDependenciesField')", + "is_union": false, + "module": "pants.backend.adhoc.run_system_binary", + "name": "SystemBinaryFieldSet", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PythonAwsLambdaFieldSet(address: 'Address', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', output_path: 'OutputPathField', environment: 'EnvironmentField', handler: 'PythonAwsLambdaHandlerField')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaLayerFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PythonAwsLambdaLayerFieldSet(address: 'Address', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', output_path: 'OutputPathField', environment: 'EnvironmentField', dependencies: 'PythonAwsLambdaLayerDependenciesField', include_sources: 'PythonAwsLambdaIncludeSources')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaLayerFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.base.FixedBUILDFile": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.build_files.fix.deprecations"], + "dependents": ["pants.core"], + "documentation": "FixedBUILDFile(path: 'str', content: 'bytes')", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.base", + "name": "FixedBUILDFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenamedFieldTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": ["pants.engine.target", "pants.engine.unions"], + "dependents": ["pants.core"], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenamedFieldTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Deprecated target type names to new names.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenamedTargetTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenamedTargetTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.subsystem.BUILDDeprecationsFixer": { + "consumed_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameFieldsInFilesRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameTargetsInFilesRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.build_files.fix.deprecations"], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.subsystem", + "name": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": ["construct_scope_build_deprecations_fixer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.black.register.BlackRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.black.register", + "name": "BlackRequest", + "provider": "pants.backend.build_files.fmt.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.rules.BuildifierRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.rules", + "name": "BuildifierRequest", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.subsystem.Buildifier": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BuildifierRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.build_files.fmt.buildifier"], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.subsystem", + "name": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": ["construct_scope_buildifier"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.yapf.register.YapfRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.yapf.register", + "name": "YapfRequest", + "provider": "pants.backend.build_files.fmt.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegen": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegen", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegenSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegenSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_export_codegen"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GenerateGoFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GenerateGoFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GoCodegenBuildProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ], + "dependencies": ["pants.backend.go.util_rules.build_pkg_target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GoCodegenBuildProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoCodegenBuildRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.ProtobufGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets" + ], + "dependencies": ["pants.backend.go.dependency_inference"], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "ProtobufGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtobufPackageBuildRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": "Request type used to trigger setup of a BuildGoPackageRequest for entire generated Go\nProtobuf package.\n\nThis type is separate so that a build of the full package can be cached no matter which one of\nits component source files was requested. This occurs because a request to build any one of the\nsource files will be converted into this type and then built.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtobufPackageBuildRequest", + "provider": "pants.backend.codegen.protobuf.go.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtocPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": "_SetupGoProtocPlugin(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.InferProtobufJavaRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "InferProtobufJavaRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaGrpcRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaGrpcRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.rules.GenerateJavaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GenerateJavaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.rules.GrpcJavaToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GrpcJavaToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.java.rules, pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ] + }, + "pants.backend.codegen.protobuf.java.rules.ProtobufJavaGrpcPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaGrpcPlugin(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.subsystem.JavaProtobufGrpcSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.subsystem", + "name": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": ["construct_scope_protobuf_java_grpc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.BufFormatRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.format_rules", + "name": "BufFormatRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.BufLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.lint_rules", + "name": "BufLintRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufFormatField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufFormatField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufLintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufLintField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.subsystem.BufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.lint.buf"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.subsystem", + "name": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": ["construct_scope_buf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.InferProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "InferProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.ProtobufMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": "A mapping of stripped .proto file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protoc.Protoc": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protoc", + "name": "Protoc", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_protoc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonInterpreterConstraintsField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonInterpreterConstraintsField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonResolveField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.PythonSourceRootField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "PythonSourceRootField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.grpc_python_plugin.GrpcPythonPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.grpc_python_plugin", + "name": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_grpc_python_plugin"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.PythonProtobufMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper", + "name": "PythonProtobufMappingMarker", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.InferPythonProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "InferPythonProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufMypyPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_mypy_protobuf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_python_protobuf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.rules.GeneratePythonFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.rules", + "name": "GeneratePythonFromProtobufRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.InferScalaPBRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "InferScalaPBRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.dependency_inference", + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "ScalaPBRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "ScalaPBRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.scala.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.GenerateScalaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "GenerateScalaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializeJvmPluginRequest(plugin: 'PluginArtifactSpec')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializeJvmPluginsRequest(plugins: 'tuple[PluginArtifactSpec, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginsRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.java", + "pants.jvm.resolve.common" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalaPBShimCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalapbcToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalapbcToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.scala.rules, pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ] + }, + "pants.backend.codegen.protobuf.scala.subsystem.ScalaPBSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.subsystem", + "name": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": ["construct_scope_scalapb"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.tailor.PutativeProtobufTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": "PutativeProtobufTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.tailor", + "name": "PutativeProtobufTargetsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.AllProtobufTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.additional_fields.ThriftPythonResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.additional_fields", + "name": "ThriftPythonResolveField", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.PythonThriftMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper", + "name": "PythonThriftMappingMarker", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.GeneratePythonFromThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "GeneratePythonFromThriftRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.InferApacheThriftPythonDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "InferApacheThriftPythonDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.subsystem.ThriftPythonSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.subsystem", + "name": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": ["construct_scope_python_thrift"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.ApacheThriftSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "ApacheThriftSetup(path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.GenerateThriftSourcesRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "GenerateThriftSourcesRequest(thrift_source_field: 'ThriftSourceField', lang_id: 'str', lang_options: 'tuple[str, ...]', lang_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GenerateThriftSourcesRequest", + "provider": "pants.backend.codegen.thrift.apache.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.rules.GeneratedThriftSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.thrift.apache.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "GeneratedThriftSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.subsystem.ApacheThriftSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_apache_thrift", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.subsystem", + "name": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": ["construct_scope_apache_thrift"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.InferThriftDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "InferThriftDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.ThriftMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "A mapping of stripped .thrift file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.subsystem.ThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.subsystem", + "name": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": ["construct_scope_thrift"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.tailor.PutativeThriftTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "PutativeThriftTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.tailor", + "name": "PutativeThriftTargetsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.AllThriftTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThrift": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.thrift.thrift_parser", + "pants.backend.experimental.go", + "pants.engine.fs" + ], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "dependencies": [], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "ParsedThriftRequest(sources_field: 'ThriftSourceField')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThriftRequest", + "provider": "pants.backend.codegen.thrift.thrift_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.docker.goals.package_image.DockerPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "DockerPackageFieldSet(address: 'Address', context_root: 'DockerImageContextRootField', registries: 'DockerImageRegistriesField', repository: 'DockerImageRepositoryField', source: 'DockerImageSourceField', tags: 'DockerImageTagsField', target_stage: 'DockerImageTargetStageField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.backend.docker.goals.package_image", + "name": "DockerPackageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "PublishDockerImageFieldSet(address: 'Address', registries: 'DockerImageRegistriesField', skip_push: 'DockerImageSkipPushField')", + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.docker.goals.run_image.DockerRunFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DockerRunFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "DockerRunFieldSet(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.goals.run_image", + "name": "DockerRunFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.tailor.PutativeDockerTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "PutativeDockerTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.goals.tailor", + "name": "PutativeDockerTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.rules.HadolintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.rules", + "name": "HadolintRequest", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.skip_field.SkipHadolintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.skip_field", + "name": "SkipHadolintField", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.subsystem.Hadolint": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_HadolintRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.docker.lint.hadolint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.subsystem", + "name": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": ["construct_scope_hadolint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.DockerOptions": { + "consumed_by_rules": [ + "construct_env_aware_scope_docker", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.docker", "pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "DockerOptions", + "provider": "pants.backend.docker", + "returned_by_rules": ["construct_scope_docker"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "EnvironmentAware", + "provider": "pants.backend.docker", + "returned_by_rules": ["construct_env_aware_scope_docker"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.docker.lint.hadolint" + ], + "documentation": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', build_args: 'DockerBuildArgs' = DockerBuildArgs(), copy_source_paths: 'tuple[str, ...]' = (), from_image_build_args: 'DockerBuildArgs' = DockerBuildArgs(), version_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfo", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfoRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerfileInfoRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfoRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParseRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerfileParseRequest(sources_digest: 'Digest', args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParseRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParser": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParser", + "provider": "pants.backend.docker", + "returned_by_rules": ["construct_scope_dockerfile_parser"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.docker"], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "ParserSetup", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.AllDockerImageTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.target_types", + "name": "AllDockerImageTargets", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.target_types.all_docker_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.DockerImageTagsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to provide additional image tags.", + "is_union": true, + "module": "pants.backend.docker.target_types", + "name": "DockerImageTagsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.dependencies.InferDockerDependencies": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dependencies", + "name": "InferDockerDependencies", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinary": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "The `docker` binary.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinary", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgs", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildArgsRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContext": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.docker", "pants.backend.experimental.helm"], + "documentation": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', upstream_image_ids: 'tuple[str, ...]', dockerfile: 'str', interpolation_context: 'InterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContext", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContextRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildContextRequest(address: 'Address', build_upstream_images: 'bool' = False)", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContextRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.GenerateDockerContextFiles": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.docker"], + "documentation": "This translates all files from acceptable Source fields for the docker context using the\n`codegen` machinery.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "GenerateDockerContextFiles", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildEnvironment(environment: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironment", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildEnvironmentRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironmentRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.dockerfile.GenerateDockerfileRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dockerfile", + "name": "GenerateDockerfileRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.AllGoModuleImportPathsMappings": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.target_type_rules"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Maps import paths (as strings) to one or more addresses of targets providing those import\npath(s) for a single Go module.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappings": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Import path mappings for all Go modules in the repository.\n\nThis type is requested from plugins which provide implementations for the GoCodegenBuildRequest\nunion and then merged.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappingsHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "An entry point for a specific implementation of mapping Go import paths to owning targets.\n\nAll implementations will be merged together. The core Go dependency inference rules will request\nthe `GoModuleImportPathsMappings` type using implementations of this union.", + "is_union": true, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappingsHook", + "provider": "pants.backend.go.dependency_inference", + "returned_by_rules": [], + "union_members": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "ProtobufGoModuleImportPathsMappingsHook" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.go_sources.load_go_binary", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "LoadedGoBinary(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "LoadedGoBinaryRequest(dir_name: 'str', file_names: 'tuple[str, ...]', output_name: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinaryRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.NaiveBuildGoPackageRequestForStdlibPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "NaiveBuildGoPackageRequestForStdlibPackageRequest(import_path: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ] + }, + "pants.backend.go.goals.check.GoCheckRequest": { + "consumed_by_rules": ["pants.backend.go.goals.check.check_go"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.check", + "name": "GoCheckRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_env_aware_scope_go_generate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoal", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.goals.generate.go_generate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoalSubsystem": { + "consumed_by_rules": ["construct_env_aware_scope_go_generate"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_go_generate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.OverwriteMergeDigests": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "OverwriteMergeDigests(orig_digest: 'Digest', new_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "OverwriteMergeDigests", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RunPackageGeneratorsRequest(address: 'Address', regex: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsRequest", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.generate.go_generate"] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.generate", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RunPackageGeneratorsResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.generate.go_generate"] + }, + "pants.backend.go.goals.package_binary.GoBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_GoBinaryFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBinaryFieldSet(address: 'Address', main: 'GoBinaryMainPackageField', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.go.goals.package_binary", + "name": "GoBinaryFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FindPutativeGoPackageTargetRequest(dir_path: 'str', files: 'tuple[str, ...]', all_go_mod_dirs: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetRequest", + "provider": "pants.backend.go.goals.tailor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.goals.tailor", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FindPutativeGoPackageTargetResult(putative_target: 'PutativeTarget | None')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.PutativeGoTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "PutativeGoTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "PutativeGoTargetsRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.FalliblePrepareGoTestBinaryResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.test", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FalliblePrepareGoTestBinaryResult(binary: 'PrepareGoTestBinaryResult | None', stdout: 'str', stderr: 'str', exit_code: 'int')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.run_go_tests"] + }, + "pants.backend.go.goals.test.GoTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "GoTestFieldSet(address: 'Address', sources: 'GoPackageSourcesField', dependencies: 'Dependencies', timeout: 'GoTestTimeoutField', extra_env_vars: 'GoTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.GoTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.PrepareGoTestBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "PrepareGoTestBinaryRequest(field_set: 'GoTestFieldSet', coverage: 'PrepareGoTestBinaryCoverageConfig | None')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "PrepareGoTestBinaryRequest", + "provider": "pants.backend.go.goals.test", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.run_go_tests"] + }, + "pants.backend.go.lint.gofmt.rules.GofmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.rules", + "name": "GofmtRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.skip_field.SkipGofmtField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.skip_field", + "name": "SkipGofmtField", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.subsystem.GofmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.subsystem", + "name": "GofmtSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_gofmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_env_aware_scope_golang"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.GolangSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_golang", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "GolangSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_golang"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.gotest.GoTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_GoTestRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.gotest", + "name": "GoTestSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_go_test"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.FirstPartyGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "dependencies": ["pants.backend.go.dependency_inference"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "FirstPartyGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GenerateTargetsFromGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GenerateTargetsFromGoModRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GoImportPathMappingRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoImportPathMappingRequest(go_mod_address: 'Address')", + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GoImportPathMappingRequest", + "provider": "pants.backend.go.target_type_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.target_type_rules.InferGoPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InferGoThirdPartyPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoThirdPartyPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_types.GoOwningGoModAddressField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_types", + "name": "GoOwningGoModAddressField", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.assembly.AssembleGoAssemblyFilesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Assemble Go assembly files to object files.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssembleGoAssemblyFilesRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleAssembleGoAssemblyFilesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.adhoc", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FallibleAssembleGoAssemblyFilesResult(result: 'AssembleGoAssemblyFilesResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleGenerateAssemblySymabisResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FallibleGenerateAssemblySymabisResult(result: 'GenerateAssemblySymabisResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.GenerateAssemblySymabisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Generate a `symabis` file with metadata about the assemnbly files for consumption by Go\ncompiler.\n\nSee https://github.com/bazelbuild/rules_go/issues/1893.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "GenerateAssemblySymabisRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.binary", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBinaryMainPackage(address: 'Address', is_third_party: 'bool', import_path: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBinaryMainPackageRequest(field: 'GoBinaryMainPackageField')", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackageRequest", + "provider": "pants.backend.go.util_rules.binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.InferGoBinaryMainDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "InferGoBinaryMainDependencyRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptions": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.build_opts"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBuildOptions(coverage_config: 'GoCoverageConfig | None' = None, cgo_enabled: 'bool' = True, with_race_detector: 'bool' = False, with_msan: 'bool' = False, with_asan: 'bool' = False, compiler_flags: 'tuple[str, ...]' = (), linker_flags: 'tuple[str, ...]' = (), assembler_flags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptions", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptionsFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBuildOptionsFromTargetRequest(address: 'Address', for_tests: 'bool' = False)", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptionsFromTargetRequest", + "provider": "pants.backend.go.util_rules.build_opts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.go.go_sources.load_go_binary" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go, pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuiltGoPackage": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckForGolangAssemblyRequest(digest: 'Digest', dir_path: 'str', s_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckForGolangAssemblyResult(maybe_golang_assembly: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.go.rules", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuiltGoPackage": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.core", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Fallible version of `BuiltGoPackage` with error details.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoCompileActionIdRequest(build_request: 'BuildGoPackageRequest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.build_pkg"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoCompileActionIdResult(action_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderEmbedConfigRequest(embed_config: 'EmbedConfig | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderedEmbedConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderedEmbedConfig(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.SetupAsmCheckBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "SetupAsmCheckBinary(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageRequestForStdlibRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "BuildGoPackageRequestForStdlibRequest(import_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageRequestForStdlibRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Build a `go_package`, `go_third_party_package`, or Go codegen target and its dependencies as\n`__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageTargetRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.GoCodegenBuildRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": "The plugin hook to build/compile Go code.\n\nNote that you should still use the normal `GenerateSourcesRequest` plugin hook from\n`pants.engine.target` too, which is necessary for integrations like the `export-codegen` goal.\nHowever, that is only helpful to generate the raw `.go` files; you also need to use this\nplugin hook so that Pants knows how to compile those generated `.go` files.\n\nSubclass this and set the class property `generate_from`. Define a rule that goes from your\nsubclass to `BuildGoPackageRequest` - the request must result in valid compilation, which you\nshould test for by using `rule_runner.request(BuiltGoPackage, BuildGoPackageRequest)` in your\ntests. For example, make sure to set up any third-party packages needed by the generated code.\nFinally, register `UnionRule(GoCodegenBuildRequest, MySubclass)`.", + "is_union": true, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "GoCodegenBuildRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": ["GoCodegenBuildProtobufRequest"], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_ResolveStdlibEmbedConfigRequest(package: 'GoStdLibPackage')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_ResolveStdlibEmbedConfigResult(embed_config: 'EmbedConfig | None', stderr: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoCompileRequest(import_path: 'str', pkg_name: 'str', digest: 'Digest', build_opts: 'GoBuildOptions', dir_path: 'str', cgo_files: 'tuple[str, ...]', cgo_flags: 'CGoCompilerFlags', c_files: 'tuple[str, ...]' = (), cxx_files: 'tuple[str, ...]' = (), objc_files: 'tuple[str, ...]' = (), fortran_files: 'tuple[str, ...]' = (), s_files: 'tuple[str, ...]' = (), is_stdlib: 'bool' = False, transitive_prebuilt_object_files: 'tuple[Digest, frozenset[str]] | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoCompileResult(digest: 'Digest', output_go_files: 'tuple[str, ...]', output_obj_files: 'tuple[str, ...]', include_module_sources_with_output: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompilerWrapperScript": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoCompilerWrapperScript(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsFlagRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckCompilerSupportsFlagRequest(cc: 'str', flag: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsFlagRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.setup_compiler_cmd"] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsOptionResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckCompilerSupportsOptionResult(supports_flag: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.setup_compiler_cmd"] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "SetupCompilerCmdRequest(compiler: 'tuple[str, ...]', include_dir: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.cgo"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "SetupCompilerCmdResult(args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo_binaries.CGoBinaryPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoBinaryPathRequest(binary_name: 'str', binary_path_test: 'BinaryPathTest | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_binaries", + "name": "CGoBinaryPathRequest", + "provider": "pants.backend.go.util_rules.cgo_binaries", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Request resolution of pkg-config arguments into CFLAGS and LDFLAGS.", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsRequest", + "provider": "pants.backend.go.util_rules.cgo_pkgconfig", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.cgo_pkgconfig" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoPkgConfigFlagsResult(cflags: 'tuple[str, ...]', ldflags: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Apply code coverage to a package using `go tool cover`.", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ApplyCodeCoverageResult(digest: 'Digest', cover_file_metadatas: 'tuple[FileCodeCoverageMetadata, ...]', go_files: 'tuple[str, ...]', cgo_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ApplyCodeCoverageToFileRequest(digest: 'Digest', go_file: 'str', cover_go_file: 'str', mode: 'GoCoverMode', cover_var: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.coverage" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ApplyCodeCoverageToFileResult(digest: 'Digest', cover_go_file: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GenerateCoverageSetupCodeRequest(packages: 'FrozenOrderedSet[BuiltGoPackageCodeCoverageMetadata]', cover_mode: 'GoCoverMode')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GenerateCoverageSetupCodeResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageProfileToHtmlRequest(raw_coverage_profile: 'bytes', description_of_origin: 'str', sources_digest: 'Digest', sources_dir_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlRequest", + "provider": "pants.backend.go.util_rules.coverage_html", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.coverage_html", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageProfileToHtmlResult(html_output: 'bytes')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_output.GoCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "GoCoverageDataCollection", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageReportRequest(raw_report: 'GoCoverageData')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportRequest", + "provider": "pants.backend.go.util_rules.coverage_output", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.coverage_output", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageReportResult(coverage_report: 'FilesystemCoverageReport', html_report: 'FilesystemCoverageReport | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Metadata for a Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "The source files for a Go package, but fallible if embed preparation failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FirstPartyPkgAnalysisRequest(address: 'Address', build_opts: 'GoBuildOptions', extra_build_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgDigestRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FirstPartyPkgDigestRequest(address: 'Address', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgDigestRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPath": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.first_party_pkg"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FirstPartyPkgImportPathRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPathRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.go_bootstrap.GoBootstrap": { + "consumed_by_rules": ["pants.backend.go.util_rules.goroot.setup_goroot"], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBootstrap(go_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_bootstrap", + "name": "GoBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.AllGoModTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "AllGoModTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.GoModInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.go_mod" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfo", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.GoModInfoRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoModInfoRequest(source: 'Address | GoModSourcesField')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfoRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "NearestAncestorGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.go_mod.find_owning_go_mod"] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "NearestAncestorGoModResult(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.go_mod.find_owning_go_mod"] + }, + "pants.backend.go.util_rules.go_mod.OwningGoMod": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.go.util_rules.go_mod"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "OwningGoMod(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoMod", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "OwningGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.goroot.GoRoot": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": ["pants.backend.experimental.helm", "pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Path to the Go installation (the `GOROOT`).", + "is_union": false, + "module": "pants.backend.go.util_rules.goroot", + "name": "GoRoot", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.util_rules.goroot.setup_goroot"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.implicit_linker_deps.SdkImplicitLinkerDependenciesHook": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "dependencies": ["pants.backend.go.util_rules.link_defs"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.implicit_linker_deps", + "name": "SdkImplicitLinkerDependenciesHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "ImplicitLinkerDependenciesHook", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackages": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.import_analysis" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A mapping of standard library import paths to an analysis of the package at that import\npath.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoStdLibPackagesRequest(with_race_detector: 'bool', cgo_enabled: 'bool' = True)", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackagesRequest", + "provider": "pants.backend.go.util_rules.import_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.import_config", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Create an `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfigRequest", + "provider": "pants.backend.go.util_rules.import_config", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkGoBinaryRequest": { + "consumed_by_rules": ["pants.backend.go.util_rules.link.link_go_binary"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Link a Go binary from package archives and an import configuration.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkGoBinaryRequest", + "provider": "pants.backend.go.util_rules.link", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.link", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A linked Go binary stored in a `Digest`.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.util_rules.link.link_go_binary"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkerSetup": { + "consumed_by_rules": ["pants.backend.go.util_rules.link.link_go_binary"], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "LinkerSetup(digest: 'Digest', extld_wrapper_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.util_rules.link.setup_go_linker"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ImplicitLinkerDependencies(digest: 'Digest', import_paths_to_pkg_a_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.link.link_go_binary"] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependenciesHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ImplicitLinkerDependenciesHook(build_opts: 'GoBuildOptions')", + "is_union": true, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependenciesHook", + "provider": "pants.backend.go.util_rules.link_defs", + "returned_by_rules": [], + "union_members": ["SdkImplicitLinkerDependenciesHook"], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.link.link_go_binary"] + }, + "pants.backend.go.util_rules.pkg_analyzer.PackageAnalyzerSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "PackageAnalyzerSetup(digest: Digest, path: str)", + "is_union": false, + "module": "pants.backend.go.util_rules.pkg_analyzer", + "name": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkProcess": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkProcess(command: 'Iterable[str]', *, description: 'str', env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), working_dir: 'str | None' = None, output_files: 'Iterable[str]' = (), output_directories: 'Iterable[str]' = (), allow_downloads: 'bool' = False, replace_sandbox_root_in_args: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkProcess", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkRunSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkToolIDRequest(tool_name: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDRequest", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.sdk" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GenerateTestMainRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GenerateTestMainRequest(digest: 'Digest', test_paths: 'FrozenOrderedSet[str]', xtest_paths: 'FrozenOrderedSet[str]', import_path: 'str', register_cover: 'bool', address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GenerateTestMainRequest", + "provider": "pants.backend.go.util_rules.tests_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.tests_analysis.GeneratedTestMain": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.tests_analysis", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GeneratedTestMain", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackages": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AllThirdPartyPackagesRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackagesRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyModuleRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AnalyzeThirdPartyModuleRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', import_path: 'str', name: 'str', version: 'str', minimum_go_version: 'str | None', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyModuleRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AnalyzeThirdPartyPackageRequest(pkg_json: 'FrozenDict[str, Any]', module_sources_digest: 'Digest', module_sources_path: 'str', module_import_path: 'str', package_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyPackageRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzedThirdPartyModule": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.FallibleThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptors": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptors", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ModuleDescriptorsRequest(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptorsRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.third_party_pkg"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Request the info and digest needed to build a third-party package.\n\nThe package's module must be included in the input `go.mod`/`go.sum`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.google_cloud_function.python.rules.PythonGoogleCloudFunctionFieldSet": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.google_cloud_function.python"], + "documentation": "PythonGoogleCloudFunctionFieldSet(address: 'Address', handler: 'PythonGoogleCloudFunctionHandlerField', runtime: 'PythonGoogleCloudFunctionRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', type: 'PythonGoogleCloudFunctionType', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.rules", + "name": "PythonGoogleCloudFunctionFieldSet", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.FirstPartyHelmChartMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": ["pants.backend.helm.util_rules.chart_metadata"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.InferHelmChartDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "InferHelmChartDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.deployment.AnalyseHelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "AnalyseHelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "AnalyseHelmDeploymentRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.helm.dependency_inference.deployment", + "pants.build_graph.address" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "A mapping between `helm_deployment` target addresses and tuples made up of a Docker image\nreference and a `docker_image` target address.\n\nThe tuples of Docker image references and addresses are stored in a YAML index so we can track\nthe locations in which the Docker image refs appear in the deployment files.", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMappingRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FirstPartyHelmDeploymentMappingRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMappingRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.HelmDeploymentReport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.dependency_inference.deployment", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmDeploymentReport(address: 'Address', image_refs: 'FrozenYamlIndex[str]')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.InferHelmDeploymentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "InferHelmDeploymentDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.unittest.InferHelmUnitTestChartDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.unittest", + "name": "InferHelmUnitTestChartDependencyRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.deploy.DeployHelmDeploymentFieldSet": { + "consumed_by_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "DeployHelmDeploymentFieldSet(address: 'Address', chart: 'HelmDeploymentChartField', description: 'DescriptionField', release_name: 'HelmDeploymentReleaseNameField', namespace: 'HelmDeploymentNamespaceField', sources: 'HelmDeploymentSourcesField', skip_crds: 'HelmDeploymentSkipCrdsField', no_hooks: 'HelmDeploymentNoHooksField', dependencies: 'HelmDeploymentDependenciesField', values: 'HelmDeploymentValuesField', post_renderers: 'HelmDeploymentPostRenderersField', enable_dns: 'HelmDeploymentEnableDNSField', timeout: 'HelmDeploymentTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.goals.deploy", + "name": "DeployHelmDeploymentFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.lint.HelmLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.lint", + "name": "HelmLintRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.package.HelmPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.package.run_helm_package" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmPackageFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', description: 'DescriptionField', version: 'HelmChartVersionField', output_path: 'HelmChartOutputPathField')", + "is_union": false, + "module": "pants.backend.helm.goals.package", + "name": "HelmPackageFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.HelmPublishFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "HelmPublishFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', description: 'DescriptionField', version: 'HelmChartVersionField', registries: 'HelmRegistriesField', repository: 'HelmChartRepositoryField', skip_push: 'HelmSkipPushField')", + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "HelmPublishFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.PublishHelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.publish.publish_helm_chart" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "PublishHelmChartRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.tailor.PutativeHelmTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.tailor.find_putative_helm_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "PutativeHelmTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.goals.tailor", + "name": "PutativeHelmTargetsRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.resolve.artifacts.HelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "HelmArtifact", + "provider": "pants.backend.helm.resolve.artifacts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ResolvedHelmArtifact": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.helm.resolve.artifacts"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ResolvedHelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address', location_url: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ThirdPartyHelmArtifactMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.resolve.fetch.FetchHelmArtifactRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FetchHelmArtifactRequest(field_set: 'HelmArtifactFieldSet', description_of_origin: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchHelmArtifactRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.resolve.fetch", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FetchedHelmArtifact(artifact: 'ResolvedHelmArtifact', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.helm.HelmSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.helm", + "name": "HelmSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm_k8s_parser"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.ParseKubeManifestRequest": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ParseKubeManifestRequest(file: 'FileEntry')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParseKubeManifestRequest", + "provider": "pants.backend.helm.subsystems.k8s_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser.ParsedKubeManifest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.helm.subsystems.k8s_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ParsedKubeManifest(filename: 'str', found_image_refs: 'tuple[ParsedImageRefEntry, ...]')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser._HelmKubeParserTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "_HelmKubeParserTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRenderer": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmPostRenderer(*, exe: 'str', digest: 'Digest', description_of_origin: 'str', env: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm_post_renderer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.SetupHelmPostRenderer": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.post_renderer", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Request for a post-renderer process that will perform a series of replacements in the\ngenerated files.", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer._HelmPostRendererTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "_HelmPostRendererTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestPluginBinding": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "dependencies": ["pants.backend.helm.util_rules.tool"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestPluginBinding", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExternalHelmPluginBinding", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_HelmUnitTestRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm_unittest"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmChartTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_chart_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmDeploymentTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmUnitTestTestTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_unittest_test_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.HelmChartMetaSourceField": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "HelmChartMetaSourceField", + "provider": "pants.backend.helm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmUnitTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'HelmUnitTestSourceField', dependencies: 'HelmUnitTestDependenciesField', strict: 'HelmUnitTestStrictField', timeout: 'HelmUnitTestTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.test.unittest.HelmUnitTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.helm.test.unittest.HelmUnitTestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.test.unittest", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmUnitTestSetup(chart: 'HelmChart', chart_root: 'HelmChartRoot', process: 'HelmProcess', reports_output_directory: 'str', snapshot_output_directories: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestSetup", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmUnitTestSetupRequest(field_set: 'HelmUnitTestFieldSet', description: 'str', force: 'bool', update_snapshots: 'bool', timeout_seconds: 'int | None')", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestSetupRequest", + "provider": "pants.backend.helm.test.unittest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest" + ] + }, + "pants.backend.helm.util_rules.chart.FindHelmDeploymentChart": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FindHelmDeploymentChart(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "FindHelmDeploymentChart", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChart": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.chart", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChart(address: 'Address', info: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChart", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartRequest(field_set: 'HelmChartFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChartRequest", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.render_helm_chart" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.HelmChartMetadata": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.target_types", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm, pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.ParseHelmChartMetadataDigest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Request to parse the Helm chart definition file (i.e. `Chart.yaml`) from the given digest.\n\nThe definition file is expected to be at the root of the digest.", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "ParseHelmChartMetadataDigest", + "provider": "pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.post_renderer.HelmDeploymentPostRendererRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmDeploymentPostRendererRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.post_renderer", + "name": "HelmDeploymentPostRendererRequest", + "provider": "pants.backend.helm.util_rules.post_renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"] + }, + "pants.backend.helm.util_rules.renderer.HelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet', *, cmd: 'HelmDeploymentCmd', description: 'str', extra_argv: 'Iterable[str] | None' = None, post_renderer: 'HelmPostRenderer | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "HelmDeploymentRequest", + "provider": "pants.backend.helm.util_rules.renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.RenderedHelmFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "RenderedHelmFiles(address: 'Address', chart: 'HelmChart', snapshot: 'Snapshot', post_processed: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.util_rules.renderer._HelmDeploymentProcessWrapper": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Intermediate representation of a `HelmProcess` that will produce a fully rendered set of\nmanifests from a given chart.\n\nThe encapsulated `process` will be side-effecting dependening on the `cmd` that was originally requested.\n\nThis is meant to only be used internally by this module.", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.sources.HelmChartRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.sources" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartRoot(path: 'str')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRoot", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartRootRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartRootRequest(source: 'HelmChartMetaSourceField')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRootRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.sources", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartSourceFiles(snapshot: 'Snapshot', unrooted_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.chart.get_helm_chart"] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartSourceFilesRequest(field_set: 'HelmChartFieldSet', include_resources: 'bool', include_files: 'bool', include_metadata: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFilesRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.chart.get_helm_chart"] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginBinding": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Union type allowing Pants to discover global external Helm plugins.", + "is_union": true, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginBinding", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": ["HelmUnitTestPluginBinding"], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.tool.all_helm_plugins"] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "dependencies": ["pants.engine.platform"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Helper class to create a download request for an external Helm plugin.", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmBinary": { + "consumed_by_rules": ["pants.backend.helm.util_rules.tool.helm_process"], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmBinary", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["pants.backend.helm.util_rules.tool.setup_helm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmPlugin(info: 'HelmPluginInfo', platform: 'Platform', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugin", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.tool.all_helm_plugins"] + }, + "pants.backend.helm.util_rules.tool.HelmPlugins": { + "consumed_by_rules": ["pants.backend.helm.util_rules.tool.setup_helm"], + "dependencies": ["pants.engine.unions"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugins", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmProcess": { + "consumed_by_rules": ["pants.backend.helm.util_rules.tool.helm_process"], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmProcess(argv: 'Iterable[str]', *, description: 'str', input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), level: 'LogLevel' = , output_directories: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, extra_env: 'Mapping[str, str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_append_only_caches: 'Mapping[str, str] | None' = None, cache_scope: 'ProcessCacheScope | None' = None, timeout_seconds: 'int | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmProcess", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "HandleJavacOptionsRequest(bsp_target_id: pants.bsp.spec.base.BuildTargetIdentifier)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsRequest", + "provider": "pants.backend.java.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.java.bsp.rules", "pants.base.build_root"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.JavaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPCompileRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.util_rules.lifecycle"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPLanguageSupport", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavacOptionsHandlerMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.java.bsp.spec.JavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.java.bsp.spec"], + "dependents": [], + "documentation": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.spec", + "name": "JavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.compile.javac.CompileJavaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.compile.javac", + "name": "CompileJavaSourceRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.FallibleJavaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.java.dependency_inference.java_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaParserCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors" + ] + }, + "pants.backend.java.dependency_inference.java_parser.JavaSourceDependencyAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.InferJavaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "InferJavaSourceDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.java.dependency_inference.rules", + "pants.core" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependenciesAndExportsRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaInferredDependenciesAndExportsRequest(source: 'SourcesField')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependenciesAndExportsRequest", + "provider": "pants.backend.java.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.symbol_mapper.AllJavaTargets": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "AllJavaTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.symbol_mapper.FirstPartyJavaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": ["pants.jvm.dependency_inference.symbol_mapper"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "FirstPartyJavaTargetsMappingRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.types.JavaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.option.global_options"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.types", + "name": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ] + }, + "pants.backend.java.goals.check.JavacCheckRequest": { + "consumed_by_rules": ["pants.backend.java.goals.check.javac_check"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.goals.check", + "name": "JavacCheckRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.java.goals.tailor.PutativeJavaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "PutativeJavaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.java.goals.tailor", + "name": "PutativeJavaTargetsRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatRequest", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java.lint.google_java_format"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatToolLockfileSentinel", + "provider": "pants.backend.experimental.java.lint.google_java_format, pants.backend.java.lint.google_java_format.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ] + }, + "pants.backend.java.lint.google_java_format.skip_field.SkipGoogleJavaFormatField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.skip_field", + "name": "SkipGoogleJavaFormatField", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.subsystem.GoogleJavaFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java.lint.google_java_format"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.subsystem", + "name": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": ["construct_scope_google_java_format"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.java_infer.JavaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.java_infer", + "name": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_java_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.javac.JavacSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.javac", + "name": "JavacSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_javac"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.junit.JUnit": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_JunitTestRequest", + "pants.jvm.test.junit.generate_junit_lockfile_request", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.junit", + "name": "JUnit", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_junit"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.target_types.JavaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JavaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'JavaSourceField')", + "is_union": false, + "module": "pants.backend.java.target_types", + "name": "JavaFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.javascript.dependency_inference.rules.InferJSDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "InferJSDependenciesRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.javascript.dependency_inference.rules.InferNodePackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "InferNodePackageDependenciesRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.javascript.dependency_inference.rules.NodePackageCandidateMap": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.javascript.dependency_inference.rules"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "NodePackageCandidateMap", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ] + }, + "pants.backend.javascript.dependency_inference.rules.RequestNodePackagesCandidateMap": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "RequestNodePackagesCandidateMap(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "RequestNodePackagesCandidateMap", + "provider": "pants.backend.javascript.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ] + }, + "pants.backend.javascript.install_node_package.InstalledNodePackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.javascript.install_node_package", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "InstalledNodePackage(project_env: 'NodeJsProjectEnvironment', digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.install_node_package", + "name": "InstalledNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.install_node_package.InstalledNodePackageRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "InstalledNodePackageRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.install_node_package", + "name": "InstalledNodePackageRequest", + "provider": "pants.backend.javascript.install_node_package", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.install_node_package.InstalledNodePackageWithSource": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.javascript.install_node_package", + "pants.core" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "InstalledNodePackageWithSource(project_env: 'NodeJsProjectEnvironment', digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.install_node_package", + "name": "InstalledNodePackageWithSource", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ] + }, + "pants.backend.javascript.nodejs_project.AllNodeJSProjects": { + "consumed_by_rules": [ + "pants.backend.javascript.resolve.resolve_for_package", + "pants.backend.javascript.resolve.resolve_to_projects" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.nodejs_project", + "name": "AllNodeJSProjects", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.nodejs_project_environment.NodeJSProjectEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSProjectEnvironmentRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.nodejs_project_environment", + "name": "NodeJSProjectEnvironmentRequest", + "provider": "pants.backend.javascript.nodejs_project_environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ] + }, + "pants.backend.javascript.nodejs_project_environment.NodeJsProjectEnvironment": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.javascript.nodejs_project_environment"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJsProjectEnvironment(resolve: 'ChosenNodeResolve', package: 'OwningNodePackage | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.nodejs_project_environment", + "name": "NodeJsProjectEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ] + }, + "pants.backend.javascript.nodejs_project_environment.NodeJsProjectEnvironmentProcess": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJsProjectEnvironmentProcess(env: 'NodeJsProjectEnvironment', args: 'Iterable[str]', description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), output_files: 'tuple[str, ...]' = (), output_directories: 'tuple[str, ...]' = (), per_package_caches: 'FrozenDict[str, str]' = , timeout_seconds: 'int | None' = None, extra_env: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.javascript.nodejs_project_environment", + "name": "NodeJsProjectEnvironmentProcess", + "provider": "pants.backend.javascript.nodejs_project_environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.package_json.AllPackageJson": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.javascript.package_json.all_package_json_names", + "pants.backend.javascript.package_json.pnpm_workspace_files" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "AllPackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.all_package_json" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.AllPackageJsonNames": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.generate_node_package_targets" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "Used to not invalidate all generated node package targets when any package.json contents are\nchanged.", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "AllPackageJsonNames", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.all_package_json_names" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.FirstPartyNodePackageTargets": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "pants.backend.javascript.resolve.resolve_to_first_party_node_package" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "FirstPartyNodePackageTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.all_first_party_node_package_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.GenerateNodePackageTargets": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.generate_node_package_targets" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "GenerateNodePackageTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.OwningNodePackage": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.javascript.package_json", + "pants.core" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "OwningNodePackage(target: 'Target | None' = None, third_party: 'tuple[Target, ...]' = ())", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "OwningNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.find_owning_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment", + "pants.backend.javascript.resolve.resolve_for_package" + ] + }, + "pants.backend.javascript.package_json.OwningNodePackageRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.find_owning_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "OwningNodePackageRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "OwningNodePackageRequest", + "provider": "pants.backend.javascript.package_json", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment", + "pants.backend.javascript.resolve.resolve_for_package" + ] + }, + "pants.backend.javascript.package_json.PackageJson": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.javascript.package_json", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "PackageJson(content: 'FrozenDict[str, Any]', name: 'str', version: 'str | None', snapshot: 'Snapshot', workspaces: 'tuple[str, ...]' = (), module: \"Literal['commonjs', 'module'] | None\" = None, dependencies: 'FrozenDict[str, str]' = , package_manager: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.package_json_for_source", + "pants.backend.javascript.package_json.parse_package_json" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.generate_node_package_targets", + "pants.backend.javascript.package_json.read_package_jsons", + "pants.backend.javascript.package_json.script_entrypoints_for_source", + "pants.backend.javascript.package_json.subpath_imports_for_source" + ] + }, + "pants.backend.javascript.package_json.PackageJsonEntryPoints": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.javascript.package_json"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "See https://nodejs.org/api/packages.html#package-entry-points and\nhttps://docs.npmjs.com/cli/v9/configuring-npm/package-json#browser.", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonEntryPoints", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.script_entrypoints_for_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies" + ] + }, + "pants.backend.javascript.package_json.PackageJsonForGlobs": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.engine.fs"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonForGlobs", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.read_package_jsons" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.all_package_json", + "pants.backend.javascript.package_json.package_json_for_source" + ] + }, + "pants.backend.javascript.package_json.PackageJsonImports": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata" + ], + "dependencies": ["pants.backend.javascript.package_json"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "https://nodejs.org/api/packages.html#subpath-imports.", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonImports", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.subpath_imports_for_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.PackageJsonSourceField": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.package_json_for_source", + "pants.backend.javascript.package_json.script_entrypoints_for_source", + "pants.backend.javascript.package_json.subpath_imports_for_source" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonSourceField", + "provider": "pants.backend.javascript.package_json", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.javascript.package_json.generate_node_package_targets", + "pants.backend.javascript.package_json.script_entrypoints_for_source", + "pants.backend.javascript.package_json.subpath_imports_for_source" + ] + }, + "pants.backend.javascript.package_json.PnpmWorkspaces": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PnpmWorkspaces", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.pnpm_workspace_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.resolve.ChosenNodeResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.javascript.resolve" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "ChosenNodeResolve(project: 'NodeJSProject')", + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "ChosenNodeResolve", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.resolve.resolve_for_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ] + }, + "pants.backend.javascript.resolve.FirstPartyNodePackageResolves": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "FirstPartyNodePackageResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.resolve.resolve_to_first_party_node_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.resolve.NodeJSProjectResolves": { + "consumed_by_rules": [ + "pants.backend.javascript.resolve.resolve_to_first_party_node_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "NodeJSProjectResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.resolve.resolve_to_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.resolve.RequestNodeResolve": { + "consumed_by_rules": [ + "pants.backend.javascript.resolve.resolve_for_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "RequestNodeResolve(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "RequestNodeResolve", + "provider": "pants.backend.javascript.resolve", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ] + }, + "pants.backend.javascript.subsystems.nodejs.CorepackToolDigest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.javascript.subsystems.nodejs" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "CorepackToolDigest(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "CorepackToolDigest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.CorepackToolRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "CorepackToolRequest(tool: 'str', input_digest: 'Digest', working_directory: 'str | None' = None, version: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "CorepackToolRequest", + "provider": "pants.backend.javascript.subsystems.nodejs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_env_aware_scope_nodejs"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJS": { + "consumed_by_rules": [ + "construct_env_aware_scope_nodejs", + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_scope_nodejs"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSBinaries": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment" + ], + "dependencies": ["pants.core", "pants.engine.platform"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSBinaries(binary_dir: 'str', digest: 'Digest | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSBinaries", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSBootstrap": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSBootstrap(nodejs_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSBootstrap", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSProcessEnvironment": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSProcessEnvironment(binaries: 'NodeJSBinaries', npm_config_cache: 'str', tool_binaries: 'BinaryShims', corepack_home: 'str', corepack_shims: 'str', corepack_env_vars: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSProcessEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSToolProcess": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "A request for a tool installed with NodeJS.", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSToolProcess", + "provider": "pants.backend.javascript.subsystems.nodejs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.UserChosenNodeJSResolveAliases": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.javascript.resolve.resolve_to_projects" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "UserChosenNodeJSResolveAliases", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs._BinaryPathsPerVersion": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "_BinaryPathsPerVersion", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs_infer.NodeJSInfer": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs_infer", + "name": "NodeJSInfer", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_scope_nodejs_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs_tool.NodeJSToolRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSToolRequest(tool: 'str', resolve: 'str | None', args: 'tuple[str, ...]', input_digest: 'Digest', description: 'str', level: 'LogLevel', options_scope: 'str', output_files: 'tuple[str, ...]' = (), output_directories: 'tuple[str, ...]' = (), append_only_caches: 'FrozenDict[str, str]' = , timeout_seconds: 'int | None' = None, extra_env: 'Mapping[str, str]' = )", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs_tool", + "name": "NodeJSToolRequest", + "provider": "pants.backend.javascript.subsystems.nodejs_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.backend.openapi.lint.spectral.rules.run_spectral" + ] + }, + "pants.backend.kotlin.compile.kotlinc.CompileKotlinSourceRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc", + "name": "CompileKotlinSourceRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.AllKotlincPluginTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPlugins(ids: 'tuple[str, ...]', classpath: 'ClasspathEntry', plugin_args: 'FrozenDict[str, tuple[str, ...]]')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.java"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsRequest", + "provider": "pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.FallibleKotlinSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "FallibleKotlinSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.dependency_inference.kotlin_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.option.global_options"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinSourceDependencyAnalysis(package: 'str', imports: 'frozenset[KotlinImport]', named_declarations: 'frozenset[str]', consumed_symbols_by_scope: 'FrozenDict[str, frozenset[str]]', scopes: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinRuntimeDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinSourceDependencies", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.dependency_inference.rules" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolveRequest", + "provider": "pants.backend.kotlin.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.AllKotlinTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.FirstPartyKotlinTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": ["pants.jvm.dependency_inference.symbol_mapper"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "FirstPartyKotlinTargetsMappingRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.check.KotlincCheckRequest": { + "consumed_by_rules": ["pants.backend.kotlin.goals.check.kotlinc_check"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.goals.check", + "name": "KotlincCheckRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.tailor.PutativeKotlinTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "PutativeKotlinTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.kotlin.goals.tailor", + "name": "PutativeKotlinTargetsRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintRequest", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin.lint.ktlint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin.lint.ktlint, pants.backend.kotlin.lint.ktlint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": ["pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt"] + }, + "pants.backend.kotlin.lint.ktlint.skip_field.SkipKtlintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.skip_field", + "name": "SkipKtlintField", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.subsystem.KtlintSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin.lint.ktlint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.subsystem", + "name": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": ["construct_scope_ktlint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin.KotlinSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin", + "name": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": ["construct_scope_kotlin"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin_infer.KotlinInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin_infer", + "name": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": ["construct_scope_kotlin_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlinc.KotlincSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlinc", + "name": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": ["construct_scope_kotlinc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.target_types.KotlinFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_KotlinFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'KotlinSourceField')", + "is_union": false, + "module": "pants.backend.kotlin.target_types", + "name": "KotlinFieldSet", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.InferKotlinJunitTestDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "InferKotlinJunitTestDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.test.junit" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinJunitLibrariesForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinJunitLibrariesForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolveRequest", + "provider": "pants.backend.kotlin.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiDocumentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiDocumentDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiSourceDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiSourceDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.OpenApiDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.openapi.dependency_inference", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": "OpenApiDependencies(dependencies: 'FrozenDict[str, frozenset[str]]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.dependency_inference.ParseOpenApiSources": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": "ParseOpenApiSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "ParseOpenApiSources", + "provider": "pants.backend.openapi.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.goals.tailor.PutativeOpenApiTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": "PutativeOpenApiTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.goals.tailor", + "name": "PutativeOpenApiTargetsRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.openapi_format.rules.OpenApiFormatRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.openapi_format.rules", + "name": "OpenApiFormatRequest", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.openapi_format.skip_field.SkipOpenApiFormatField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.openapi_format.skip_field", + "name": "SkipOpenApiFormatField", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.openapi_format.subsystem.OpenApiFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi.lint.openapi_format"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.openapi_format.subsystem", + "name": "OpenApiFormatSubsystem", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "returned_by_rules": ["construct_scope_openapi_format"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.rules.SpectralRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.rules", + "name": "SpectralRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.skip_field.SkipSpectralField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.skip_field", + "name": "SkipSpectralField", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.subsystem.SpectralSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_SpectralRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.subsystem", + "name": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_scope_spectral"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.openapi.subsystems.openapi.OpenApiSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.subsystems.openapi", + "name": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": ["construct_scope_openapi"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.plugin_development.pants_requirements.GenerateFromPantsRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.plugin_development"], + "documentation": null, + "is_union": false, + "module": "pants.backend.plugin_development.pants_requirements", + "name": "GenerateFromPantsRequirementsRequest", + "provider": "pants.backend.plugin_development", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCode": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCode", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.count_loc.count_loc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCodeSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_count_loc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.SuccinctCodeCounter": { + "consumed_by_rules": ["pants.backend.project_info.count_loc.count_loc"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "SuccinctCodeCounter", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_scc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.Dependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "Dependencies", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.DependenciesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "DependenciesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_dependencies"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.AddressToDependents": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.project_info"], + "documentation": "AddressToDependents(mapping: pants.util.frozendict.FrozenDict[Address, pants.util.ordered_set.FrozenOrderedSet[Address]])", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "AddressToDependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.map_addresses_to_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.Dependents": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.project_info", + "pants.backend.python.mixed_interpreter_constraints" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "Dependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.DependentsRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [], + "dependents": ["pants.backend.project_info"], + "documentation": "DependentsRequest(addresses: Iterable[Address], *, transitive: bool, include_roots: bool)", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_dependents"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.Filedeps": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.base.build_root", + "pants.build_graph.address", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "Filedeps", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.filedeps.file_deps"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.FiledepsSubsystem": { + "consumed_by_rules": ["pants.backend.project_info.filedeps.file_deps"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "FiledepsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_filedeps"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_filter"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.Roots": { + "consumed_by_rules": [], + "dependencies": ["pants.core", "pants.engine.console"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "Roots", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.list_roots.list_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.RootsSubsystem": { + "consumed_by_rules": ["pants.backend.project_info.list_roots.list_roots"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "RootsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.List": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "List", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.ListSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "ListSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_list"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.paths.paths"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsSubsystem": { + "consumed_by_rules": ["pants.backend.project_info.paths.paths"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_paths"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.RootDestinationPair": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destination" + ], + "dependencies": [], + "dependents": ["pants.backend.project_info"], + "documentation": "RootDestinationPair(root: 'Target', destination: 'Target')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "RootDestinationPair", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ] + }, + "pants.backend.project_info.paths.RootDestinationsPair": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ], + "dependencies": [], + "dependents": ["pants.backend.project_info"], + "documentation": "RootDestinationsPair(root: 'Target', destinations: 'Targets')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "RootDestinationsPair", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.paths.paths"] + }, + "pants.backend.project_info.paths.SpecsPaths": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.project_info"], + "documentation": "SpecsPaths(paths: 'list[list[str]]')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "SpecsPaths", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destination" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ] + }, + "pants.backend.project_info.paths.SpecsPathsCollection": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.project_info"], + "documentation": "SpecsPathsCollection(spec_paths: 'list[SpecsPaths]')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "SpecsPathsCollection", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.paths.paths"] + }, + "pants.backend.project_info.peek.Peek": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "Peek", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.peek.peek"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.PeekSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": "Display detailed target information in JSON form.", + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "PeekSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_peek"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.TargetDatas": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "TargetDatas", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.peek.get_target_data"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.peek.peek"] + }, + "pants.backend.project_info.regex_lint.RegexLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.regex_lint.RegexLintSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.project_info.regex_lint.partition_inputs" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_regex_lint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.AllPythonTargets": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.python"], + "documentation": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "AllPythonTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImpl": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.python, pants.backend.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImplMarker": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "An entry point for a specific implementation of mapping module names to owning targets for\nPython import dependency inference.\n\nAll implementations will be merged together. Any modules that show up in multiple\nimplementations will be marked ambiguous.", + "is_union": true, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImplMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "FirstPartyPythonTargetsMappingMarker", + "PythonProtobufMappingMarker", + "PythonThriftMappingMarker", + "PythonVCSVersionMappingMarker" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "FirstPartyPythonModuleMapping(resolves_to_modules_to_providers: 'FrozenDict[ResolveName, FrozenDict[str, Tuple[ModuleProvider, ...]]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonTargetsMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonTargetsMappingMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "The target(s) that own a Python module.\n\nUp to 2 targets can unambiguously own the same module, if one is an implementation and the other\nis a .pyi type stub. It is ambiguous for >1 implementation target to own the same module, and\nthose targets will be put into `ambiguous` instead of `unambiguous`. Therefore, `unambiguous`\nshould never be >2; and only 1 of `unambiguous` and `ambiguous` should have targets.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwnersRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "PythonModuleOwnersRequest(module: 'str', resolve: 'str | None', locality: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwnersRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.ThirdPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsePythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "ParsePythonDependenciesRequest(source: 'PythonSourceField', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsePythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.internals.native_dep_inference" + ], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ParsedPythonDependencies(imports: 'ParsedPythonImports', assets: 'ParsedPythonAssetPaths')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.InferConftestDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferConftestDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferInitDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferInitDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferPythonImportDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferPythonImportDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.PythonImportDependenciesInferenceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python"], + "documentation": "PythonImportDependenciesInferenceFieldSet(address: 'Address', source: 'PythonSourceField', dependencies: 'PythonDependenciesField', resolve: 'PythonResolveField', interpreter_constraints: 'InterpreterConstraintsField')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "PythonImportDependenciesInferenceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ResolvedParsedPythonDependencies(resolve_results: 'dict[str, ImportResolveResult]', assets: 'dict[str, ImportResolveResult]', explicit: 'ExplicitlyProvidedDependencies')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "ResolvedParsedPythonDependenciesRequest(field_set: 'PythonImportDependenciesInferenceFieldSet', parsed_dependencies: 'ParsedPythonDependencies', resolve: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwnerRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "UnownedImportPossibleOwnerRequest(unowned_import: 'str', original_resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwnerRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwners": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "UnownedImportPossibleOwners(value: 'list[tuple[Address, ResolveName]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.subsystem.PythonInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.subsystem", + "name": "PythonInferSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_python_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.InferStevedoreNamespacesDependencies": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "InferStevedoreNamespacesDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.StevedoreExtensions": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": "A mapping of stevedore namespaces to a list of targets that provide them.\n\nEffectively, the targets are StevedoreExtension targets.", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.rules.GenerateEntryPointsTxtFromStevedoreExtensionRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.rules", + "name": "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.AllStevedoreExtensionTargets": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreExtensionTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesField", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesProviderTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": "StevedoreNamespacesProviderTargetsRequest(stevedore_namespaces: 'StevedoreNamespacesField')", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesProviderTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.goals.coverage_py.CoverageConfig": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.python"], + "documentation": "CoverageConfig(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageConfig", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSetup": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "CoverageSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_coverage_py"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.MergedCoverageData": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.python"], + "documentation": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "MergedCoverageData", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.PytestCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "PytestCoverageDataCollection", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysisSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": ["construct_scope_python_dump_source_analysis"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.PythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python", "pants.core"], + "dependents": ["pants.backend.experimental.python"], + "documentation": "Information on the inferred imports for a Python file, including all raw intermediate\nresults.", + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.goals.export.ExportPluginOptions": { + "consumed_by_rules": [], + "dependencies": ["pants.option.subsystem"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPluginOptions", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginOption", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.ExportVenvsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "ExportVenvsRequest(targets: 'Sequence[Target]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportVenvsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.MaybeExportResult": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "MaybeExportResult(result: 'ExportResult | None')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "MaybeExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.goals.export.export_virtualenvs"] + }, + "pants.backend.python.goals.export.VenvExportRequest": { + "consumed_by_rules": ["pants.backend.python.goals.export.do_export"], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "VenvExportRequest(pex_request: 'PexRequest', dest_prefix: 'str', resolve_name: 'str', qualify_path_with_python_version: 'bool', editable_local_dists_digest: 'Digest | None' = None)", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "VenvExportRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.goals.export._ExportVenvForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_ExportVenvForResolveRequest(resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvForResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.goals.export.export_virtualenvs"] + }, + "pants.backend.python.goals.lockfile.GeneratePythonLockfile": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', requirements: 'FrozenOrderedSet[str]', find_links: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "GeneratePythonLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.KnownPythonUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "KnownPythonUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.PythonSyntheticLockfileTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "dependencies": ["pants.engine.internals.synthetic_targets"], + "dependents": ["pants.core"], + "documentation": "Register the type used to create synthetic targets for Python lockfiles.\n\nAs the paths for all lockfiles are known up-front, we set the `path` field to\n`SyntheticTargetsRequest.SINGLE_REQUEST_FOR_ALL_TARGETS` so that we get a single request for all\nour synthetic targets rather than one request per directory.", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "PythonSyntheticLockfileTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "SyntheticTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.RequestedPythonUserResolveNames": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "RequestedPythonUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.backend.python.goals.package_pex_binary.PexBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PexBinaryFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PexBinaryFieldSet(address: 'Address', entry_point: pants.backend.python.target_types.PexEntryPointField, script: pants.backend.python.target_types.PexScriptField, args: pants.backend.python.target_types.PexArgsField, env: pants.backend.python.target_types.PexEnvField, output_path: pants.core.goals.package.OutputPathField, emit_warnings: pants.backend.python.target_types.PexEmitWarningsField, ignore_errors: pants.backend.python.target_types.PexIgnoreErrorsField, inherit_path: pants.backend.python.target_types.PexInheritPathField, shebang: pants.backend.python.target_types.PexShebangField, strip_env: pants.backend.python.target_types.PexStripEnvField, platforms: pants.backend.python.target_types.PexPlatformsField, complete_platforms: pants.backend.python.target_types.PexCompletePlatformsField, resolve_local_platforms: pants.backend.python.target_types.PexResolveLocalPlatformsField, layout: pants.backend.python.target_types.PexLayoutField, execution_mode: pants.backend.python.target_types.PexExecutionModeField, include_requirements: pants.backend.python.target_types.PexIncludeRequirementsField, include_sources: pants.backend.python.target_types.PexIncludeSourcesField, include_tools: pants.backend.python.target_types.PexIncludeToolsField, venv_site_packages_copies: pants.backend.python.target_types.PexVenvSitePackagesCopies, venv_hermetic_scripts: pants.backend.python.target_types.PexVenvHermeticScripts, environment: pants.core.util_rules.environments.EnvironmentField)", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexBinaryFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.package_pex_binary.PexFromTargetsRequestForBuiltPackage": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request" + ], + "dependencies": ["pants.backend.awslambda.python", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "An intermediate class that gives consumers access to the data used to create a\n`PexFromTargetsRequest` to fulfil a `BuiltPackage` request.\n\nThis class is used directly by `run_pex_binary`, but should be handled transparently by direct\n`BuiltPackage` requests.", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.publish.PublishPythonPackageFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "PublishPythonPackageFieldSet(address: 'Address', repositories: 'PythonRepositoriesField', skip_twine: 'SkipTwineUploadField')", + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageFieldSet", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PublishPythonPackageRequest": { + "consumed_by_rules": ["pants.backend.python.goals.publish.twine_upload"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PythonRepositoriesField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PythonRepositoriesField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.SkipTwineUploadField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "SkipTwineUploadField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetups": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.python.framework.stevedore", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetups", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetupsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "AllPytestPluginSetupsRequest(addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetupsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.PyTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PyTestRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.python"], + "documentation": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetupRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "A request to set up the test environment before Pytest runs, e.g. to set up databases.\n\nTo use, subclass PytestPluginSetupRequest, register the rule\n`UnionRule(PytestPluginSetupRequest, MyCustomPytestPluginSetupRequest)`, and add a rule that\ntakes your subclass as a parameter and returns `PytestPluginSetup`.", + "is_union": true, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "RuntimePackagesPluginRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.RuntimePackagesPluginRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "RuntimePackagesPluginRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "RuntimePackagesPluginRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": ["pants.backend.python"], + "documentation": "TestSetup(process: 'Process', results_file_name: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.pytest_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "TestSetupRequest(field_sets: 'Tuple[PythonTestFieldSet, ...]', metadata: 'TestMetadata', is_debug: 'bool', extra_env: 'FrozenDict[str, str]' = FrozenDict({}), prepend_argv: 'Tuple[str, ...]' = (), additional_pexes: 'Tuple[Pex, ...]' = ())", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.repl.IPythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "IPythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.repl.PythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_python_repl_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "PythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_requirement.PythonRequirementFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PythonRequirementFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PythonRequirementFieldSet(address: 'Address', requirements: 'PythonRequirementsField', dependencies: 'PythonRequirementDependenciesField', modules: 'PythonRequirementModulesField', resolve: 'PythonRequirementResolveField', entry_point: 'PythonRequirementEntryPointField')", + "is_union": false, + "module": "pants.backend.python.goals.run_python_requirement", + "name": "PythonRequirementFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_source.PythonSourceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PythonSourceFieldSet(address: 'Address', source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.target_types.InterpreterConstraintsField, _run_goal_use_sandbox: pants.backend.python.target_types.PythonRunGoalUseSandboxField)", + "is_union": false, + "module": "pants.backend.python.goals.run_python_source", + "name": "PythonSourceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.tailor.PutativePythonTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PutativePythonTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.tailor", + "name": "PutativePythonTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.rules.AddTrailingCommaRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.rules", + "name": "AddTrailingCommaRequest", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.skip_field.SkipAddTrailingCommaField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.skip_field", + "name": "SkipAddTrailingCommaField", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingComma": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": ["construct_scope_add_trailing_comma"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.rules.AutoflakeRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.rules", + "name": "AutoflakeRequest", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.skip_field.SkipAutoflakeField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.skip_field", + "name": "SkipAutoflakeField", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.Autoflake": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.autoflake"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "Autoflake", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": ["construct_scope_autoflake"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.rules.BanditRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditRequest", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.skip_field.SkipBanditField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.skip_field", + "name": "SkipBanditField", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.Bandit": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.rules.partition_bandit" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.bandit"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "Bandit", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": ["construct_scope_bandit"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.black.rules.BlackRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.rules", + "name": "BlackRequest", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.skip_field.SkipBlackField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.skip_field", + "name": "SkipBlackField", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.Black": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BlackRequest", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.rules.partition_black", + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.python.lint.black", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "Black", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_black"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.rules.DocformatterRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.rules", + "name": "DocformatterRequest", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.skip_field.SkipDocformatterField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.skip_field", + "name": "SkipDocformatterField", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.Docformatter": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.docformatter"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "Docformatter", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": ["construct_scope_docformatter"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.rules.Flake8Request": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Request", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.skip_field.SkipFlake8Field": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.skip_field", + "name": "SkipFlake8Field", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.flake8"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": ["construct_scope_flake8"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8FirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python.lint.flake8"], + "documentation": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.rules.IsortRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.rules", + "name": "IsortRequest", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.skip_field.SkipIsortField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.skip_field", + "name": "SkipIsortField", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.Isort": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.isort"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "Isort", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": ["construct_scope_isort"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.rules.PydocstyleRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.rules", + "name": "PydocstyleRequest", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.skip_field.SkipPydocstyleField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.skip_field", + "name": "SkipPydocstyleField", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.subsystem.Pydocstyle": { + "consumed_by_rules": [ + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_PydocstyleRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.pydocstyle"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.subsystem", + "name": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": ["construct_scope_pydocstyle"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.rules.PylintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintRequest", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.skip_field.SkipPylintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.skip_field", + "name": "SkipPylintField", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.Pylint": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.pylint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "Pylint", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": ["construct_scope_pylint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python.lint.pylint"], + "documentation": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.rules.PyUpgradeRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.rules", + "name": "PyUpgradeRequest", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.skip_field.SkipPyUpgradeField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.skip_field", + "name": "SkipPyUpgradeField", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgrade": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.pyupgrade"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": ["construct_scope_pyupgrade"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffFixRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffFixRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffFormatRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffFormatRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffLintRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules._RunRuffRequest": { + "consumed_by_rules": ["pants.backend.python.lint.ruff.rules.run_ruff"], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.lint.ruff"], + "documentation": "_RunRuffRequest(snapshot: 'Snapshot', mode: 'RuffMode')", + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "_RunRuffRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_fmt", + "pants.backend.python.lint.ruff.rules.ruff_lint" + ] + }, + "pants.backend.python.lint.ruff.skip_field.SkipRuffField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.skip_field", + "name": "SkipRuffField", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.subsystem.Ruff": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_fmt", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_RuffLintRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFormatRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python.lint.ruff"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.subsystem", + "name": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": ["construct_scope_ruff"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.rules.YapfRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.rules", + "name": "YapfRequest", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.skip_field.SkipYapfField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.skip_field", + "name": "SkipYapfField", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.Yapf": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_YapfRequest", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.build_files.fmt.yapf", + "pants.backend.python.lint.yapf", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "Yapf", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_yapf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.macros.pipenv_requirements.GenerateFromPipenvRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.pipenv_requirements", + "name": "GenerateFromPipenvRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.poetry_requirements.GenerateFromPoetryRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.poetry_requirements", + "name": "GenerateFromPoetryRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.python_requirements.GenerateFromPythonRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.python_requirements.generate_from_python_requirement" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.python_requirements", + "name": "GenerateFromPythonRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.mixed_interpreter_constraints"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": ["construct_scope_py_constraints"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyOxidizerFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PyOxidizerFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": "PyOxidizerFieldSet(address: 'Address', binary_name: 'PyOxidizerBinaryNameField', entry_point: 'PyOxidizerEntryPointField', dependencies: 'PyOxidizerDependenciesField', unclassified_resources: 'PyOxidizerUnclassifiedResources', template: 'PyOxidizerConfigSourceField', output_path: 'PyOxidizerOutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyOxidizerFieldSet", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyoxidizerRunnerScript": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyOxidizer": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": ["construct_scope_pyoxidizer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPy": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPy", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_debugpy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPython": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPython", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_ipython"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PyTest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PyTest", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_pytest"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PythonTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "PythonTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'PythonTestSourceField', interpreter_constraints: 'InterpreterConstraintsField', timeout: 'PythonTestsTimeoutField', runtime_package_dependencies: 'RuntimePackageDependenciesField', extra_env_vars: 'PythonTestsExtraEnvVarsField', xdist_concurrency: 'PythonTestsXdistConcurrencyField', batch_compatibility_tag: 'PythonTestsBatchCompatibilityTagField', resolve: 'PythonResolveField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PythonTestFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_python_native_code"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.PythonNativeCodeSubsystem": { + "consumed_by_rules": ["construct_env_aware_scope_python_native_code"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "PythonNativeCodeSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python_native_code"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.repos.PythonRepos": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.repos", + "name": "PythonRepos", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python_repos"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup.PythonSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup", + "name": "PythonSetup", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup_py_generation.SetupPyGeneration": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup_py_generation", + "name": "SetupPyGeneration", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_setup_py_generation"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.PythonDistributionFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PythonDistributionFieldSet(address: 'Address', provides: pants.backend.python.target_types.PythonProvidesField)", + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "PythonDistributionFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ] + }, + "pants.backend.python.subsystems.setuptools.Setuptools": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "Setuptools", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_setuptools"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCM": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python", + "returned_by_rules": ["construct_scope_setuptools_scm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineSubsystem": { + "consumed_by_rules": ["pants.backend.python.goals.publish.twine_upload"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": ["construct_scope_twine"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexBinaryDefaults": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexBinaryDefaults", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_pex_binary_defaults"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexCompletePlatformsField": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexCompletePlatformsField", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.target_types.PythonFilesGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PythonFilesGeneratorSettingsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types.ResolvePexEntryPointRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Determine the `entry_point` for a `pex_binary` after applying all syntactic sugar.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePexEntryPointRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvePythonDistributionEntryPointsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Looks at the entry points to see if it is a setuptools entry point, or a BUILD target address\nthat should be resolved into a setuptools entry point.\n\nIf the `entry_points_field` is present, inspect the specified entry points.\nIf the `provides_field` is present, inspect the `provides_field.kwargs[\"entry_points\"]`.\n\nThis is to support inspecting one or the other depending on use case, using the same\nlogic for resolving pex_binary addresses etc.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePythonDistributionEntryPointsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.target_types.ResolvedPexEntryPoint": { + "consumed_by_rules": [], + "dependencies": ["pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPexEntryPoint", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvedPythonDistributionEntryPoints": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.target_types_rules.GenerateTargetsFromPexBinaries": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "GenerateTargetsFromPexBinaries", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPexBinaryEntryPointDependency": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPexBinaryEntryPointDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPythonDistributionDependencies": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPythonDistributionDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonValidateDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonValidateDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.MyPycDistBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPycDistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "MyPycDistBuildEnvironmentRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "DistBuildEnvironmentRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.UsesMyPycField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "UsesMyPycField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPyPartition(field_sets: 'FrozenOrderedSet[MyPyFieldSet]', root_targets: 'CoarsenedTargets', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartition", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartitions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.skip_field.SkipMyPyField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.skip_field", + "name": "SkipMyPyField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPy": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPy", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": ["construct_scope_mypy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyConfigFile": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": ["pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.pytype.rules.PytypePartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.typecheck.pytype"], + "documentation": "PytypePartition(field_sets: 'FrozenOrderedSet[PytypeFieldSet]', root_targets: 'CoarsenedTargets', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.rules", + "name": "PytypePartition", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.backend.python.typecheck.pytype.rules.PytypePartitions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.python.typecheck.pytype"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.rules", + "name": "PytypePartitions", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "returned_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.backend.python.typecheck.pytype.rules.PytypeRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python.typecheck.pytype"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.rules", + "name": "PytypeRequest", + "provider": "pants.backend.experimental.python.typecheck.pytype, pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.backend.python.typecheck.pytype.skip_field.SkipPytypeField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.skip_field", + "name": "SkipPytypeField", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.pytype.subsystem.Pytype": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python.typecheck.pytype"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.subsystem", + "name": "Pytype", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "returned_by_rules": ["construct_scope_pytype"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "Any ancestor files found.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request for ancestor files of the given names.\n\n\"Ancestor files\" means all files with one of the given names that are siblings of, or in parent\ndirectories of, a `.py` or `.pyi` file in the input_files.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystem": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "A PEP 517/518 build system configuration.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystemRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to find build system config in the given dir of the given digest.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystemRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to build dists via a PEP 517 build backend.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist" + ] + }, + "pants.backend.python.util_rules.faas.BuildPythonFaaSRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "BuildPythonFaaSRequest(address: 'Address', target_name: 'str', complete_platforms: 'PythonFaaSCompletePlatforms', handler: 'None | PythonFaaSHandlerField', output_path: 'OutputPathField', runtime: 'PythonFaaSRuntimeField', include_requirements: 'bool', include_sources: 'bool', reexported_handler_module: 'None | str', log_only_reexported_handler_func: 'bool' = False, prefix_in_artifact: 'None | str' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "BuildPythonFaaSRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ] + }, + "pants.backend.python.util_rules.faas.InferPythonFaaSHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "InferPythonFaaSHandlerDependency", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.faas.PythonFaaSCompletePlatforms": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.digest_complete_platforms" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "PythonFaaSCompletePlatforms", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.infer_runtime_platforms" + ] + }, + "pants.backend.python.util_rules.faas.ResolvePythonFaaSHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.resolve_python_faas_handler" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "ResolvePythonFaaSHandlerRequest(field: 'PythonFaaSHandlerField')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "ResolvePythonFaaSHandlerRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.util_rules.faas.ResolvedPythonFaaSHandler": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python", "pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "ResolvedPythonFaaSHandler(module: 'str', func: 'str', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "ResolvedPythonFaaSHandler", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.resolve_python_faas_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.util_rules.faas.RuntimePlatforms": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.python", "pants.core"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "RuntimePlatforms(interpreter_version: 'None | tuple[int, int]', pex_platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]))", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "RuntimePlatforms", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.infer_runtime_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.faas.RuntimePlatformsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.infer_runtime_platforms" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "RuntimePlatformsRequest(address: 'Address', target_name: 'str', runtime: 'PythonFaaSRuntimeField', complete_platforms: 'PythonFaaSCompletePlatforms')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "RuntimePlatformsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.interpreter_constraints", + "name": "InterpreterConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistWheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "Contains the wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistWheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPex": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPex", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Request to build the local dists from the dependency closure of a set of addresses.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.AllPythonDistributionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.python"], + "documentation": "AllPythonDistributionTargets(targets: 'Targets')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "AllPythonDistributionTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.local_dists_pep660.EditableLocalDists": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "A Digest populated by editable (PEP660) wheels of local dists.\n\nAccording to PEP660, these wheels should not be exported to users and must be discarded\nafter install. Anything that uses this should ensure that these wheels get installed and\nthen deleted.\n\nInstalling PEP660 wheels creates an \"editable\" install such that the sys.path gets\nadjusted to include source directories from the build root (not from the sandbox).\nThis is decidedly not hermetic or portable and should only be used locally.\n\nPEP660 wheels have .dist-info metadata and the .pth files (or similar) that adjust sys.path.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "EditableLocalDists", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.EditableLocalDistsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Request to generate PEP660 wheels of local dists in the given resolve.\n\nThe editable wheel files must not be exported or made available to the end-user (according to\nPEP 660). Instead, the PEP660 editable wheels serve as intermediate, internal-only,\nrepresentation of what should be installed in the exported virtualenv to create the editable\ninstalls of local python_distributions.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "EditableLocalDistsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.LocalDistPEP660Wheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.env_vars", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "Contains the PEP 660 \"editable\" wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "LocalDistPEP660Wheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.PEP660BuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "PEP660BuildResult(output: 'Digest', editable_wheel_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "PEP660BuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.ResolveSortedPythonDistributionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "ResolveSortedPythonDistributionTargets(targets: 'FrozenDict[str | None, tuple[Target, ...]]')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "ResolveSortedPythonDistributionTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.package_dists.DependencyOwner": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "An ExportedTarget in its role as an owner of other targets.\n\nWe need this type to prevent rule ambiguities when computing the list of targets owned by an\nExportedTarget (which involves going from ExportedTarget -> dep -> owner (which is itself an\nExportedTarget) and checking if owner is the original ExportedTarget.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DependencyOwner", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_sources" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildChroot": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "A chroot containing PEP 517 build setup and the sources it operates on.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildChroot", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildChrootRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to create a chroot for building a dist in.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildChrootRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "Various extra information that might be needed to build a dist.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildEnvironmentRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "DistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": true, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildEnvironmentRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": ["MyPycDistBuildEnvironmentRequest"], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildSources": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "The source-root-stripped sources required to build a distribution with a generated setup.py.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildSources", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.ExportedTarget": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "ExportedTarget", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_exporting_owner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.ExportedTargetRequirements": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "ExportedTargetRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.util_rules.package_dists.FinalizedSetupKwargs": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "FinalizedSetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ] + }, + "pants.backend.python.util_rules.package_dists.GenerateSetupPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "GenerateSetupPyRequest(exported_target: 'ExportedTarget', sources: 'DistBuildSources', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "GenerateSetupPyRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ] + }, + "pants.backend.python.util_rules.package_dists.GeneratedSetupPy": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "GeneratedSetupPy(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "GeneratedSetupPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.OwnedDependencies": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.engine.unions"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "OwnedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.package_dists.get_sources" + ] + }, + "pants.backend.python.util_rules.package_dists.OwnedDependency": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_exporting_owner" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A target that is owned by some ExportedTarget.\n\nCode in this target is published in the owner's distribution.\n\nThe owner of a target T is T's closest filesystem ancestor among the python_distribution\ntargets that directly or indirectly depend on it (including T itself).", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "OwnedDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.SetupKwargs": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.unions"], + "dependents": ["pants.backend.python"], + "documentation": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "SetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.SetupKwargsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to allow setting the kwargs passed to the `setup()` function.\n\nBy default, Pants will pass the kwargs provided in the BUILD file unchanged. To customize this\nbehavior, subclass `SetupKwargsRequest`, register the rule `UnionRule(SetupKwargsRequest,\nMyCustomSetupKwargsRequest)`, and add a rule that takes your subclass as a parameter and returns\n`SetupKwargs`.", + "is_union": true, + "module": "pants.backend.python.util_rules.package_dists", + "name": "SetupKwargsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ] + }, + "pants.backend.python.util_rules.pex.BuildPexResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python" + ], + "dependents": ["pants.core"], + "documentation": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "BuildPexResult", + "provider": "pants.core", + "returned_by_rules": ["pants.backend.python.util_rules.pex.build_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex" + ] + }, + "pants.backend.python.util_rules.pex.CompletePlatforms": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "CompletePlatforms", + "provider": "pants.backend.awslambda.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPex": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python"], + "documentation": "OptionalPex(maybe_pex: 'Pex | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex.Pex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "Wrapper for a digest containing a pex file created with some filename.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "Pex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": ["pants.backend.python.util_rules.pex.create_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_pex_process" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "PexProcess(pex: 'Pex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings_or_addrs=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None, description_of_origin=''), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.PexRequirementsInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "PexRequirementsInfo(req_strings: 'tuple[str, ...]', find_links: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequirementsInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex.PexResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexResolveInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex.PythonProvider": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Union which should have 0 or 1 implementations registered which provide Python.\n\nSubclasses should provide a rule from their subclass type to `PythonExecutable`.", + "is_union": true, + "module": "pants.backend.python.util_rules.pex", + "name": "PythonProvider", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.util_rules.pex.find_interpreter"] + }, + "pants.backend.python.util_rules.pex.VenvPex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "VenvPex(digest: 'Digest', append_only_caches: 'FrozenDict[str, str] | None', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_venv_pex_process" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "VenvPexProcess(venv_pex: 'VenvPex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "VenvPexRequest(pex_request: 'PexRequest', complete_pex_env: 'CompletePexEnvironment', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexRequest", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexCli": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCli", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_pex_cli"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_cli.PexCliProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "PexCliProcess(*, subcommand: 'Iterable[str]', extra_args: 'Iterable[str]', description: 'str', additional_input_digest: 'Optional[Digest]' = None, extra_env: 'Optional[Mapping[str, str]]' = None, output_files: 'Optional[Iterable[str]]' = None, output_directories: 'Optional[Iterable[str]]' = None, level: 'LogLevel' = , concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCliProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_venv.pex_venv" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexPEX": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": ["pants.engine.platform"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "The Pex PEX binary.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexPEX", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexEnvironment": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": ["pants.option.global_options"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.core" + ], + "documentation": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonBuildStandaloneBinary', venv_use_symlinks: 'bool' = False)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_pex", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PythonExecutable": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "The BinaryPath of a Python executable for user code, along with some extras.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PythonExecutable", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolve": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolve", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "ChosenPythonResolveRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.GlobalRequirementConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": ["pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "GlobalRequirementConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_from_targets.InterpreterConstraintsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "InterpreterConstraintsRequest(addresses: 'Iterable[Address]', *, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "InterpreterConstraintsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.PexFromTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None, warn_for_transitive_files_targets: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "PexFromTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.RequirementsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Requests a PEX containing only thirdparty requirements for internal/non-portable use.\n\nUsed as part of an optimization to reduce the \"overhead\" (in terms of both time and space) of\nthirdparty requirements by taking advantage of certain PEX features.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "RequirementsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._ConstraintsRepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_ConstraintsRepositoryPexRequest(repository_pex_request: '_RepositoryPexRequest')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_ConstraintsRepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._PexRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Determine the requirement strings used transitively.\n\nThis type is private because callers should likely use `RequirementsPexRequest` or\n`PexFromTargetsRequest` instead.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_PexRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._RepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_RepositoryPexRequest(addresses: 'Iterable[Address]', *, internal_only: 'bool', hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_lockfile_args: 'tuple[str, ...]' = ()) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_RepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.python", + "pants.core" + ], + "documentation": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfileRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A request to load and validate the content of the given lockfile.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfileRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Lockfile": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python"], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.python", + "pants.core" + ], + "documentation": "Lockfile(url: 'str', url_description_of_origin: 'str', resolve_name: 'str', lockfile_hex_digest: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Lockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.PexRequirements": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "dependencies": [], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "PexRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Resolve": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Resolve(name: 'str', use_entire_lockfile: 'bool')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Resolve", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "Configuration from `[python]` that impacts how the resolve is created.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfig", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfigRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Find all configuration from `[python]` that impacts how the resolve is created.\n\nIf `resolve_name` is None, then most per-resolve options will be ignored because there is no way\nfor users to configure them. However, some options like `[python-repos].indexes` will still be\nloaded.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfigRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_venv.PexVenv": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PexVenv(digest: 'Digest', path: 'Path')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_venv", + "name": "PexVenv", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_venv.pex_venv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.pex_venv.PexVenvRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_venv.pex_venv" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PexVenvRequest(pex: 'Pex', layout: 'PexVenvLayout', output_path: 'Path', description: 'str', platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), prefix: 'None | str' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_venv", + "name": "PexVenvRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFiles": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "PythonSourceFilesRequest(targets: 'Iterable[Target]', *, include_resources: 'bool' = True, include_files: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.StrippedPythonSourceFiles": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "documentation": "A PythonSourceFiles that has had its source roots stripped.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "StrippedPythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.vcs_versioning.AllVCSVersionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.GeneratePythonFromSetuptoolsSCMRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "GeneratePythonFromSetuptoolsSCMRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.PythonVCSVersionMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "PythonVCSVersionMappingMarker", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.VCSVersionPythonResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "VCSVersionPythonResolveField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "HandleScalacOptionsRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.base.build_root", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "HandleScalacOptionsResult(item: 'ScalacOptionsItem')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.ScalaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPCompileRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPDependencyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaBSPDependencyModulesRequest(field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPDependencyModulesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPDependencyModulesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.util_rules.lifecycle"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPLanguageSupport", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_resources_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPResourcesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaMainClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaMainClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaTestClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaTestClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalacOptionsHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModules": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.core", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch", + "pants.jvm.resolve.key" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ThirdpartyModules(resolve: 'CoursierResolveKey', entries: 'dict[CoursierLockfileEntry, ClasspathEntry]', merged_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ThirdpartyModulesRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModulesRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.spec.ScalaMainClassesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.bsp.spec"], + "dependents": [], + "documentation": "ScalaMainClassesResult(items: 'tuple[ScalaMainClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalaTestClassesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.bsp.spec"], + "dependents": [], + "documentation": "ScalaTestClassesResult(items: 'tuple[ScalaTestClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.bsp.spec"], + "dependents": [], + "documentation": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac.CompileScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac", + "name": "CompileScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.AllScalaPluginTargets": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.scala.compile.scalac_plugins", + "pants.engine.environment" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPlugins", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.java"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala, pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetWithoutResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginsForTargetWithoutResolveRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetWithoutResolveRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaLibraryDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaLibraryDependencyRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaPluginDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaPluginDependenciesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaSourceDependencies", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.dependency_inference.rules" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolveRequest", + "provider": "pants.backend.scala.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.AnalyzeScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "AnalyzeScalaSourceRequest(source_files: 'SourceFiles', scala_version: 'ScalaVersion', source3: 'bool')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.FallibleScalaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.dependency_inference.scala_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.helm", "pants.engine.fs"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[ScalaProvidedSymbol]', provided_symbols_encoded: 'FrozenOrderedSet[ScalaProvidedSymbol]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.AllScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "AllScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.FirstPartyScalaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "dependencies": ["pants.jvm.dependency_inference.symbol_mapper"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "FirstPartyScalaTargetsMappingRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.check.ScalacCheckRequest": { + "consumed_by_rules": ["pants.backend.scala.goals.check.scalac_check"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.check", + "name": "ScalacCheckRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.repl.ScalaRepl": { + "consumed_by_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.repl", + "name": "ScalaRepl", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.scala.goals.tailor.PutativeScalaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "PutativeScalaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.goals.tailor", + "name": "PutativeScalaTargetsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.GatherScalafmtConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": "GatherScalafmtConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "GatherScalafmtConfigFilesRequest", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtConfigFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.scala.lint.scalafmt.rules"], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtRequest", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtToolLockfileSentinel", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.skip_field.SkipScalafmtField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.skip_field", + "name": "SkipScalafmtField", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.subsystem.ScalafmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.subsystem", + "name": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": ["construct_scope_scalafmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.resolve.artifact.ScalaArtifactClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.artifact.scala_artifact_classpath" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.artifact", + "name": "ScalaArtifactClasspathEntryRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.resolve.lockfile.ValidateResolveHasScalaRuntimeRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": ["pants.jvm.goals.lockfile"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.lockfile", + "name": "ValidateResolveHasScalaRuntimeRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateJvmArtifactsForResolveRequest", + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala.ScalaSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.target_types.generate_jvm_artifact_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala", + "name": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scala"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala_infer.ScalaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala_infer", + "name": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scala_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalac.Scalac": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalac", + "name": "Scalac", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scalac"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalatest.Scalatest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ScalatestTestRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalatest", + "name": "Scalatest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scalatest"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.target_types.GenerateJvmArtifactForScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.generate_jvm_artifact_targets" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "GenerateJvmArtifactForScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_ScalaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'ScalaSourceField')", + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaSettingsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "ScalatestTestFieldSet(address: 'Address', sources: 'ScalatestTestSourceField', timeout: 'ScalatestTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'ScalatestTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ] + }, + "pants.backend.scala.test.scalatest.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.scala.test.scalatest", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetup", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.test.scalatest.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "TestSetupRequest(field_set: 'ScalatestTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetupRequest", + "provider": "pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionRequest": { + "consumed_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaArtifactsForVersionRequest(scala_version: 'ScalaVersion')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionRequest", + "provider": "pants.backend.scala.util_rules.versions", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.util_rules.versions"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.scala" + ], + "documentation": "ScalaArtifactsForVersionResult(compiler_coordinate: 'Coordinate', library_coordinate: 'Coordinate', reflect_coordinate: 'Coordinate | None', compiler_main: 'str', repl_main: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.shell.dependency_inference.AllShellTargets": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "AllShellTargets", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.find_all_shell_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.InferShellDependencies": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "InferShellDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.ParseShellImportsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "ParseShellImportsRequest(digest: 'Digest', fp: 'str')", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParseShellImportsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ParsedShellImports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParsedShellImports", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ShellMapping": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "A mapping of Shell file names to their owning file address.", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ShellMapping", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.goals.tailor.PutativeShellTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": "PutativeShellTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.shell.goals.tailor", + "name": "PutativeShellTargetsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.ShellTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "ShellTestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.TestShellCommandFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "TestShellCommandFieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.rules.ShellcheckRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.rules", + "name": "ShellcheckRequest", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.skip_field.SkipShellcheckField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.skip_field", + "name": "SkipShellcheckField", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.subsystem.Shellcheck": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_ShellcheckRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.subsystem", + "name": "Shellcheck", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shellcheck"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.rules.ShfmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.rules", + "name": "ShfmtRequest", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.skip_field.SkipShfmtField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.skip_field", + "name": "SkipShfmtField", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.subsystem.Shfmt": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell.lint.shfmt"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.subsystem", + "name": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": ["construct_scope_shfmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2FieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "Shunit2FieldSet(address: 'Address', sources: pants.backend.shell.target_types.Shunit2TestSourceField, timeout: pants.backend.shell.target_types.Shunit2TestTimeoutField, shell: pants.backend.shell.target_types.Shunit2ShellField, runtime_package_dependencies: pants.core.goals.test.RuntimePackageDependenciesField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2FieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2Runner": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2Runner", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2RunnerRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "Shunit2RunnerRequest(address: Address, test_file_content: pants.engine.fs.FileContent, shell_field: pants.backend.shell.target_types.Shunit2ShellField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2RunnerRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2TestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2TestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": ["pants.backend.shell"], + "documentation": "TestSetup(process: pants.engine.process.Process)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "TestSetupRequest(field_set: pants.backend.shell.shunit2_test_runner.Shunit2FieldSet)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.subsystems.shell_setup.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "EnvironmentAware", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_env_aware_scope_shell_setup"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_setup.ShellSetup": { + "consumed_by_rules": [ + "construct_env_aware_scope_shell_setup", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "ShellSetup", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shell_setup"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_test_subsys.ShellTestSubsystem": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ShellTestRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_test_subsys", + "name": "ShellTestSubsystem", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shell_test"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shunit2.Shunit2": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_Shunit2TestRequest" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shunit2", + "name": "Shunit2", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shunit2"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.target_types.ShellGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.target_types", + "name": "ShellGeneratorSettingsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.GenerateFilesFromShellCommandRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "GenerateFilesFromShellCommandRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.RunShellCommand": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported_RunShellCommand", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_RunShellCommand" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "RunShellCommand", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.ShellCommandProcessFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "ShellCommandProcessFromTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "ShellCommandProcessFromTargetRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.backend.terraform.dependencies.TerraformDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependencies.get_terraform_providers" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformDependenciesRequest(source_files: 'SourceFiles', directories: 'Tuple[str, ...]', backend_config: 'SourceFiles', dependencies_files: 'SourceFiles', initialise_backend: 'bool' = False)", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformDependenciesRequest", + "provider": "pants.backend.terraform.dependencies", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.terraform.dependencies.init_terraform"] + }, + "pants.backend.terraform.dependencies.TerraformDependenciesResponse": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.terraform.dependencies", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformDependenciesResponse(fetched_deps: 'Tuple[Tuple[str, Digest], ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformDependenciesResponse", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependencies.get_terraform_providers" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.terraform.dependencies.init_terraform"] + }, + "pants.backend.terraform.dependencies.TerraformInitRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependencies.init_terraform" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformInitRequest(root_module: 'TerraformRootModuleField', backend_config: 'TerraformBackendConfigField', dependencies: 'TerraformDependenciesField', initialise_backend: 'bool' = False)", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformInitRequest", + "provider": "pants.backend.terraform.dependencies", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ] + }, + "pants.backend.terraform.dependencies.TerraformInitResponse": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.terraform.dependencies", + "pants.core" + ], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformInitResponse(sources_and_deps: 'Digest', terraform_files: 'tuple[str, ...]', chdir: 'str')", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformInitResponse", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependencies.init_terraform" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ] + }, + "pants.backend.terraform.dependency_inference.InferTerraformModuleDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "InferTerraformModuleDependenciesRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.ParseTerraformModuleSources": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "ParseTerraformModuleSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParseTerraformModuleSources", + "provider": "pants.backend.terraform.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ] + }, + "pants.backend.terraform.dependency_inference.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParserSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2Parser": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_terraform_hcl2_parser"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformCheckRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformCheckRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformValidateSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_terraform_validate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.deploy.DeployTerraformFieldSet": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.deploy.run_terraform_deploy" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "DeployTerraformFieldSet(address: 'Address', description: 'DescriptionField', root_module: 'TerraformRootModuleField', dependencies: 'TerraformDependenciesField', backend_config: 'TerraformBackendConfigField', var_files: 'TerraformVarFileSourcesField')", + "is_union": false, + "module": "pants.backend.terraform.goals.deploy", + "name": "DeployTerraformFieldSet", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.deploy.TerraformDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformDeploymentRequest(field_set: 'TerraformDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.terraform.goals.deploy", + "name": "TerraformDeploymentRequest", + "provider": "pants.backend.terraform.goals.deploy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.deploy.run_terraform_deploy" + ] + }, + "pants.backend.terraform.goals.tailor.PutativeTerraformTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "PutativeTerraformTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.goals.tailor", + "name": "PutativeTerraformTargetsRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TfFmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_terraform_fmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TffmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TffmtRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.target_types.AllTerraformDeploymentTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.target_types", + "name": "AllTerraformDeploymentTargets", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.target_types.all_terraform_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.tool.TerraformProcess": { + "consumed_by_rules": [ + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "A request to invoke Terraform.", + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformProcess", + "provider": "pants.backend.terraform.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformTool": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformTool", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_download_terraform"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.preamble.rules.PreambleRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.rules", + "name": "PreambleRequest", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.preamble.subsystem.PreambleSubsystem": { + "consumed_by_rules": [ + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.tools.preamble"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.subsystem", + "name": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": ["construct_scope_preamble"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.semgrep.rules.AllSemgrepConfigs": { + "consumed_by_rules": [ + "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs" + ], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.experimental.tools.semgrep"], + "documentation": "AllSemgrepConfigs(configs_by_dir: 'dict[PurePath, set[PurePath]]')", + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "AllSemgrepConfigs", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [ + "pants.backend.tools.semgrep.rules.find_all_semgrep_configs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.semgrep.rules.RelevantSemgrepConfigs": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.tools.semgrep.rules"], + "dependents": ["pants.backend.experimental.tools.semgrep"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "RelevantSemgrepConfigs", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [ + "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.tools.semgrep.rules.partition"] + }, + "pants.backend.tools.semgrep.rules.RelevantSemgrepConfigsRequest": { + "consumed_by_rules": [ + "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.tools.semgrep"], + "documentation": "RelevantSemgrepConfigsRequest(field_set: 'SemgrepFieldSet')", + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "RelevantSemgrepConfigsRequest", + "provider": "pants.backend.tools.semgrep.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.tools.semgrep.rules.partition"] + }, + "pants.backend.tools.semgrep.rules.SemgrepIgnoreFiles": { + "consumed_by_rules": ["pants.backend.tools.semgrep.rules.partition"], + "dependencies": ["builtins"], + "dependents": ["pants.backend.experimental.tools.semgrep"], + "documentation": "SemgrepIgnoreFiles(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "SemgrepIgnoreFiles", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [ + "pants.backend.tools.semgrep.rules.all_semgrep_ignore_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.semgrep.rules.SemgrepLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "SemgrepLintRequest", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.semgrep.subsystem.SemgrepSubsystem": { + "consumed_by_rules": [ + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.semgrep.rules.partition" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.tools.semgrep"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.semgrep.subsystem", + "name": "SemgrepSubsystem", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": ["construct_scope_semgrep"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.workunit_logger.rules.WorkunitLogger": { + "consumed_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.tools.workunit_logger"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.workunit_logger.rules", + "name": "WorkunitLogger", + "provider": "pants.backend.experimental.tools.workunit_logger", + "returned_by_rules": ["construct_scope_workunit_logger"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.workunit_logger.rules.WorkunitLoggerCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback" + ], + "dependencies": ["pants.engine.streaming_workunit_handler"], + "dependents": ["pants.backend.experimental.tools.workunit_logger"], + "documentation": "A unique request type that is installed to trigger construction of our WorkunitsCallback.", + "is_union": false, + "module": "pants.backend.tools.workunit_logger.rules", + "name": "WorkunitLoggerCallbackFactoryRequest", + "provider": "pants.backend.experimental.tools.workunit_logger", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.tools.yamllint.rules"], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": "YamllintConfigFiles(snapshot: 'Snapshot', source_dir_to_config_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.tools.yamllint.rules.partition_inputs"] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": "YamllintConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFilesRequest", + "provider": "pants.backend.tools.yamllint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.tools.yamllint.rules.partition_inputs"] + }, + "pants.backend.tools.yamllint.rules.YamllintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintRequest", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.subsystem.Yamllint": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.backend.tools.yamllint.rules.run_yamllint" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.subsystem", + "name": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": ["construct_scope_yamllint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.base.specs.RawSpecs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Convert the specs into matching targets and files.\n\nUnlike `Specs`, this does not consider include vs. ignore specs. It simply matches all relevant\ntargets/files.\n\nWhen you want to operate on what the user specified, use `Specs`. Otherwise, you can use\neither `Specs` or `RawSpecs` in rules, e.g. to find what targets exist in a directory.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.javascript.package_json.find_owning_package", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.base.specs.RawSpecsWithoutFileOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The subset of `RawSpecs` that do not use the `Owners` rule to match targets.\n\nThis exists to work around a cycle in the rule graph. Usually, consumers should use the simpler\n`Get(Addresses, RawSpecs)`, which will result in this rule being used.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecsWithoutFileOwners", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.resolve_all_generator_target_requests" + ] + }, + "pants.base.specs.Specs": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "The specs provided by the user for what to run on.\n\nThe `ignores` will filter out all relevant `includes`.\n\nIf your rule does not need to consider includes vs. ignores, e.g. to find all targets in a\ndirectory, you can directly use `RawSpecs`.", + "is_union": false, + "module": "pants.base.specs", + "name": "Specs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.bsp.context.BSPContext": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependencies": ["pants.engine.internals.session"], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "is_union": false, + "module": "pants.bsp.context", + "name": "BSPContext", + "provider": "pants.core", + "returned_by_rules": ["pants.bsp.rules.bsp_context"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.goal.BSPGoal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.bsp.goal", + "name": "BSPGoal", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_experimental_bsp"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.protocol.BSPHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "Union type for rules to register handlers for BSP methods.", + "is_union": true, + "module": "pants.bsp.protocol", + "name": "BSPHandlerMapping", + "provider": "pants.bsp.protocol", + "returned_by_rules": [], + "union_members": [ + "BuildTargetSourcesHandlerMapping", + "CompileRequestHandlerMapping", + "DependencyModulesHandlerMapping", + "DependencySourcesHandlerMapping", + "InitializeBuildHandlerMapping", + "JavacOptionsHandlerMapping", + "ResourcesRequestHandlerMapping", + "ScalaMainClassesHandlerMapping", + "ScalaTestClassesHandlerMapping", + "ScalacOptionsHandlerMapping", + "WorkspaceBuildTargetsHandlerMapping" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.base.BuildTargetIdentifier": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A unique identifier for a target, can use any URI-compatible encoding as long as it is unique\nwithin the workspace.\n\nClients should not infer metadata out of the URI structure such as the path or query parameters,\nuse BuildTarget instead.", + "is_union": false, + "module": "pants.bsp.spec.base", + "name": "BuildTargetIdentifier", + "provider": "pants.bsp.spec.base", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.spec.compile.CompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.compile", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "is_union": false, + "module": "pants.bsp.spec.compile", + "name": "CompileResult", + "provider": "pants.core", + "returned_by_rules": ["pants.bsp.util_rules.compile.bsp_compile_request"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.lifecycle.InitializeBuildResult": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.spec.lifecycle", "pants.engine.unions"], + "dependents": [], + "documentation": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "is_union": false, + "module": "pants.bsp.spec.lifecycle", + "name": "InitializeBuildResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.lifecycle.bsp_build_initialize" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.resources.ResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.resources", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "ResourcesResult(items: 'tuple[ResourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.resources", + "name": "ResourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencyModulesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencySourcesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.spec.targets"], + "dependents": [], + "documentation": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencySourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.SourcesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.spec.targets"], + "dependents": [], + "documentation": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "SourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.WorkspaceBuildTargetsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "WorkspaceBuildTargetsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.compile.CompileOneBSPTargetRequest": { + "consumed_by_rules": ["pants.bsp.util_rules.compile.compile_bsp_target"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "CompileOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal', origin_id: 'str | None' = None, arguments: 'tuple[str, ...] | None' = ())", + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.compile.bsp_compile_request"] + }, + "pants.bsp.util_rules.compile.CompileRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.BSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Union exposed by language backends to inform BSP core rules of capabilities to advertise to\nclients.", + "is_union": true, + "module": "pants.bsp.util_rules.lifecycle", + "name": "BSPLanguageSupport", + "provider": "pants.bsp.util_rules.lifecycle", + "returned_by_rules": [], + "union_members": ["JavaBSPLanguageSupport", "ScalaBSPLanguageSupport"], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.InitializeBuildHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.lifecycle", + "name": "InitializeBuildHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.resources.ResourcesForOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ResourcesForOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesForOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.resources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.resources.bsp_resources_request"] + }, + "pants.bsp.util_rules.resources.ResourcesRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetInternal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "dependencies": ["pants.bsp.spec.base"], + "dependents": ["pants.core"], + "documentation": "BSPBuildTargetInternal(name: 'str', specs: 'RawSpecs', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetInternal", + "provider": "pants.bsp.util_rules.targets, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetSourcesInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.bsp.util_rules.targets" + ], + "dependents": ["pants.core"], + "documentation": "Source files and roots for a BSP build target.\n\nIt is a separate class so that it is computed lazily only when called for by an RPC call.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetSourcesInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargets": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": ["pants.bsp.util_rules.targets", "pants.engine.fs"], + "dependents": ["pants.core"], + "documentation": "BSPBuildTargets(targets_mapping: 'FrozenDict[str, BSPBuildTargetInternal]')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide metadata for BSP build targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPBuildTargetsMetadataRequest", + "ScalaBSPBuildTargetsMetadataRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.core" + ], + "dependents": ["pants.core"], + "documentation": "Response type for a BSPBuildTargetsMetadataRequest.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to compile targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": ["JavaBSPCompileRequest", "ScalaBSPCompileRequest"], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.compile.compile_bsp_target"] + }, + "pants.bsp.util_rules.targets.BSPCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.bsp.util_rules.compile", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.resolve.key" + ], + "dependents": ["pants.core"], + "documentation": "Result of compilation of a target capable of target compilation.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "Hook to allow language backends to provide dependency modules.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": ["ScalaBSPDependencyModulesRequest"], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": ["pants.core"], + "documentation": "BSPDependencyModulesResult(modules: 'tuple[DependencyModule, ...]', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide resources for targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": ["JavaBSPResourcesRequest", "ScalaBSPResourcesRequest"], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.resources.resources_bsp_target"] + }, + "pants.bsp.util_rules.targets.BSPResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.bsp.util_rules.resources", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "Resources for a target.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BuildTargetSourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BuildTargetSourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencyModulesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencyModulesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencySourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencySourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GenerateOneBSPBuildTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.base.build_root", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "GenerateOneBSPBuildTargetResult(build_target: 'BuildTarget', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "MaterializeBuildTargetSourcesRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_build_target_sources"] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.base.build_root", "pants.bsp.util_rules.targets"], + "dependents": ["pants.core"], + "documentation": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_build_target_sources"] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ResolveOneDependencyModuleRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_dependency_modules"] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_dependency_modules"] + }, + "pants.bsp.util_rules.targets.WorkspaceBuildTargetsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "WorkspaceBuildTargetsHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets._ParseOneBSPMappingRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "_ParseOneBSPMappingRequest(name: 'str', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "_ParseOneBSPMappingRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ] + }, + "pants.build_graph.address.BuildFileAddressRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to find the BUILD file path for an address.", + "is_union": false, + "module": "pants.build_graph.address", + "name": "BuildFileAddressRequest", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.filedeps.file_deps", + "pants.engine.internals.graph.find_owners" + ] + }, + "pants.core.goals.check.Check": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "Check", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.check.check"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.check.CheckRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "A union for targets that should be checked.\n\nSubclass and install a member of this type to provide a checker.", + "is_union": true, + "module": "pants.core.goals.check", + "name": "CheckRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCheckRequest", + "JavacCheckRequest", + "KotlincCheckRequest", + "MyPyRequest", + "PytypeRequest", + "ScalacCheckRequest", + "TerraformCheckRequest" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.check.check"] + }, + "pants.core.goals.check.CheckResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResult", + "provider": "pants.backend.experimental.python.typecheck.pytype, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.core.goals.check.CheckResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.resolve.key" + ], + "dependents": ["pants.core"], + "documentation": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResults", + "provider": "pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.typecheck.pytype, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.terraform.goals.check.terraform_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.check.check"] + }, + "pants.core.goals.check.CheckSubsystem": { + "consumed_by_rules": ["pants.core.goals.check.check"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_check"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.Deploy": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.terraform", + "pants.engine.console", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": "Deploy(exit_code: 'int')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "Deploy", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.deploy.run_deploy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.DeployFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm", + "pants.backend.experimental.terraform" + ], + "documentation": "The FieldSet type for the `deploy` goal.\n\nUnion members may list any fields required to fulfill the instantiation of the `DeployProcess`\nresult of the deploy rule.", + "is_union": true, + "module": "pants.core.goals.deploy", + "name": "DeployFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployHelmDeploymentFieldSet", + "DeployTerraformFieldSet" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.deploy.run_deploy"] + }, + "pants.core.goals.deploy.DeployProcess": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "A process that when executed will have the side effect of deploying a target.\n\nTo provide with the ability to deploy a given target, create a custom `DeployFieldSet` for\nthat given target and implement a rule that returns `DeployProcess` for that custom field set:\n\nExample:\n\n @dataclass(frozen=True)\n class MyDeploymentFieldSet(DeployFieldSet):\n pass\n\n @rule\n async def my_deployment_process(field_set: MyDeploymentFieldSet) -> DeployProcess:\n # Create the underlying process that executes the deployment\n process = Process(...)\n return DeployProcess(\n name=\"my_deployment\",\n process=InteractiveProcess.from_process(process)\n )\n\n def rules():\n return [\n *collect_rules(),\n UnionRule(DeployFieldSet, MyDeploymentFieldSet)\n ]\n\nUse the `publish_dependencies` field to provide with a list of targets that produce packages\nwhich need to be externally published before the deployment process is executed.", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeployProcess", + "provider": "pants.backend.experimental.helm, pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.terraform.goals.deploy.run_terraform_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.deploy.run_deploy"] + }, + "pants.core.goals.deploy.DeploySubsystem": { + "consumed_by_rules": ["pants.core.goals.deploy.run_deploy"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeploySubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_experimental_deploy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy._PublishProcessesForTargetRequest": { + "consumed_by_rules": [ + "pants.core.goals.deploy.publish_process_for_target" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "_PublishProcessesForTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "_PublishProcessesForTargetRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.deploy.run_deploy"] + }, + "pants.core.goals.export.Export": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.base.build_root", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "Export", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.export.export"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.export.ExportRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A union for exportable data provided by a backend.\n\nSubclass and install a member of this type to export data.", + "is_union": true, + "module": "pants.core.goals.export", + "name": "ExportRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["ExportVenvsRequest"], + "union_type": null, + "used_in_rules": ["pants.core.goals.export.export"] + }, + "pants.core.goals.export.ExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = (), resolve: 'str | None' = None)", + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResult", + "provider": "pants.backend.python", + "returned_by_rules": ["pants.backend.python.goals.export.do_export"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.core.goals.export.ExportResults": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.export.export"] + }, + "pants.core.goals.export.ExportSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.export.export" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_export"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.AbstractFixRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fix", + "name": "AbstractFixRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "OpenApiFormatRequest", + "PreambleRequest", + "PyUpgradeRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "RuffFormatRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.Batch": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.core"], + "documentation": "Batch(tool_name: 'str', elements: 'tuple[PartitionElementT, ...]', partition_metadata: 'PartitionMetadataT', snapshot: 'Snapshot')", + "is_union": true, + "module": "pants.core.goals.fix", + "name": "Batch", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.fix.Fix": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "Fix", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.fix.fix"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.FixResult": { + "consumed_by_rules": [ + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": ["pants.core"], + "documentation": "FixResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', tool_name: 'str')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixResult", + "provider": "pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.experimental.go, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.openapi.lint.openapi_format, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.python.lint.autoflake, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.isort, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble, pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.fix.fix_batch"] + }, + "pants.core.goals.fix.FixSubsystem": { + "consumed_by_rules": ["pants.core.goals.fix.fix"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_fix"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix._FixBatchRequest": { + "consumed_by_rules": ["pants.core.goals.fix.fix_batch"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request to serially fix all the elements in the given batch.", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.fix.fix", "pants.core.goals.fmt.fmt"] + }, + "pants.core.goals.fix._FixBatchResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "dependents": ["pants.core"], + "documentation": "_FixBatchResult(results: 'tuple[FixResult, ...]')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchResult", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.fix.fix_batch"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.fix.fix", "pants.core.goals.fmt.fmt"] + }, + "pants.core.goals.fmt.AbstractFmtRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fmt", + "name": "AbstractFmtRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "OpenApiFormatRequest", + "PreambleRequest", + "RuffFormatRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.Fmt": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "Fmt", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.fmt.fmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtSubsystem": { + "consumed_by_rules": ["pants.core.goals.fmt.fmt"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_fmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "A union base for generating ecosystem-specific lockfiles.\n\nEach language ecosystem should set up a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile` and `GenerateJVMLockfile`, and register a union rule. They should\nalso set up a simple rule that goes from that class -> `WrappedGenerateLockfile`.\n\nSubclasses will usually want to add additional properties, such as what requirements to\ninstall and Python interpreter constraints.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["GenerateJvmLockfile", "GeneratePythonLockfile"], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": ["pants.core"], + "documentation": "The result of generating a lockfile for a particular resolve.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_generate_lockfiles"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateToolLockfileSentinel": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "Tools use this as an entry point to say how to generate their tool lockfile.\n\nEach language ecosystem should set up a union member of `GenerateLockfile`, like\n`GeneratePythonLockfile`, as explained in that class's docstring.\n\nEach language ecosystem should also subclass `GenerateToolLockfileSentinel`, e.g.\n`GeneratePythonToolLockfileSentinel`. The subclass does not need to do anything - it is only used to know which language ecosystems tools correspond to.\n\nThen, each tool should subclass their language ecosystem's subclass of `GenerateToolLockfileSentinel` and set up a rule that goes from the\nsubclass -> the language's lockfile request, e.g. BlackLockfileSentinel ->\nGeneratePythonLockfile. Register `UnionRule(GenerateToolLockfileSentinel, MySubclass)`.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateToolLockfileSentinel", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoogleJavaFormatToolLockfileSentinel", + "GrpcJavaToolLockfileSentinel", + "JarJarGeneratorLockfileSentinel", + "JarToolGenerateLockfileSentinel", + "JavaParserToolLockfileSentinel", + "JunitToolLockfileSentinel", + "KotlinParserToolLockfileSentinel", + "KtlintToolLockfileSentinel", + "ScalaParserToolLockfileSentinel", + "ScalafmtToolLockfileSentinel", + "ScalapbcToolLockfileSentinel", + "ScalatestToolLockfileSentinel", + "StripJarToolLockfileSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNamesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "A hook for a language ecosystem to declare which resolves it has defined.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> KnownUserResolveNames, usually by simply reading the\n`resolves` option from the relevant subsystem.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "KnownJVMUserResolveNamesRequest", + "KnownPythonUserResolveNamesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.RequestedUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "The user resolves requested for a particular language ecosystem.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> UserGenerateLockfiles.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "RequestedUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RequestedJVMUserResolveNames", + "RequestedPythonUserResolveNames" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.UserGenerateLockfiles": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.core"], + "documentation": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.WrappedGenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_snapshots.EnvironmentAwareGenerateSnapshotsRequest": { + "consumed_by_rules": [ + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request class to request a `GenerateSnapshotsResult` in an environment-aware fashion.", + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "EnvironmentAwareGenerateSnapshotsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_snapshots.generate_snapshots" + ] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshots": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshots", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_snapshots.generate_snapshots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshotsFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "The fields necessary to generate snapshots from a target.", + "is_union": true, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshotsFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["HelmUnitTestFieldSet"], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots" + ] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshotsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.engine.environment" + ], + "dependents": ["pants.core"], + "documentation": "GenerateSnapshotsResult(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshotsResult", + "provider": "pants.backend.experimental.helm, pants.core", + "returned_by_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "pants.core.goals.generate_snapshots.generate_snapshots" + ] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshotsSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshotsSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_generate_snapshots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.AbstractLintRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": "Base class for plugin types wanting to be run as part of `lint`.\n\nPlugins should define a new type which subclasses either `LintTargetsRequest` (to lint targets)\nor `LintFilesRequest` (to lint arbitrary files), and set the appropriate class variables.\nE.g.\n class DryCleaningRequest(LintTargetsRequest):\n name = DryCleaningSubsystem.options_scope\n field_set_type = DryCleaningFieldSet\n\nThen, define 2 `@rule`s:\n 1. A rule which takes an instance of your request type's `PartitionRequest` class property,\n and returns a `Partitions` instance.\n E.g.\n @rule\n async def partition(\n request: DryCleaningRequest.PartitionRequest[DryCleaningFieldSet]\n # or `request: DryCleaningRequest.PartitionRequest` if file linter\n subsystem: DryCleaningSubsystem,\n ) -> Partitions[DryCleaningFieldSet, Any]:\n if subsystem.skip:\n return Partitions()\n\n # One possible implementation\n return Partitions.single_partition(request.field_sets)\n\n 2. A rule which takes an instance of your request type's `Batch` class property, and\n returns a `LintResult instance.\n E.g.\n @rule\n async def dry_clean(\n request: DryCleaningRequest.Batch,\n ) -> LintResult:\n ...\n\nLastly, register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules()\n ]", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "AbstractLintRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BanditRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BufLintRequest", + "BuildifierRequest", + "DocformatterRequest", + "Flake8Request", + "GofmtRequest", + "GoogleJavaFormatRequest", + "HadolintRequest", + "HelmLintRequest", + "IsortRequest", + "KtlintRequest", + "OpenApiFormatRequest", + "PreambleRequest", + "PyUpgradeRequest", + "PydocstyleRequest", + "PylintRequest", + "RegexLintRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "RuffFormatRequest", + "RuffLintRequest", + "ScalafmtRequest", + "SemgrepLintRequest", + "ShellcheckRequest", + "ShfmtRequest", + "SpectralRequest", + "TffmtRequest", + "YamllintRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.Batch": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.run_flake8" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.flake8"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "Batch", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.lint.Lint": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "Lint", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.lint.lint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', linter_name: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), _render_message: 'bool' = True)", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.helm, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.tools.semgrep, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.shell.lint.shellcheck, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.lint.lint"] + }, + "pants.core.goals.lint.LintSubsystem": { + "consumed_by_rules": ["pants.core.goals.lint.lint"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_lint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.PartitionRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFormatRequest" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python.lint.ruff"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "PartitionRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.package.AllPackageableTargets": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "AllPackageableTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.find_all_packageable_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.BuiltPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "is_union": false, + "module": "pants.core.goals.package", + "name": "BuiltPackage", + "provider": "pants.backend.awslambda.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.google_cloud_function.python, pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.core.goals.package.environment_aware_package", + "pants.core.target_types.package_archive_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.core.goals.package.EnvironmentAwarePackageRequest": { + "consumed_by_rules": [ + "pants.core.goals.package.environment_aware_package" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request class to request a `BuiltPackage` in an environment-aware fashion.", + "is_union": false, + "module": "pants.core.goals.package", + "name": "EnvironmentAwarePackageRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.package.Package": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "Package", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.package.package_asset"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.PackageFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "documentation": "The fields necessary to build an asset from a target.", + "is_union": true, + "module": "pants.core.goals.package", + "name": "PackageFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ArchiveFieldSet", + "DeployJarFieldSet", + "DockerPackageFieldSet", + "GoBinaryFieldSet", + "HelmPackageFieldSet", + "PackageWarFileFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonAwsLambdaFieldSet", + "PythonAwsLambdaLayerFieldSet", + "PythonDistributionFieldSet", + "PythonGoogleCloudFunctionFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package" + ] + }, + "pants.core.goals.package.PackageSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "PackageSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_package"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.Publish": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "Publish", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.publish.run_publish"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "FieldSet for PublishRequest.\n\nUnion members may list any fields required to fulfill the instantiation of the\n`PublishProcesses` result of the publish rule.", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "HelmPublishFieldSet", + "PublishDockerImageFieldSet", + "PublishPythonPackageFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishProcesses": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcesses", + "provider": "pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.core", + "returned_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.python.goals.publish.twine_upload", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.package_for_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishProcessesRequest": { + "consumed_by_rules": ["pants.core.goals.publish.package_for_publish"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Internal request taking all field sets for a target and turning it into a `PublishProcesses`\ncollection (via registered publish plugins).", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcessesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "Implement a union member subclass of this union class along with a PublishFieldSet subclass\nthat appoints that member subclass in order to receive publish requests for targets compatible\nwith the field set.\n\nThe `packages` hold all artifacts produced for a given target to be published.\n\nExample:\n\n PublishToMyRepoRequest(PublishRequest):\n pass\n\n PublishToMyRepoFieldSet(PublishFieldSet):\n publish_request_type = PublishToMyRepoRequest\n\n # Standard FieldSet semantics from here on:\n required_fields = (MyRepositories,)\n ...", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PublishDockerImageRequest", + "PublishHelmChartRequest", + "PublishPythonPackageRequest" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.publish.package_for_publish"] + }, + "pants.core.goals.publish.PublishSubsystem": { + "consumed_by_rules": ["pants.core.goals.publish.run_publish"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_publish"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.Repl": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "Repl", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.repl.run_repl"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.ReplImplementation": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "A REPL implementation for a specific language or runtime.\n\nProxies from the top-level `repl` goal to an actual implementation.", + "is_union": true, + "module": "pants.core.goals.repl", + "name": "ReplImplementation", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["IPythonRepl", "PythonRepl", "ScalaRepl"], + "union_type": null, + "used_in_rules": ["pants.core.goals.repl.run_repl"] + }, + "pants.core.goals.repl.ReplRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.core"], + "documentation": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplRequest", + "provider": "pants.backend.experimental.scala, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.repl.run_repl"] + }, + "pants.core.goals.repl.ReplSubsystem": { + "consumed_by_rules": ["pants.core.goals.repl.run_repl"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_repl"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.Run": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "Run", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.run.run"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.RunDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": ["pants.core"], + "documentation": "Like RunRequest, but launches the process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunDebugAdapterRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DeployJarFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DockerRunFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_GoBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JavaFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JvmArtifactFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_KotlinFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PexBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PyOxidizerFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PythonRequirementFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_RunShellCommand", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_ScalaFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_SystemBinaryFieldSet" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.run.run"] + }, + "pants.core.goals.run.RunFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary from a target to run a program/script.", + "is_union": true, + "module": "pants.core.goals.run", + "name": "RunFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployJarFieldSet", + "DockerRunFieldSet", + "GoBinaryFieldSet", + "JavaFieldSet", + "JvmArtifactFieldSet", + "KotlinFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonRequirementFieldSet", + "PythonSourceFieldSet", + "RunShellCommand", + "ScalaFieldSet", + "SystemBinaryFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet", + "pants.core.goals.run.run", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunInSandboxRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "A run request that launches the process in the sandbox for use as part of a build rule.\n\nThe arguments and environment should only use values relative to the build root (or prefixed\nwith `{chroot}`), or refer to binaries that were fetched with `BinaryPathRequest`.\n\nPresently, implementors can opt to use the existing as not guaranteeing hermeticity, which will\ninternally mark the rule as uncacheable. In such a case, non-safe APIs can be used, however,\nthis behavior can result in poorer performance, and only exists as a stop-gap while\nimplementors work to make sure their `RunRequest`-generating rules can be used in a hermetic\ncontext, or writing new custom rules. (See the Plugin Upgrade Guide for details).", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunInSandboxRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported_RunShellCommand", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.package.deploy_jar", + "pants.jvm.target_types" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.core" + ], + "documentation": "RunRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet", + "pants.core.goals.run.run", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet" + ] + }, + "pants.core.goals.run.RunSubsystem": { + "consumed_by_rules": ["pants.core.goals.run.run"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_run"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.AllOwnedSources": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "All files in the project already owned by targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "AllOwnedSources", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.determine_all_owned_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.DisjointSourcePutativeTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": ["pants.core"], + "documentation": "Putative target whose sources don't overlap with those of any existing targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "DisjointSourcePutativeTarget", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.EditBuildFilesRequest": { + "consumed_by_rules": ["pants.core.goals.tailor.edit_build_files"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "EditBuildFilesRequest(putative_targets: 'PutativeTargets')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditBuildFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.EditedBuildFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": ["pants.core"], + "documentation": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditedBuildFiles", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.tailor.edit_build_files"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.PutativeTarget": { + "consumed_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A potential target to add, detected by various heuristics.\n\nThis class uses the term \"target\" in the loose sense. It can also represent an invocation of a\ntarget-generating macro.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTarget", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.PutativeTargets": { + "consumed_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": ["builtins", "pants.engine.fs", "pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.PutativeTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "PutativeTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": true, + "module": "pants.core.goals.tailor", + "name": "PutativeTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PutativeDockerTargetsRequest", + "PutativeGoTargetsRequest", + "PutativeHelmTargetsRequest", + "PutativeJavaTargetsRequest", + "PutativeKotlinTargetsRequest", + "PutativeOpenApiTargetsRequest", + "PutativeProtobufTargetsRequest", + "PutativePythonTargetsRequest", + "PutativeScalaTargetsRequest", + "PutativeShellTargetsRequest", + "PutativeTerraformTargetsRequest", + "PutativeThriftTargetsRequest" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.TailorGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorGoal", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.tailor.tailor"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.TailorSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.tailor" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_tailor"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.UniquelyNamedPutativeTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependents": ["pants.core"], + "documentation": "Putative targets that have no name conflicts with existing targets (or each other).", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "UniquelyNamedPutativeTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.test.Batch": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "Batch", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.test.BuildPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "BuildPackageDependenciesRequest(field: 'RuntimePackageDependenciesField')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuildPackageDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.BuiltPackageDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependents": ["pants.backend.python", "pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuiltPackageDependencies", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.CoverageDataCollection": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go", "pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "CoverageDataCollection", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCoverageDataCollection", + "PytestCoverageDataCollection" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.CoverageReports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": ["pants.core"], + "documentation": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "CoverageReports", + "provider": "pants.backend.experimental.go, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.PartitionRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_Shunit2TestRequest" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "PartitionRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.test.Test": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.console", + "pants.engine.desktop", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.session", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "Test", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.test.run_tests"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.core"], + "documentation": "Like TestDebugRequest, but launches the test process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_GoTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_HelmUnitTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_JunitTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ScalatestTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ShellTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_Shunit2TestRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.TestDebugRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "TestDebugRequest(process: 'InteractiveProcess')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_GoTestRequest", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_HelmUnitTestRequest", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_ShellTestRequest", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.TestExtraEnv": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "TestExtraEnv(env: 'EnvironmentVars')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestExtraEnv", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.test.get_filtered_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary to run tests on a target.", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestFieldSet", + "HelmUnitTestFieldSet", + "JunitTestFieldSet", + "PythonTestFieldSet", + "ScalatestTestFieldSet", + "Shunit2FieldSet", + "TestShellCommandFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "Base class for plugin types wanting to be run as part of `test`.\n\nPlugins should define a new type which subclasses this type, and set the\nappropriate class variables.\nE.g.\n class DryCleaningRequest(TestRequest):\n tool_subsystem = DryCleaningSubsystem\n field_set_type = DryCleaningFieldSet\n\nThen register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules(),\n ]", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestRequest", + "HelmUnitTestRequest", + "JunitTestRequest", + "PyTestRequest", + "ScalatestTestRequest", + "ShellTestRequest", + "Shunit2TestRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "TestResult(exit_code: 'int | None', stdout_bytes: 'bytes', stdout_digest: 'FileDigest', stderr_bytes: 'bytes', stderr_digest: 'FileDigest', addresses: 'tuple[Address, ...]', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', partition_description: 'str | None' = None, coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None, log_extra_output: 'bool' = False, process_results: 'Tuple[FallibleProcessResult, ...]' = , output_simplifier: 'Simplifier' = Simplifier(strip_chroot_path=True, strip_formatting=False))", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestResult", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.jvm.test.junit.run_junit_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.TestSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_test", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.test.run_tests", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_test"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithBlackRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithBlackRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithYapfRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithYapfRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedFieldsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedFieldsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedTargetsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RewrittenBuildFile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": ["pants.core"], + "documentation": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.RewrittenBuildFileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "RewrittenBuildFileRequest(path: 'str', lines: 'tuple[str, ...]', colors_enabled: 'bool')", + "is_union": true, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFileRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "FormatWithBlackRequest", + "FormatWithYapfRequest", + "RenameDeprecatedFieldsRequest", + "RenameDeprecatedTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_update_build_files"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.debug_adapter.DebugAdapterSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.debug_adapter", + "name": "DebugAdapterSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_debug_adapter"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_python_bootstrap"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrap": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "PythonBootstrap(interpreter_names: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrap", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrapSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_python_bootstrap", + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrapSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python_bootstrap"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap._ExpandInterpreterSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "_ExpandInterpreterSearchPathsRequest(interpreter_search_paths: 'Collection[str]', env_tgt: 'EnvironmentTarget')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_ExpandInterpreterSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.subsystems.python_bootstrap._SearchPaths": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": "_SearchPaths(paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_SearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.target_types.AllAssetTargets": { + "consumed_by_rules": ["pants.core.target_types.map_assets_by_path"], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.core"], + "documentation": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargets", + "provider": "pants.core", + "returned_by_rules": ["pants.core.target_types.find_all_assets"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.target_types.AllAssetTargetsByPath": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm", "pants.backend.python"], + "documentation": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsByPath", + "provider": "pants.core", + "returned_by_rules": ["pants.core.target_types.map_assets_by_path"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ] + }, + "pants.core.target_types.ArchiveFieldSet": { + "consumed_by_rules": ["pants.core.target_types.package_archive_target"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ArchiveFieldSet(address: 'Address', packages: 'ArchivePackagesField', files: 'ArchiveFilesField', format_field: 'ArchiveFormatField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.core.target_types", + "name": "ArchiveFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateFileSourceRequest": { + "consumed_by_rules": ["pants.core.target_types.hydrate_file_source"], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateFileSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateResourceSourceRequest": { + "consumed_by_rules": ["pants.core.target_types.hydrate_resource_source"], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateResourceSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.RelocateFilesViaCodegenRequest": { + "consumed_by_rules": ["pants.core.target_types.relocate_files"], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "RelocateFilesViaCodegenRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries.GunzipBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GunzipBinary(python_binary: 'PythonBuildStandaloneBinary')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "GunzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.util_rules.archive.maybe_extract_archive"] + }, + "pants.core.util_rules.adhoc_binaries.PythonBuildStandaloneBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "A Python interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nThis interpreter is provided by Python Build Standalone https://gregoryszorc.com/docs/python-build-standalone/main/,\nwhich has a few caveats. Namely it doesn't play nicely with third-party sdists. Meaning Pants'\nscripts being run by Python Build Standalone should avoid third-party sdists.", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries._DownloadPythonBuildStandaloneBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_DownloadPythonBuildStandaloneBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_binaries._PythonBuildStandaloneBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.platform" + ], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "AdhocProcessRequest(description: 'str', address: 'Address', working_directory: 'str', root_output_directory: 'str', argv: 'tuple[str, ...]', timeout: 'int | None', input_digest: 'Digest', immutable_input_digests: 'FrozenDict[str, Digest] | None', append_only_caches: 'FrozenDict[str, str] | None', output_files: 'tuple[str, ...]', output_directories: 'tuple[str, ...]', fetch_env_vars: 'tuple[str, ...]', supplied_env_var_values: 'FrozenDict[str, str] | None', log_on_process_errors: 'FrozenDict[int, str] | None', log_output: 'bool', capture_stdout_file: 'str | None', capture_stderr_file: 'str | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "AdhocProcessResult(process_result: 'ProcessResult', adjusted_digest: 'Digest')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessResult", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.core.util_rules.adhoc_process_support.ExtraSandboxContents": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "ExtraSandboxContents(digest: 'Digest', path: 'str | None', immutable_input_digests: 'Mapping[str, Digest]', append_only_caches: 'Mapping[str, str]', extra_env: 'Mapping[str, str]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ExtraSandboxContents", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.MergeExtraSandboxContents": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "MergeExtraSandboxContents(additions: 'tuple[ExtraSandboxContents, ...]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "MergeExtraSandboxContents", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolveExecutionDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "ResolveExecutionDependenciesRequest(address: 'Address', execution_dependencies: 'tuple[str, ...] | None', runnable_dependencies: 'tuple[str, ...] | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolveExecutionDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolvedExecutionDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "ResolvedExecutionDependencies(digest: 'Digest', runnable_dependencies: 'RunnableDependencies | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.archive.CreateArchive": { + "consumed_by_rules": ["pants.core.util_rules.archive.create_archive"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A request to create an archive.\n\nAll files in the input snapshot will be included in the resulting archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "CreateArchive", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.target_types.package_archive_target"] + }, + "pants.core.util_rules.archive.ExtractedArchive": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": ["pants.core"], + "documentation": "The result of extracting an archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "ExtractedArchive", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.core.util_rules.archive.MaybeExtractArchiveRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": ["pants.core"], + "documentation": "A request to extract a single archive file (otherwise returns the input digest).\n\n:param digest: The digest of the archive to maybe extract. If the archive contains a single file\n which matches a known suffix, the `ExtractedArchive` will contain the extracted digest.\n Otherwise the `ExtractedArchive` will contain this digest.\n:param use_suffix: If provided, extracts the single file archive as if it had this suffix.\n Useful in situations where the file is archived then renamed.\n (E.g. A Python `.whl` is a renamed `.zip`, so the client should provide `\".zip\"`)", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "MaybeExtractArchiveRequest", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.asdf.AsdfToolPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "AsdfToolPathsRequest(env_tgt: 'EnvironmentTarget', tool_name: 'str', tool_description: 'str', resolve_standard: 'bool', resolve_local: 'bool', paths_option_name: 'str', bin_relpath: 'str' = 'bin')", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.asdf.AsdfToolPathsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.base.build_root", "pants.engine.env_vars"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": "AsdfToolPathsResult(tool_name: 'str', standard_tool_paths: 'tuple[str, ...]' = (), local_tool_paths: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.config_files.ConfigFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.engine.fs"], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Config files used by a tool run by Pants.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.config_files.ConfigFilesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Resolve the specified config files if given, else look for candidate config files if\ndiscovery is enabled.\n\nFiles in `check_existence` only need to exist, whereas files in `check_content` both must exist\nand contain the bytes snippet in the file.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.distdir.DistDir": { + "consumed_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.lint.lint", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests" + ], + "dependencies": ["pants.base.build_root"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "The directory to which we write distributable files.", + "is_union": false, + "module": "pants.core.util_rules.distdir", + "name": "DistDir", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.distdir.get_distdir"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.environments.EnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "EnvironmentNameRequest(raw_value: 'str', description_of_origin: 'str')", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "EnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "pants.core.goals.lint.lint", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run" + ] + }, + "pants.core.util_rules.environments.OptionField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "OptionField", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.core.util_rules.environments.SingleEnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Asserts that all of the given environment strings resolve to the same EnvironmentName.", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "SingleEnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.util_rules.external_tool.DownloadedExternalTool": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "DownloadedExternalTool", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.external_tool.ExternalToolRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ExternalToolRequest(download_file_request: 'DownloadFile', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "ExternalToolRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.partitions.Partitions": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.kotlin", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": ["pants.core"], + "documentation": "A collection of (, ) pairs.\n\nWhen implementing a plugin, one of your rules will return this type, taking in a\n`PartitionRequest` specific to your plugin.\n\nThe return likely will fit into one of:\n - Returning empty partitions: E.g. if your tool is being skipped.\n - Returning one partition. The partition may contain all of the inputs\n (as will likely be the case for target-based plugins) or a subset (which will likely be the\n case for targetless plugins).\n - Returning >1 partition. This might be the case if you can't run\n the tool on all the inputs at once. E.g. having to run a Python tool on XYZ with Py3,\n and files ABC with Py2.", + "is_union": false, + "module": "pants.core.util_rules.partitions", + "name": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations, pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.openapi.lint.openapi_format, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.experimental.tools.semgrep, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python, pants.backend.python.lint.autoflake, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell, pants.backend.shell.lint.shellcheck, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble", + "returned_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BlackRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BuildifierRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameFieldsInFilesRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameTargetsInFilesRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_YapfRequest", + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.project_info.regex_lint.partition_inputs", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.semgrep.rules.partition", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_GoTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_HelmUnitTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_JunitTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ScalatestTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ShellTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_Shunit2TestRequest", + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_HadolintRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_PydocstyleRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_RuffLintRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_ShellcheckRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_SpectralRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.util_rules.search_paths.ValidateSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.search_paths.validate_search_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ValidateSearchPathsRequest(env_tgt: 'EnvironmentTarget', search_paths: 'tuple[str, ...]', option_origin: 'str', environment_key: 'str', is_default: 'bool', local_only: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "ValidateSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.search_paths.ValidatedSearchPaths": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": "Search paths that are valid for the current target environment.", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "ValidatedSearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.search_paths.validate_search_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.search_paths.VersionManagerSearchPaths": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "VersionManagerSearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.search_paths.VersionManagerSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "VersionManagerSearchPathsRequest(env_tgt: 'EnvironmentTarget', root_dir: 'str | None', tool_path: 'str', option: 'str', version_files: 'tuple[str, ...]' = (), local_token: 'str | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "VersionManagerSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.source_files.SourceFiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "dependencies": ["builtins", "pants.backend.experimental.go"], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A merged snapshot of the `sources` fields of multiple targets.", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.source_files.determine_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.source_files.SourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.core.util_rules.source_files.determine_source_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala", "pants.core"], + "documentation": "SourceFilesRequest(sources_fields: Iterable[pants.engine.target.SourcesField], *, for_sources_types: Iterable[Type[pants.engine.target.SourcesField]] = (,), enable_codegen: bool = False)", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "StrippedFileName(value: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileName", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileNameRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "StrippedFileNameRequest(file_path: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFileNames": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFileNames", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironment": { + "consumed_by_rules": ["construct_env_aware_scope_subprocess_environment"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironment", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_subprocess_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironmentVars": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironmentVars", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.BashBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The `bash` binary.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.get_bash"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.cgo_binaries", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "BinaryPath(path: 'str', fingerprint: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPathRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request to find a binary of a given name.\n\nIf `check_file_entries` is `True` a BinaryPathRequest will consider any entries in the\n`search_path` that are file paths in addition to traditional directory paths.\n\nIf a `test` is specified all binaries that are found will be executed with the test args and\nonly those binaries whose test executions exit with return code 0 will be retained.\nAdditionally, if test execution includes stdout content, that will be used to fingerprint the\nbinary path so that upgrades and downgrades can be detected. A reasonable test for many programs\nmight be `BinaryPathTest(args=[\"--version\"])` since it will both ensure the program runs and\nalso produce stdout text that changes upon upgrade or downgrade of the binary at the discovered\npath.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPathRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPaths": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShims": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell" + ], + "documentation": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `immutable_input_digests`\nprovided to the `Process`, and `path_component` included in its `PATH` environment variable.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShims", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShimsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request to create shims for one or more system binaries.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShimsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.CatBinary": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CatBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_cat"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ChmodBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ChmodBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_chmod"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.CpBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CpBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_cp"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.DiffBinary": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format" + ], + "dependencies": [], + "dependents": ["pants.backend.codegen.protobuf.lint.buf"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_diff"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.adhoc", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_system_binaries"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.GitBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GitBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_git"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.LnBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "LnBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_ln"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MaybeGitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "pants.vcs.git.get_git_worktree" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MaybeGitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git", + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MkdirBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MkdirBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_mkdir"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MktempBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MktempBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mktemp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MvBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MvBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_mv"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.OpenBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "OpenBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_open"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinary": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.SystemBinariesSubsystem": { + "consumed_by_rules": ["construct_env_aware_scope_system_binaries"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "SystemBinariesSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_system_binaries"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.TarBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": ["pants.engine.platform"], + "dependents": ["pants.core"], + "documentation": "TarBinary(path: 'str', fingerprint: 'str', platform: 'Platform')", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_tar"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TouchBinary": { + "consumed_by_rules": ["pants.jvm.resources.assemble_resources_jar"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TouchBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_touch"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.UnzipBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.run.create_run_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_unzip"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.util_rules.archive.maybe_extract_archive"] + }, + "pants.core.util_rules.system_binaries.ZipBinary": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_zip"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.util_rules.archive.create_archive"] + }, + "pants.core.util_rules.wrap_source.GenerateWrapSourceSourcesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.wrap_source", + "name": "GenerateWrapSourceSourcesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.engine.addresses.Addresses": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.filter_targets.filter_targets", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.engine.internals.graph.coarsened_targets_request", + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.build_graph.address", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.addresses", + "name": "Addresses", + "provider": "pants.backend.experimental.go, pants.engine.addresses", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.find_code_quality_tool", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.addresses.UnparsedAddressInputs": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go", "pants.core"], + "documentation": "Raw addresses that have not been parsed yet.\n\nYou can convert these into fully normalized `Addresses` and `Targets` like this:\n\n await Get(Addresses, UnparsedAddressInputs([\"//:tgt1\", \"//:tgt2\"], owning_address=None)\n await Get(Targets, UnparsedAddressInputs([...], owning_address=Address(\"original\"))\n\nThis is intended for contexts where the user specifies addresses outside of the `dependencies`\nfield, such as through an option or a special field on a target that is not normal\n`dependencies`. You should not use this to resolve the `dependencies` field; use\n`await Get(Addresses, DependenciesRequest)` for that.\n\nIf the addresses are coming from a target's fields, set `owning_address` so that relative\nreferences like `:sibling` work properly.\n\nUnlike the `dependencies` field, this type does not work with `!` and `!!` ignores.\n\nSet `description_of_origin` to a value like \"CLI arguments\" or \"the `dependencies` field\nfrom {tgt.address}\". It is used for better error messages.", + "is_union": false, + "module": "pants.engine.addresses", + "name": "UnparsedAddressInputs", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ] + }, + "pants.engine.desktop.OpenFilesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "OpenFilesRequest(files: Iterable[pathlib.PurePath], *, error_if_open_not_found: bool = True)", + "is_union": false, + "module": "pants.engine.desktop", + "name": "OpenFilesRequest", + "provider": "pants.engine.desktop", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.engine.env_vars.EnvironmentVarsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Requests a subset of the variables set in the environment.\n\nRequesting only the relevant subset of the environment reduces invalidation caused by unrelated\nchanges.", + "is_union": false, + "module": "pants.engine.env_vars", + "name": "EnvironmentVarsRequest", + "provider": "pants.engine.env_vars", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_env_aware_scope_apache_thrift", + "construct_env_aware_scope_docker", + "construct_env_aware_scope_go_generate", + "construct_env_aware_scope_golang", + "construct_env_aware_scope_jvm", + "construct_env_aware_scope_nodejs", + "construct_env_aware_scope_pex", + "construct_env_aware_scope_python_bootstrap", + "construct_env_aware_scope_python_native_code", + "construct_env_aware_scope_shell_setup", + "construct_env_aware_scope_subprocess_environment", + "construct_env_aware_scope_system_binaries", + "construct_env_aware_scope_test", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.core.goals.export.export", + "pants.core.goals.test.get_filtered_environment", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.environment.EnvironmentName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The normalized name for an environment, from `[environments-preview].names`, after applying\nthings like the __local__ matcher.\n\nNote that we have this type, rather than only `EnvironmentTarget`, for a more efficient rule\ngraph. This node impacts the equality of many downstream nodes, so we want its identity to only\nbe a single string, rather than a Target instance.", + "is_union": false, + "module": "pants.engine.environment", + "name": "EnvironmentName", + "provider": "pants.engine.environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish", + "pants.core.goals.test.run_tests", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.fs.CreateDigest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to create a Digest with the input FileContent/FileEntry/SymlinkEntry/Directory\nvalues.\n\nThe engine will create any parent directories necessary, e.g. `FileContent('a/b/c.txt')` will\nresult in `a/`, `a/b`, and `a/b/c.txt` being created. You only need to use `Directory` to\ncreate an empty directory.\n\nThis does _not_ actually materialize the digest to the build root. You must use\n`engine.fs.Workspace` in a `@goal_rule` to save the resulting digest to disk.", + "is_union": false, + "module": "pants.engine.fs", + "name": "CreateDigest", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.javascript.package_json.pnpm_workspace_files", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_setup_py", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors" + ] + }, + "pants.engine.fs.DigestSubset": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to get a subset of a digest.\n\nThe digest will be traversed symlink-oblivious to match the provided globs. If you require a\nsymlink-aware subset, you can access the digest's entries `Get(DigestEntries, Digest, digest)`,\nfilter them out, and create a new digest: `Get(Digest, CreateDigest(...))`.\n\nExample:\n\n result = await Get(Digest, DigestSubset(original_digest, PathGlobs([\"subdir1\", \"f.txt\"]))", + "is_union": false, + "module": "pants.engine.fs", + "name": "DigestSubset", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.dists.find_build_system", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "pants.engine.fs.DownloadFile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Retrieve the contents of a file via an HTTP GET request or directly for local file:// URLs.\n\nTo compute the `expected_digest`, manually download the file, then run `shasum -a 256` to\ncompute the fingerprint and `wc -c` to compute the expected length of the downloaded file in\nbytes.", + "is_union": false, + "module": "pants.engine.fs", + "name": "DownloadFile", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.engine.fs.FileContent": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.parse_package_json" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "The content of a file.\n\nThis can be used to create a new Digest with `Get(Digest, CreateDigest)`. You can also get back\na list of `FileContent` objects by using `Get(DigestContents, Digest)`.", + "is_union": false, + "module": "pants.engine.fs", + "name": "FileContent", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.read_package_jsons" + ] + }, + "pants.engine.fs.PathGlobs": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.read_package_jsons" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "PathGlobs(globs: 'Iterable[str]', glob_match_error_behavior: 'GlobMatchErrorBehavior' = , conjunction: 'GlobExpansionConjunction' = , description_of_origin: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.fs", + "name": "PathGlobs", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.package_json.all_package_json", + "pants.backend.javascript.package_json.package_json_for_source", + "pants.backend.javascript.package_json.parse_package_json", + "pants.backend.javascript.package_json.pnpm_workspace_files", + "pants.backend.javascript.package_json.read_package_jsons", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.tools.semgrep.rules.all_semgrep_ignore_files", + "pants.backend.tools.semgrep.rules.find_all_semgrep_configs", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.core.goals.fix.fix_batch", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.util_rules.config_files.find_config_file", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_source_paths", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ] + }, + "pants.engine.internals.build_files.AddressFamilyDir": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The directory to find addresses for.\n\nThis does _not_ recurse into subdirectories.", + "is_union": false, + "module": "pants.engine.internals.build_files", + "name": "AddressFamilyDir", + "provider": "pants.engine.internals.build_files", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.peek.get_target_data"] + }, + "pants.engine.internals.graph.GenerateFileTargets": { + "consumed_by_rules": [ + "pants.engine.internals.graph.generate_file_targets" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "GenerateFileTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.engine.internals.graph.Owners": { + "consumed_by_rules": [], + "dependencies": [ + "pants.build_graph.address", + "pants.core", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "Owners", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.find_owners"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.OwnersRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.find_owners"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request for the owners of a set of file paths.\n\nTODO: This is widely used as an effectively-public API. It should probably move to\n`pants.engine.target`.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "OwnersRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.ResolveAllTargetGeneratorRequests": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ResolveAllTargetGeneratorRequests(description_of_origin: 'str', of_type: 'type[TargetGenerator] | None' = None)", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolveAllTargetGeneratorRequests", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.all_package_json" + ] + }, + "pants.engine.internals.graph.ResolveTargetGeneratorRequests": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ResolveTargetGeneratorRequests(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolveTargetGeneratorRequests", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph.ResolvedTargetGeneratorRequests": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.internals.mapper", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "ResolvedTargetGeneratorRequests(requests: 'tuple[GenerateTargetsRequest, ...]' = ())", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_generator_target_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.all_package_json", + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph.SubprojectRoots": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "SubprojectRoots", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_subproject_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph.WrappedTargetForBootstrap": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target", "pants.engine.unions"], + "dependents": [], + "documentation": "Used to avoid a rule graph cycle when evaluating bootstrap targets.\n\nThis does not work with target generation and parametrization. It also ignores any unrecognized\nfields in the target, to accommodate plugin fields which are not yet registered during\nbootstrapping.\n\nThis should only be used by bootstrapping code.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph._AdaptorAndType": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.internals.graph", + "pants.engine.internals.target_adaptor", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_AdaptorAndType(adaptor: 'TargetAdaptor', target_type: 'type[Target]')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_AdaptorAndType", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph._DependencyMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_DependencyMapping(mapping: 'FrozenDict[Address, tuple[Address, ...]]', visited: 'FrozenOrderedSet[Target]', roots_as_targets: 'Collection[Target]')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.graph._DependencyMappingRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_DependencyMappingRequest(tt_request: 'TransitiveTargetsRequest', expanded_targets: 'bool')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMappingRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.graph._RequestAdaptorAndType": { + "consumed_by_rules": [ + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_RequestAdaptorAndType(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_RequestAdaptorAndType", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizations": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.engine.internals.parametrize", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala" + ], + "documentation": "All parametrizations and generated targets for a single input Address.\n\nIf a Target has been parametrized, the original Target might _not_ be present, due to no Target\nbeing addressable at the un-parameterized Address.", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizations", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizationsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_TargetParametrizationsRequest(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizationsRequest", + "provider": "pants.engine.internals.parametrize", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.synthetic_targets.SyntheticAddressMaps": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A collection of `SyntheticAddressMap` for all synthetic target adaptors.", + "is_union": false, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticAddressMaps", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.synthetic_targets.SyntheticTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Union members of the `SyntheticTargetsRequest` should implement a rule returning an instance\nof a `SyntheticAddressMaps`.", + "is_union": true, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticTargetsRequest", + "provider": "pants.engine.internals.synthetic_targets", + "returned_by_rules": [], + "union_members": ["PythonSyntheticLockfileTargetsRequest"], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.target_adaptor.TargetAdaptorRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Lookup the TargetAdaptor for an Address.", + "is_union": false, + "module": "pants.engine.internals.target_adaptor", + "name": "TargetAdaptorRequest", + "provider": "pants.engine.internals.target_adaptor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ] + }, + "pants.engine.process.FallibleProcessResult": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "builtins", + "pants.backend.adhoc.code_quality_tool", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "Result of executing a process which might fail.\n\nIf the process has a non-zero exit code, this will not raise an exception, unlike ProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "FallibleProcessResult", + "provider": "pants.backend.experimental.adhoc, pants.backend.experimental.python.lint.ruff, pants.engine.process", + "returned_by_rules": [ + "pants.backend.adhoc.code_quality_tool.process_files", + "pants.backend.python.lint.ruff.rules.run_ruff" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.code_quality_tool.process_files", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_fmt", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.system_binaries.find_binary", + "pants.engine.process.run_proc_with_retry", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.engine.process.InteractiveProcess": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell", + "pants.backend.terraform.goals.deploy", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm", + "pants.backend.experimental.terraform" + ], + "documentation": "InteractiveProcess(argv: 'Iterable[str]', *, env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), run_in_workspace: 'bool' = False, forward_signals_to_process: 'bool' = True, restartable: 'bool' = False, append_only_caches: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, keep_sandboxes: 'KeepSandboxes' = ) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "InteractiveProcess", + "provider": "pants.backend.experimental.helm, pants.backend.experimental.terraform, pants.engine.process", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.terraform.goals.deploy.run_terraform_deploy", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.export.export", + "pants.core.goals.publish.run_publish", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.process.Process": { + "consumed_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.sdk", + "pants.backend.helm.util_rules.tool", + "pants.backend.javascript.nodejs_project_environment", + "pants.backend.javascript.subsystems.nodejs", + "pants.backend.javascript.subsystems.nodejs_tool", + "pants.backend.python", + "pants.backend.terraform.dependency_inference", + "pants.backend.terraform.tool", + "pants.engine.env_vars", + "pants.engine.platform", + "pants.jvm.jdk_rules", + "pants.jvm.resolve.coursier_setup" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell" + ], + "documentation": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , remote_cache_speculation_delay_millis: 'int' = 0, attempt: 'int' = 0) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "Process", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.terraform, pants.backend.shell, pants.core, pants.engine.process", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.code_quality_tool.process_files", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.engine.process.run_proc_with_retry", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.process.ProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.adhoc", + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Result of executing a process which should not fail.\n\nIf the process has a non-zero exit code, this will raise an exception, unlike\nFallibleProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessResult", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.engine.process.ProcessResultWithRetries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.adhoc", + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process" + ], + "dependents": ["pants.backend.python"], + "documentation": "ProcessResultWithRetries(results: 'Tuple[FallibleProcessResult, ...]')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessResultWithRetries", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["pants.engine.process.run_proc_with_retry"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.engine.process.ProcessWithRetries": { + "consumed_by_rules": ["pants.engine.process.run_proc_with_retry"], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ProcessWithRetries(proc: 'Process', attempts: 'int')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessWithRetries", + "provider": "pants.engine.process", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.engine.process.ProductDescription": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ProductDescription(value: 'str')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProductDescription", + "provider": "pants.backend.experimental.helm, pants.engine.process", + "returned_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactory": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "is_union": false, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactory", + "provider": "pants.backend.experimental.tools.workunit_logger, pants.core", + "returned_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback", + "pants.goal.stats_aggregator.construct_callback" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.tools.workunit_logger", + "pants.core" + ], + "documentation": "A request for a particular WorkunitsCallbackFactory.", + "is_union": true, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactoryRequest", + "provider": "pants.engine.streaming_workunit_handler", + "returned_by_rules": [], + "union_members": [ + "StatsAggregatorCallbackFactoryRequest", + "WorkunitLoggerCallbackFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.AllTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "pants.backend.docker.target_types.all_docker_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.helm.target_types.all_helm_artifact_targets", + "pants.backend.helm.target_types.all_helm_chart_targets", + "pants.backend.helm.target_types.all_helm_deployment_targets", + "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "pants.backend.javascript.package_json.all_first_party_node_package_targets", + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions", + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "pants.backend.shell.dependency_inference.find_all_shell_targets", + "pants.backend.terraform.target_types.all_terraform_deployment_targets", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.target_types.find_all_assets", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": ["pants.core"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.shell", + "pants.core" + ], + "documentation": "All targets in the project, but with target generators replaced by their generated targets,\nunlike `AllUnexpandedTargets`.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.find_all_targets"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.engine.target.AllUnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": ["pants.engine.target"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core" + ], + "documentation": "All targets in the project, including generated targets.\n\nThis should generally be avoided because it is relatively expensive to compute and is frequently\ninvalidated, but it can be necessary for things like dependency inference to build a global\nmapping of imports to targets.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_all_unexpanded_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.CoarsenedTargets": { + "consumed_by_rules": [ + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "dependencies": ["pants.engine.environment"], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "The CoarsenedTarget roots of a transitive graph walk for some addresses.\n\nTo collect all reachable CoarsenedTarget members, use `def closure`.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": ["pants.engine.internals.graph.coarsened_targets"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.jvm.classpath.classpath", + "pants.jvm.run.create_run_request" + ] + }, + "pants.engine.target.CoarsenedTargetsRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.coarsened_targets"], + "dependencies": ["pants.engine.addresses"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request to get CoarsenedTargets for input roots.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.coarsened_targets_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions" + ] + }, + "pants.engine.target.DependenciesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "DependenciesRequest(field: 'Dependencies', should_traverse_deps_predicate: 'ShouldTraverseDepsPredicate' = TraverseIfDependenciesField())", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.package_json.find_owning_package", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.jvm.package.war.package_war" + ] + }, + "pants.engine.target.DependenciesRuleApplicationRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to return the applicable dependency rule action for each dependency of a target.", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRuleApplicationRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.peek.get_target_data"] + }, + "pants.engine.target.ExplicitlyProvidedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The literal addresses from a BUILD file `dependencies` field.\n\nAlmost always, you should use `await Get(Addresses, DependenciesRequest)` instead, which will\nconsider dependency inference and apply ignores. However, this type can be\nuseful particularly within inference rules to see if a user already explicitly\nprovided a dependency.\n\nResolve using `await Get(ExplicitlyProvidedDependencies, DependenciesRequest)`.\n\nNote that the `includes` are not filtered based on the `ignores`: this type preserves exactly\nwhat was in the BUILD file.", + "is_union": false, + "module": "pants.engine.target", + "name": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.ExplicitlyProvidedDependenciesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ExplicitlyProvidedDependenciesRequest(field: 'Dependencies')", + "is_union": false, + "module": "pants.engine.target", + "name": "ExplicitlyProvidedDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldDefaultFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.backend.python"], + "documentation": "Registers a dynamic default for a Field.\n\nSee `FieldDefaults`.", + "is_union": true, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "JvmResolveFieldDefaultFactoryRequest", + "PythonResolveFieldDefaultFactoryRequest" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.field_defaults"] + }, + "pants.engine.target.FieldDefaultFactoryResult": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A wrapper for a function which computes the default value of a Field.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.field_defaults"] + }, + "pants.engine.target.FieldDefaults": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "Generic Field default values. To install a default, see `FieldDefaultFactoryRequest`.\n\nTODO: This is to work around the fact that Field value defaulting cannot have arbitrary\nsubsystem requirements, and so e.g. `JvmResolveField` and `PythonResolveField` have methods\nwhich compute the true value of the field given a subsytem argument. Consumers need to\nbe type aware, and `@rules` cannot have dynamic requirements.\n\nAdditionally, `__defaults__` should mean that computed default Field values should become\nmore rare: i.e. `JvmResolveField` and `PythonResolveField` could potentially move to\nhardcoded default values which users override with `__defaults__` if they'd like to change\nthe default resolve names.\n\nSee https://github.com/pantsbuild/pants/issues/12934 about potentially allowing unions\n(including Field registrations) to have `@rule_helper` methods, which would allow the\ncomputation of an AsyncField to directly require a subsystem. Since\nhttps://github.com/pantsbuild/pants/pull/17947 rules may use any methods as rule helpers without\nspecial decoration so this should now be possible to implement.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaults", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.field_defaults"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldSetsPerTarget": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target", "pants.engine.unions"], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.shell", + "pants.core" + ], + "documentation": "FieldSetsPerTarget(collection: 'Iterable[Iterable[_FS]]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.FieldSetsPerTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FieldSetsPerTargetRequest(field_set_superclass: 'Type[_FS]', targets: 'Iterable[Target]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.GenerateSourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A request to go from protocol sources -> a particular language.\n\nThis should be subclassed for each distinct codegen implementation. The subclasses must define\nthe class properties `input` and `output`. The subclass must also be registered via\n`UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest)`, for example.\n\nThe rule to actually implement the codegen should take the subclass as input, and it must\nreturn `GeneratedSources`.\n\nThe `exportable` attribute disables the use of this codegen by the `export-codegen` goal when\nset to False.\n\nFor example:\n\n class GenerateFortranFromAvroRequest:\n input = AvroSources\n output = FortranSources\n\n @rule\n def generate_fortran_from_avro(request: GenerateFortranFromAvroRequest) -> GeneratedSources:\n ...\n\n def rules():\n return [\n generate_fortran_from_avro,\n UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateDockerContextFiles", + "GenerateDockerfileRequest", + "GenerateFileSourceRequest", + "GenerateFilesFromAdhocToolRequest", + "GenerateFilesFromShellCommandRequest", + "GenerateGoFromProtobufRequest", + "GenerateJavaFromProtobufRequest", + "GeneratePythonFromProtobufRequest", + "GeneratePythonFromSetuptoolsSCMRequest", + "GeneratePythonFromThriftRequest", + "GenerateResourceSourceRequest", + "GenerateScalaFromProtobufRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "RelocateFilesViaCodegenRequest" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.hydrate_sources"] + }, + "pants.engine.target.GenerateTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.plugin_development", + "pants.backend.python" + ], + "documentation": "GenerateTargetsRequest(generator: '_TargetGenerator', template_address: 'Address', template: 'dict[str, Any]', overrides: 'dict[str, dict[Address, dict[str, Any]]]')", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateFileTargets", + "GenerateFromPantsRequirementsRequest", + "GenerateFromPipenvRequirementsRequest", + "GenerateFromPoetryRequirementsRequest", + "GenerateFromPythonRequirementsRequest", + "GenerateJvmArtifactForScalaTargets", + "GenerateNodePackageTargets", + "GenerateTargetsFromGoModRequest", + "GenerateTargetsFromPexBinaries" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.GeneratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GeneratedSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.hydrate_sources"] + }, + "pants.engine.target.GeneratedTargets": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.java", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.fs", + "pants.engine.internals.target_adaptor", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A mapping of the address of generated targets to the targets themselves.", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedTargets", + "provider": "pants.backend.experimental.go, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.scala, pants.backend.plugin_development, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.javascript.package_json.generate_node_package_targets", + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "pants.backend.scala.target_types.generate_jvm_artifact_targets", + "pants.engine.internals.graph.generate_file_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.HydrateSourcesRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.hydrate_sources"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "HydrateSourcesRequest(field: 'SourcesField', *, for_sources_types: 'Iterable[type[SourcesField]]' = (,), enable_codegen: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "HydrateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.HydratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The result of hydrating a SourcesField.\n\nThe `sources_type` will indicate which of the `HydrateSourcesRequest.for_sources_type` the\nresult corresponds to, e.g. if the result comes from `FilesSources` vs. `PythonSources`. If this\nvalue is None, then the input `SourcesField` was not one of the expected types; or, when codegen\nwas enabled in the request, there was no valid code generator to generate the requested language\nfrom the original input. This property allows for switching on the result, e.g. handling\nhydrated files() sources differently than hydrated Python sources.", + "is_union": false, + "module": "pants.engine.target", + "name": "HydratedSources", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.hydrate_sources"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.InferDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A request to infer dependencies by analyzing source files.\n\nTo set up a new inference implementation, subclass this class. Set the class property\n`infer_from` to the FieldSet subclass you are able to infer from. This will cause the FieldSet\nclass, and any subclass, to use your inference implementation.\n\nNote that there cannot be more than one implementation for a particular `FieldSet` class.\n\nRegister this subclass with `UnionRule(InferDependenciesRequest, InferFortranDependencies)`, for example.\n\nThen, create a rule that takes the subclass as a parameter and returns `InferredDependencies`.\n\nFor example:\n\n class InferFortranDependencies(InferDependenciesRequest):\n infer_from = FortranDependenciesInferenceFieldSet\n\n @rule\n def infer_fortran_dependencies(request: InferFortranDependencies) -> InferredDependencies:\n hydrated_sources = await Get(HydratedSources, HydrateSources(request.sources))\n ...\n return InferredDependencies(...)\n\n def rules():\n return [\n infer_fortran_dependencies,\n UnionRule(InferDependenciesRequest, InferFortranDependencies),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "InferDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "InferApacheThriftPythonDependencies", + "InferConftestDependencies", + "InferDockerDependencies", + "InferGoBinaryMainDependencyRequest", + "InferGoPackageDependenciesRequest", + "InferGoThirdPartyPackageDependenciesRequest", + "InferHelmChartDependenciesRequest", + "InferHelmDeploymentDependenciesRequest", + "InferHelmUnitTestChartDependencyRequest", + "InferInitDependencies", + "InferJSDependenciesRequest", + "InferJavaSourceDependencies", + "InferKotlinJunitTestDependencyRequest", + "InferKotlinRuntimeDependencyRequest", + "InferKotlinSourceDependencies", + "InferNodePackageDependenciesRequest", + "InferOpenApiDocumentDependenciesRequest", + "InferOpenApiSourceDependenciesRequest", + "InferPexBinaryEntryPointDependency", + "InferProtobufDependencies", + "InferProtobufJavaRuntimeDependencyRequest", + "InferPythonDistributionDependencies", + "InferPythonFaaSHandlerDependency", + "InferPythonImportDependencies", + "InferPythonProtobufDependencies", + "InferScalaLibraryDependencyRequest", + "InferScalaPBRuntimeDependencyRequest", + "InferScalaPluginDependenciesRequest", + "InferScalaSourceDependencies", + "InferShellDependencies", + "InferStevedoreNamespacesDependencies", + "InferTerraformModuleDependenciesRequest", + "InferThriftDependencies" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.InferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.addresses", + "pants.engine.fs", + "pants.engine.internals.native_dep_inference" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "InferredDependencies(include: 'Iterable[Address]', *, exclude: 'Iterable[Address]' = ()) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "InferredDependencies", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.framework.stevedore, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.MovedPluginField": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": "A plugin field that should be moved into the generated targets.", + "is_union": true, + "module": "pants.engine.target", + "name": "MovedPluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "ProtobufPythonInterpreterConstraintsField", + "ProtobufPythonResolveField", + "PythonSourceRootField" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.PluginField": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": null, + "is_union": true, + "module": "pants.engine.target", + "name": "PluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": ["SkipScalafmtField"], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.SourcesPaths": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "dependencies": ["pants.engine.fs", "pants.engine.target"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "The resolved file names of the `source`/`sources` field.\n\nThis does not consider codegen, and only captures the files from the field.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPaths", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.SourcesPathsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request to resolve the file names of the `source`/`sources` field.\n\nUse via `Get(SourcesPaths, SourcesPathRequest(tgt.get(SourcesField))`.\n\nThis is faster than `Get(HydratedSources, HydrateSourcesRequest)` because it does not snapshot\nthe files and it only resolves the file names.\n\nThis does not consider codegen, and only captures the files from the field. Use\n`HydrateSourcesRequest` to use codegen.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPathsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettings": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings", + "pants.backend.codegen.thrift.target_types.generator_settings", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.scala.target_types.scala_settings_request", + "pants.backend.shell.target_types.generator_settings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.generate_file_targets"] + }, + "pants.engine.target.TargetFilesGeneratorSettingsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "An optional union to provide dynamic settings for a `TargetFilesGenerator`.\n\nSee `TargetFilesGenerator`.", + "is_union": true, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettingsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GeneratorSettingsRequest", + "GeneratorSettingsRequest", + "PythonFilesGeneratorSettingsRequest", + "ScalaSettingsRequest", + "ShellGeneratorSettingsRequest" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.generate_file_targets"] + }, + "pants.engine.target.TargetRootsToFieldSetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "TargetRootsToFieldSetsRequest(field_set_superclass: 'Type[_FS]', *, goal_description: 'str', no_applicable_targets_behavior: 'NoApplicableTargetsBehavior', shard: 'int' = 0, num_shards: 'int' = -1) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetRootsToFieldSetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.generate_snapshots.generate_snapshots", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.run_publish", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.target.TargetTypesToGenerateTargetsRequests": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": ["pants.engine.unions"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.target", + "name": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.target_types_to_generate_targets_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.Targets": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.go_generate", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A heterogeneous collection of instances of Target subclasses.\n\nWhile every element will be a subclass of `Target`, there may be many different `Target` types\nin this collection, e.g. some `FileTarget` and some `PythonTestTarget`.\n\nOften, you will want to filter out the relevant targets by looking at what fields they have\nregistered, e.g.:\n\n valid_tgts = [tgt for tgt in tgts if tgt.has_fields([Compatibility, PythonSources])]\n\nYou should not check the Target's actual type because this breaks custom target types;\nfor example, prefer `tgt.has_field(PythonTestsSourcesField)` to\n`isinstance(tgt, PythonTestsTarget)`.", + "is_union": false, + "module": "pants.engine.target", + "name": "Targets", + "provider": "pants.backend.experimental.go, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.code_quality_tool.find_code_quality_tool", + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.javascript.package_json.find_owning_package", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.engine.target.TransitiveTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.addresses", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A set of Target roots, and their transitive, flattened, de-duped dependencies.\n\nIf a target root is a dependency of another target root, then it will show up both in `roots`\nand in `dependencies`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.transitive_targets"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.TransitiveTargetsRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.transitive_targets"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request to get the transitive dependencies of the input roots.\n\nResolve the transitive targets with `await Get(TransitiveTargets,\nTransitiveTargetsRequest([addr1, addr2])`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.TransitivelyExcludeDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to transitvely exclude dependencies of a \"root\" node.\n\nThis is similar to `InferDependenciesRequest`, except the request is only made for \"root\" nodes\nin the dependency graph.\n\nThis mirrors the public facing \"transitive exclude\" dependency feature (i.e. `!!
`).", + "is_union": true, + "module": "pants.engine.target", + "name": "TransitivelyExcludeDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.transitive_targets"] + }, + "pants.engine.target.UnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": ["pants.engine.addresses"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.backend.python", + "pants.core" + ], + "documentation": "Like `Targets`, but will not replace target generators with their generated targets (e.g.\nreplace `python_sources` \"BUILD targets\" with generated `python_source` \"file targets\").", + "is_union": false, + "module": "pants.engine.target", + "name": "UnexpandedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.project_info.peek.peek", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping" + ] + }, + "pants.engine.target.ValidateDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to validate dependencies after they have been computed.\n\nAn implementing rule should raise an exception if dependencies are invalid.", + "is_union": true, + "module": "pants.engine.target", + "name": "ValidateDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": ["PythonValidateDependenciesRequest"], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.ValidatedDependencies": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ValidatedDependencies()", + "is_union": false, + "module": "pants.engine.target", + "name": "ValidatedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.WrappedTarget": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.environment", "pants.engine.target"], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A light wrapper to encapsulate all the distinct `Target` subclasses into a single type.\n\nThis is necessary when using a single target in a rule because the engine expects exact types\nand does not work with subtypes.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.resolve_target"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.resolve.resolve_for_package", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.engine.target.WrappedTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Used with `WrappedTarget` to get the Target corresponding to an address.\n\n`description_of_origin` is used for error messages when the address does not actually exist. If\nyou are confident this cannot happen, set the string to something like ``.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.resolve.resolve_for_package", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetry": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetry", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_anonymous_telemetry"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorCallbackFactoryRequest": { + "consumed_by_rules": ["pants.goal.stats_aggregator.construct_callback"], + "dependencies": ["pants.engine.streaming_workunit_handler"], + "dependents": ["pants.core"], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorSubsystem": { + "consumed_by_rules": ["pants.goal.stats_aggregator.construct_callback"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_stats"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.bsp.compile.BSPClasspathEntryRequest": { + "consumed_by_rules": ["pants.jvm.bsp.compile.notify_for_classpath_entry"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A wrapper around a `ClasspathEntryRequest` which notifies the BSP client on completion.\n\nTODO: Because this struct contains a `task_id`, messages will re-render in every run, even\nthough the underlying computation does not re-run. See #15426 for an alternative.", + "is_union": false, + "module": "pants.jvm.bsp.compile", + "name": "BSPClasspathEntryRequest", + "provider": "pants.jvm.bsp.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.classpath.Classpath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "Classpath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.classpath.classpath"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.classpath.LooseClassfiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.scala", + "pants.core", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "The contents of a classpath entry as loose classfiles.\n\nNote that `ClasspathEntry` and `Classpath` both guarantee that they contain JAR files, and so\ncreating loose classfiles from them involves extracting their entry.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "LooseClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.classpath.loose_classfiles"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.compile.ClasspathDependenciesRequest": { + "consumed_by_rules": ["pants.jvm.compile.classpath_dependency_requests"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ClasspathDependenciesRequest(request: 'ClasspathEntryRequest', ignore_generated: 'bool' = False)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathDependenciesRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.ClasspathEntry": { + "consumed_by_rules": ["pants.jvm.classpath.loose_classfiles"], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nIf `[jvm].reproducible_jars`, then all JARs in a classpath entry must have had timestamps\nstripped -- either natively, or via the `pants.jvm.strip_jar` rules.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.\n\nNote: Non-jar artifacts (e.g., executables with \"exe\" packaging) may end up on the classpath if\nthey are dependencies.\nTODO: Does there need to be a filtering mechanism to exclude non-jar artifacts in the default case?", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.jvm.compile", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.jvm.compile.required_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.classpath.classpath", + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.compile.ClasspathEntryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "A request for a ClasspathEntry for the given CoarsenedTarget and resolve.\n\nTODO: Move to `classpath.py`.", + "is_union": true, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [ + "CompileJavaSourceRequest", + "CompileKotlinSourceRequest", + "CompileScalaSourceRequest", + "CoursierFetchRequest", + "DeployJarClasspathEntryRequest", + "JvmResourcesRequest", + "ScalaArtifactClasspathEntryRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.compile.ClasspathEntryRequestFactory": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependencies": ["pants.engine.unions"], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.compile.calculate_jvm_request_types"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.compile.ClasspathEntryRequests": { + "consumed_by_rules": ["pants.jvm.compile.compile_classpath_entries"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java, pants.jvm.compile", + "returned_by_rules": ["pants.jvm.compile.classpath_dependency_requests"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.compile.compile_classpath_entries"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntry": { + "consumed_by_rules": ["pants.jvm.compile.required_classfiles"], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.bsp.compile", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resources.assemble_resources_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmTypeProvidingTargets": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AvailableThirdPartyArtifacts": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.ThirdPartySymbolMapping": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "The third party symbols provided by all `jvm_artifact` targets.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.symbol_mapper.FirstPartyMappingRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "An entry point for a specific implementation of mapping JVM package names to owning targets.\n\nAll implementations will be merged together.\n\nThe addresses should all be file addresses, rather than BUILD addresses.", + "is_union": true, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "FirstPartyMappingRequest", + "provider": "pants.jvm.dependency_inference.symbol_mapper", + "returned_by_rules": [], + "union_members": [ + "FirstPartyJavaTargetsMappingRequest", + "FirstPartyKotlinTargetsMappingRequest", + "FirstPartyScalaTargetsMappingRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMap": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "The first party symbols provided by a single inference implementation.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMap", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMapping": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "The merged first and third party symbols provided by all inference implementations.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.GenerateJvmLockfile": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.unions", + "pants.jvm.goals.lockfile", + "pants.jvm.resolve.common" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', artifacts: 'ArtifactRequirements')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": ["pants.jvm.goals.lockfile.setup_user_lockfile_requests"] + }, + "pants.jvm.goals.lockfile.KnownJVMUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "KnownJVMUserResolveNamesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.RequestedJVMUserResolveNames": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "RequestedJVMUserResolveNames", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "Hook for backends to validate the artifact requirements requested for a resolve.\n\nThe main user is the Scala backend which will ensure scala-library is present in the resolve.", + "is_union": true, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": ["ValidateResolveHasScalaRuntimeRequest"], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.java"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile._ValidateJvmArtifactsRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "_ValidateJvmArtifactsRequest(artifacts: 'ArtifactRequirements', resolve_name: 'str')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "_ValidateJvmArtifactsRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.goals.lockfile.setup_user_lockfile_requests"] + }, + "pants.jvm.jar_tool.jar_tool.JarToolCompiledClassfiles": { + "consumed_by_rules": ["pants.jvm.jar_tool.jar_tool.run_jar_tool"], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JarToolCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jar_tool.jar_tool.build_jar_tool"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jar_tool.jar_tool.JarToolGenerateLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolGenerateLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool" + ] + }, + "pants.jvm.jar_tool.jar_tool.JarToolRequest": { + "consumed_by_rules": ["pants.jvm.jar_tool.jar_tool.run_jar_tool"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JarToolRequest(*, jar_name: 'str', digest: 'Digest', main_class: 'str | None' = None, classpath_entries: 'Iterable[str] | None' = None, manifest: 'str | None' = None, jars: 'Iterable[str] | None' = None, file_mappings: 'Mapping[str, str] | None' = None, default_action: 'JarDuplicateAction | None' = None, policies: 'Iterable[tuple[str, str | JarDuplicateAction]] | None' = None, skip: 'Iterable[str] | None' = None, compress: 'bool' = False, update: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolRequest", + "provider": "pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.deploy_jar.package_deploy_jar"] + }, + "pants.jvm.jdk_rules.InternalJdk": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "InternalJdk", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jdk_rules.internal_jdk"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jdk_rules.JdkEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.jdk_rules" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int', global_jvm_options: 'tuple[str, ...]', java_home_command: 'str')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkEnvironment", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JdkRequest": { + "consumed_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Request for a JDK with a specific major version, or a default (`--jvm-jdk` or System).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkRequest", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JvmProcess": { + "consumed_by_rules": ["pants.jvm.jdk_rules.jvm_process"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JvmProcess(jdk: 'JdkEnvironment', argv: 'Iterable[str]', classpath_entries: 'Iterable[str]', input_digest: 'Digest', description: 'str', level: 'LogLevel' = , extra_jvm_options: 'Iterable[str] | None' = None, extra_nailgun_keys: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_env: 'Mapping[str, str] | None' = None, timeout_seconds: 'int | float | None' = None, cache_scope: 'ProcessCacheScope | None' = None, use_nailgun: 'bool' = True, remote_cache_speculation_delay: 'int | None' = None)", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JvmProcess", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.jdk_rules.Nailgun": { + "consumed_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "dependencies": ["pants.backend.experimental.scala", "pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Nailgun(classpath_entry: 'ClasspathEntry')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "Nailgun", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jdk_rules.fetch_nailgun"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.deploy_jar_classpath" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarClasspathEntryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DeployJarFieldSet", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "DeployJarFieldSet(address: 'Address', main_class: pants.jvm.target_types.JvmMainClassNameField, output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmDependenciesField, jdk_version: pants.jvm.target_types.JvmJdkField, duplicate_policy: pants.jvm.target_types.DeployJarDuplicatePolicyField, shading_rules: pants.jvm.target_types.DeployJarShadingRulesField, exclude_files: pants.jvm.target_types.DeployJarExcludeFilesField)", + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarFieldSet", + "provider": "pants.backend.experimental.java, pants.jvm.package.deploy_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.jvm.package.war.PackageWarFileFieldSet": { + "consumed_by_rules": ["pants.jvm.package.war.package_war"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "PackageWarFileFieldSet(address: 'Address', output_path: 'OutputPathField', dependencies: 'JvmWarDependenciesField', descriptor: 'JvmWarDescriptorAddressField', content: 'JvmWarContentField', shading_rules: 'JvmWarShadingRulesField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "PackageWarFileFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.jvm.package.war.RenderWarContentRequest": { + "consumed_by_rules": ["pants.jvm.package.war.render_war_content"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderWarContentRequest(content: 'JvmWarContentField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarContentRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.package.war.RenderWarDeploymentDescriptorRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderWarDeploymentDescriptorRequest(descriptor: 'JvmWarDescriptorAddressField', owning_address: 'Address')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarDeploymentDescriptorRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.package.war.RenderedWarContent": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.addresses", + "pants.jvm.package.war" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderedWarContent(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarContent", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.package.war.render_war_content"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.package.war.RenderedWarDeploymentDescriptor": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.package.war" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderedWarDeploymentDescriptor(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.resolve.common.ArtifactRequirements": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java" + ], + "documentation": "An ordered list of Coordinates used as requirements.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "ArtifactRequirements", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.common", + "returned_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.common.GatherJvmCoordinatesRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A request to turn strings of coordinates (`group:artifact:version`) and/or addresses to\n`jvm_artifact` targets into `ArtifactRequirements`.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "GatherJvmCoordinatesRequest", + "provider": "pants.jvm.resolve.common", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierFetchRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierFetchRequest", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierLockfileEntry": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A single artifact entry from a Coursier-resolved lockfile.\n\nThese fields are nearly identical to the JSON objects from the\n\"dependencies\" entries in Coursier's --json-output-file format.\nBut unlike Coursier's JSON report, a CoursierLockfileEntry\nincludes the content-address of the artifact fetched by Coursier\nand ingested by Pants.\n\nFor example, a Coursier JSON report dependency entry might look like this:\n\n```\n{\n \"coord\": \"com.chuusai:shapeless_2.13:2.3.3\",\n \"file\": \"/home/USER/.cache/coursier/v1/https/repo1.maven.org/maven2/com/chuusai/shapeless_2.13/2.3.3/shapeless_2.13-2.3.3.jar\",\n \"directDependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ],\n \"dependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ]\n}\n```\n\nThe equivalent CoursierLockfileEntry would look like this:\n\n```\nCoursierLockfileEntry(\n coord=\"com.chuusai:shapeless_2.13:2.3.3\", # identical\n file_name=\"shapeless_2.13-2.3.3.jar\" # PurePath(entry[\"file\"].name)\n direct_dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n file_digest=FileDigest(fingerprint=, ...),\n)\n```\n\nThe fields `remote_url` and `pants_address` are set by Pants if the `coord` field matches a\n`jvm_artifact` that had either the `url` or `jar` fields set.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierLockfileEntry", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.resolve.common" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolvedLockfile": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.common", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ResolvedClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A collection of resolved classpath entries.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspath": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.jvm.resolve.common", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "A fully fetched and merged classpath for running a JVM tool.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspathRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A request to set up the classpath for a JVM tool by fetching artifacts and merging the\nclasspath.\n\n:param prefix: if set, should be a relative directory that will\n be prepended to every classpath element. This is useful for\n keeping all classpath elements isolated under a single directory\n in a process invocation, where other inputs on the process's\n root directory might interfere with un-prefixed classpath\n entries (or vice versa).", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspathRequest", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_setup.Coursier": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "Coursier", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.resolve.coursier_setup.setup_coursier"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.coursier_setup.CoursierFetchProcess": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "CoursierFetchProcess(args: 'Tuple[str, ...]', input_digest: 'Digest', output_directories: 'Tuple[str, ...]', output_files: 'Tuple[str, ...]', description: 'str')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierFetchProcess", + "provider": "pants.jvm.resolve.coursier_setup", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_setup.CoursierSubsystem": { + "consumed_by_rules": ["pants.jvm.resolve.coursier_setup.setup_coursier"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_coursier"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.jvm_tool.GenerateJvmLockfileFromTool": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.rules", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.java.dependency_inference.java_parser", + "pants.backend.java.lint.google_java_format.rules", + "pants.backend.kotlin.dependency_inference.kotlin_parser", + "pants.backend.kotlin.lint.ktlint.rules", + "pants.backend.scala.dependency_inference.scala_parser", + "pants.backend.scala.lint.scalafmt.rules", + "pants.backend.scala.test.scalatest", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.shading.jarjar", + "pants.jvm.strip_jar.strip_jar", + "pants.jvm.test.junit" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "is_union": false, + "module": "pants.jvm.resolve.jvm_tool", + "name": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.key.CoursierResolveKey": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.key", + "name": "CoursierResolveKey", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.key", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resources.JvmResourcesRequest": { + "consumed_by_rules": ["pants.jvm.resources.assemble_resources_jar"], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resources", + "name": "JvmResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJar": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.shading.rules.shade_jar" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_jarjar"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJarGeneratorLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJarGeneratorLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.shading.jarjar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": ["pants.jvm.shading.rules.shade_jar"] + }, + "pants.jvm.shading.rules.ShadeJarRequest": { + "consumed_by_rules": ["pants.jvm.shading.rules.shade_jar"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ShadeJarRequest(*, path: 'str | PurePath', digest: 'Digest', rules: 'Iterable[JvmShadingRule] | None' = None, skip_manifest: 'bool | None' = None, misplaced_class_strategy: 'MisplacedClassStrategy | None' = None) -> 'None'", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadeJarRequest", + "provider": "pants.jvm.shading.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.shading.rules.ShadedJar": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.jvm.shading.rules" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ShadedJar(path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadedJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.shading.rules.shade_jar"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarCompiledClassfiles": { + "consumed_by_rules": ["pants.jvm.strip_jar.strip_jar.strip_jar"], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "StripJarCompiledClassfiles(digest: Digest)", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.strip_jar.strip_jar.build_processors"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.strip_jar.strip_jar.StripJarRequest": { + "consumed_by_rules": ["pants.jvm.strip_jar.strip_jar.strip_jar"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "StripJarRequest(digest: Digest, filenames: Tuple[str, ...])", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarRequest", + "provider": "pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.package_deploy_jar" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.jvm.subsystems.JvmSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_jvm", + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.target_types.generate_jvm_artifact_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.target_types.jvm_resolve_field_default_factory", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.subsystems", + "name": "JvmSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_jvm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.target_types.GenericJvmRunRequest": { + "consumed_by_rules": ["pants.jvm.run.create_run_request"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Allows the use of a generic rule to return a `RunRequest` based on the field set.", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "GenericJvmRunRequest", + "provider": "pants.jvm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet" + ] + }, + "pants.jvm.target_types.JvmArtifactFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JvmArtifactFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JvmArtifactFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', group: 'JvmArtifactGroupField', artifact: 'JvmArtifactArtifactField', version: 'JvmArtifactVersionField', packages: 'JvmArtifactPackagesField', url: 'JvmArtifactUrlField')", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmArtifactFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.jvm.target_types.JvmResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmJdkField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmJdkField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmResolveField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "JunitTestFieldSet(address: 'Address', sources: 'JunitTestSourceField', timeout: 'JunitTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'TestExtraEnvVarsField')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": ["pants.jvm.test.junit.setup_junit_for_target"] + }, + "pants.jvm.test.junit.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.env_vars", + "pants.jvm.test.junit" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetup", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.test.junit.setup_junit_for_target"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.test.junit.TestSetupRequest": { + "consumed_by_rules": ["pants.jvm.test.junit.setup_junit_for_target"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "TestSetupRequest(field_set: 'JunitTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetupRequest", + "provider": "pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.util_rules.ExtractFileDigest": { + "consumed_by_rules": ["pants.jvm.util_rules.digest_to_file_digest"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ExtractFileDigest(digest: 'Digest', file_path: 'str')", + "is_union": false, + "module": "pants.jvm.util_rules", + "name": "ExtractFileDigest", + "provider": "pants.jvm.util_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.option.global_options.GlobalOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.run.run", + "pants.core.util_rules.distdir.get_distdir", + "pants.engine.internals.graph.extract_subproject_roots", + "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "pants.jvm.jdk_rules.jvm_process" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.experimental.tools.semgrep", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.option.global_options", + "name": "GlobalOptions", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.global_options.UnmatchedBuildFileGlobs": { + "consumed_by_rules": [ + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_source_paths" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "What to do when globs do not match in BUILD files.", + "is_union": false, + "module": "pants.option.global_options", + "name": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_unmatched_build_file_globs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.scope.Scope": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "An options scope.", + "is_union": false, + "module": "pants.option.scope", + "name": "Scope", + "provider": "pants.option.scope", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_scope_", + "construct_scope_add_trailing_comma", + "construct_scope_anonymous_telemetry", + "construct_scope_apache_thrift", + "construct_scope_autoflake", + "construct_scope_bandit", + "construct_scope_black", + "construct_scope_buf", + "construct_scope_build_deprecations_fixer", + "construct_scope_buildifier", + "construct_scope_check", + "construct_scope_count_loc", + "construct_scope_coursier", + "construct_scope_coverage_py", + "construct_scope_debug_adapter", + "construct_scope_debugpy", + "construct_scope_dependencies", + "construct_scope_dependents", + "construct_scope_docformatter", + "construct_scope_docker", + "construct_scope_dockerfile_parser", + "construct_scope_download_terraform", + "construct_scope_experimental_bsp", + "construct_scope_experimental_deploy", + "construct_scope_export", + "construct_scope_export_codegen", + "construct_scope_filedeps", + "construct_scope_filter", + "construct_scope_fix", + "construct_scope_flake8", + "construct_scope_fmt", + "construct_scope_generate_lockfiles", + "construct_scope_generate_snapshots", + "construct_scope_go_generate", + "construct_scope_go_test", + "construct_scope_gofmt", + "construct_scope_golang", + "construct_scope_google_java_format", + "construct_scope_grpc_python_plugin", + "construct_scope_hadolint", + "construct_scope_helm", + "construct_scope_helm_k8s_parser", + "construct_scope_helm_post_renderer", + "construct_scope_helm_unittest", + "construct_scope_ipython", + "construct_scope_isort", + "construct_scope_jarjar", + "construct_scope_java_infer", + "construct_scope_javac", + "construct_scope_junit", + "construct_scope_jvm", + "construct_scope_kotlin", + "construct_scope_kotlin_infer", + "construct_scope_kotlinc", + "construct_scope_ktlint", + "construct_scope_lint", + "construct_scope_list", + "construct_scope_mypy", + "construct_scope_mypy_protobuf", + "construct_scope_nodejs", + "construct_scope_nodejs_infer", + "construct_scope_openapi", + "construct_scope_openapi_format", + "construct_scope_package", + "construct_scope_paths", + "construct_scope_peek", + "construct_scope_pex", + "construct_scope_pex_binary_defaults", + "construct_scope_pex_cli", + "construct_scope_preamble", + "construct_scope_protobuf_java_grpc", + "construct_scope_protoc", + "construct_scope_publish", + "construct_scope_py_constraints", + "construct_scope_pydocstyle", + "construct_scope_pylint", + "construct_scope_pyoxidizer", + "construct_scope_pytest", + "construct_scope_python", + "construct_scope_python_bootstrap", + "construct_scope_python_dump_source_analysis", + "construct_scope_python_infer", + "construct_scope_python_native_code", + "construct_scope_python_protobuf", + "construct_scope_python_repos", + "construct_scope_python_thrift", + "construct_scope_pytype", + "construct_scope_pyupgrade", + "construct_scope_regex_lint", + "construct_scope_repl", + "construct_scope_roots", + "construct_scope_ruff", + "construct_scope_run", + "construct_scope_scala", + "construct_scope_scala_infer", + "construct_scope_scalac", + "construct_scope_scalafmt", + "construct_scope_scalapb", + "construct_scope_scalatest", + "construct_scope_scc", + "construct_scope_semgrep", + "construct_scope_setup_py_generation", + "construct_scope_setuptools", + "construct_scope_setuptools_scm", + "construct_scope_shell_setup", + "construct_scope_shell_test", + "construct_scope_shellcheck", + "construct_scope_shfmt", + "construct_scope_shunit2", + "construct_scope_source", + "construct_scope_spectral", + "construct_scope_stats", + "construct_scope_subprocess_environment", + "construct_scope_system_binaries", + "construct_scope_tailor", + "construct_scope_terraform_fmt", + "construct_scope_terraform_hcl2_parser", + "construct_scope_terraform_validate", + "construct_scope_test", + "construct_scope_thrift", + "construct_scope_twine", + "construct_scope_update_build_files", + "construct_scope_workunit_logger", + "construct_scope_yamllint", + "construct_scope_yapf" + ] + }, + "pants.option.subsystem.PluginOption": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.option.subsystem", + "name": "PluginOption", + "provider": "pants.option.subsystem", + "returned_by_rules": [], + "union_members": ["ExportPluginOptions"], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.AllSourceRoots": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.project_info", "pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "AllSourceRoots", + "provider": "pants.core", + "returned_by_rules": ["pants.source.source_root.all_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.OptionalSourceRoot": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.source.source_root"], + "dependents": ["pants.core"], + "documentation": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.OptionalSourceRootsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.source.source_root"], + "dependents": ["pants.core"], + "documentation": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.source.source_root.get_source_roots"] + }, + "pants.source.source_root.SourceRoot": { + "consumed_by_rules": [], + "dependencies": ["pants.source.source_root"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRoot(path: 'str')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRoot", + "provider": "pants.core", + "returned_by_rules": ["pants.source.source_root.get_source_root"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ] + }, + "pants.source.source_root.SourceRootConfig": { + "consumed_by_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootConfig", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_source"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.SourceRootRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_source_root" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Find the source root for the given path.\n\nIf you have multiple paths, particularly if many of them share parent directories, you'll get\nbetter performance with a `SourceRootsRequest` (see above) instead.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.SourceRootsRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_roots" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Find the source roots for the given files and/or dirs.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRootsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.source.source_root"], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsResult", + "provider": "pants.core", + "returned_by_rules": ["pants.source.source_root.get_source_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ] + }, + "pants.vcs.git.GitWorktreeRequest": { + "consumed_by_rules": ["pants.vcs.git.get_git_worktree"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GitWorktreeRequest(gitdir: 'PathLike[str] | None' = None, subdir: 'PathLike[str] | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "GitWorktreeRequest", + "provider": "pants.vcs.git", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + }, + "pants.vcs.git.MaybeGitWorktree": { + "consumed_by_rules": [], + "dependencies": ["pants.vcs.git"], + "dependents": ["pants.backend.experimental.python"], + "documentation": "MaybeGitWorktree(git_worktree: 'GitWorktree | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "MaybeGitWorktree", + "provider": "pants.core", + "returned_by_rules": ["pants.vcs.git.get_git_worktree"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + } + }, + "name_to_backend_help_info": { + "pants.backend.awslambda.python": { + "description": "Create AWS Lambdas from Python code.\n\nSee https://www.pantsbuild.org/docs/awslambda-python.", + "enabled": true, + "name": "pants.backend.awslambda.python", + "provider": "pants" + }, + "pants.backend.build_files.fix.deprecations": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fix.deprecations", + "provider": "pants" + }, + "pants.backend.build_files.fmt.black": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.black", + "provider": "pants" + }, + "pants.backend.build_files.fmt.buildifier": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.buildifier", + "provider": "pants" + }, + "pants.backend.build_files.fmt.yapf": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.yapf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.lint.buf": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.protobuf.lint.buf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.python": { + "description": "Generate Python sources from Protocol Buffers (Protobufs).\n\nSee https://www.pantsbuild.org/docs/protobuf.", + "enabled": true, + "name": "pants.backend.codegen.protobuf.python", + "provider": "pants" + }, + "pants.backend.codegen.thrift.apache.python": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.thrift.apache.python", + "provider": "pants" + }, + "pants.backend.docker": { + "description": "", + "enabled": true, + "name": "pants.backend.docker", + "provider": "pants" + }, + "pants.backend.docker.lint.hadolint": { + "description": "", + "enabled": true, + "name": "pants.backend.docker.lint.hadolint", + "provider": "pants" + }, + "pants.backend.experimental.adhoc": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.adhoc", + "provider": "pants" + }, + "pants.backend.experimental.cc": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cc", + "provider": "pants" + }, + "pants.backend.experimental.cc.lint.clangformat": { + "description": "A formatter for C/C++ (and several other languages).\n\nSee https://clang.llvm.org/docs/ClangFormat.html for details.", + "enabled": false, + "name": "pants.backend.experimental.cc.lint.clangformat", + "provider": "pants" + }, + "pants.backend.experimental.codegen.avro.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.avro.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.go", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.scala", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.apache.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.apache.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.scala": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.scala", + "provider": "pants" + }, + "pants.backend.experimental.cue": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cue", + "provider": "pants" + }, + "pants.backend.experimental.debian": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.debian", + "provider": "pants" + }, + "pants.backend.experimental.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.go", + "provider": "pants" + }, + "pants.backend.experimental.go.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.golangci_lint": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.golangci_lint", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.vet": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.vet", + "provider": "pants" + }, + "pants.backend.experimental.helm": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.helm", + "provider": "pants" + }, + "pants.backend.experimental.helm.check.kubeconform": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.helm.check.kubeconform", + "provider": "pants" + }, + "pants.backend.experimental.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java", + "provider": "pants" + }, + "pants.backend.experimental.java.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.java.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.java.lint.google_java_format": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java.lint.google_java_format", + "provider": "pants" + }, + "pants.backend.experimental.javascript": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.javascript", + "provider": "pants" + }, + "pants.backend.experimental.javascript.lint.prettier": { + "description": "A formatter for JS/TS (and several other languages).\n\nSee https://prettier.io/ for details.", + "enabled": false, + "name": "pants.backend.experimental.javascript.lint.prettier", + "provider": "pants" + }, + "pants.backend.experimental.kotlin": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.kotlin.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.lint.ktlint": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin.lint.ktlint", + "provider": "pants" + }, + "pants.backend.experimental.openapi": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi", + "provider": "pants" + }, + "pants.backend.experimental.openapi.codegen.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.openapi.codegen.java", + "provider": "pants" + }, + "pants.backend.experimental.openapi.lint.openapi_format": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi.lint.openapi_format", + "provider": "pants" + }, + "pants.backend.experimental.openapi.lint.spectral": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi.lint.spectral", + "provider": "pants" + }, + "pants.backend.experimental.python": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.django": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.framework.django", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.stevedore": { + "description": "A python \"framework\" for apps to dynamically load plugins.\n\nSee https://github.com/openstack/stevedore for details.", + "enabled": true, + "name": "pants.backend.experimental.python.framework.stevedore", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.add_trailing_comma": { + "description": "Autoformatter to automatically add trailing commas to calls and literals.\n\nSee https://github.com/asottile/add-trailing-comma for details.", + "enabled": true, + "name": "pants.backend.experimental.python.lint.add_trailing_comma", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.autoflake": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.pyupgrade": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.ruff": { + "description": "Linter & formatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://docs.astral.sh/ruff/", + "enabled": true, + "name": "pants.backend.experimental.python.lint.ruff", + "provider": "pants" + }, + "pants.backend.experimental.python.packaging.pyoxidizer": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python.packaging.pyoxidizer", + "provider": "pants" + }, + "pants.backend.experimental.python.typecheck.pyright": { + "description": "Static type checker for Python, running on NodeJS.\n\nSee https://github.com/Microsoft/pyright for details.", + "enabled": false, + "name": "pants.backend.experimental.python.typecheck.pyright", + "provider": "pants" + }, + "pants.backend.experimental.python.typecheck.pytype": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python.typecheck.pytype", + "provider": "pants" + }, + "pants.backend.experimental.rust": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.rust", + "provider": "pants" + }, + "pants.backend.experimental.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala", + "provider": "pants" + }, + "pants.backend.experimental.scala.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.scala.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.scala.lint.scalafmt": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala.lint.scalafmt", + "provider": "pants" + }, + "pants.backend.experimental.swift": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.swift", + "provider": "pants" + }, + "pants.backend.experimental.terraform": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.terraform", + "provider": "pants" + }, + "pants.backend.experimental.terraform.lint.tfsec": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.terraform.lint.tfsec", + "provider": "pants" + }, + "pants.backend.experimental.tools.semgrep": { + "description": "Lightweight static analysis for many languages. Find bug variants with patterns that look like\nsource code.\n\nSee https://semgrep.dev/ for details.", + "enabled": true, + "name": "pants.backend.experimental.tools.semgrep", + "provider": "pants" + }, + "pants.backend.experimental.tools.workunit_logger": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.tools.workunit_logger", + "provider": "pants" + }, + "pants.backend.experimental.tools.yamllint": { + "description": "A configurable linter for YAML files.\n\nSee https://yamllint.readthedocs.io/ for details.", + "enabled": true, + "name": "pants.backend.experimental.tools.yamllint", + "provider": "pants" + }, + "pants.backend.experimental.visibility": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.visibility", + "provider": "pants" + }, + "pants.backend.google_cloud_function.python": { + "description": "Create Google Cloud Functions from Python code.\n\nSee https://www.pantsbuild.org/docs/google-cloud-function-python.", + "enabled": true, + "name": "pants.backend.google_cloud_function.python", + "provider": "pants" + }, + "pants.backend.plugin_development": { + "description": "", + "enabled": true, + "name": "pants.backend.plugin_development", + "provider": "pants" + }, + "pants.backend.project_info": { + "description": "Information on your project, such as listing the targets in your project.", + "enabled": true, + "name": "pants.backend.project_info", + "provider": "pants" + }, + "pants.backend.python": { + "description": "Support for Python.\n\nSee https://www.pantsbuild.org/docs/python-backend.", + "enabled": true, + "name": "pants.backend.python", + "provider": "pants" + }, + "pants.backend.python.lint.autoflake": { + "description": "Autoformatter for removing unused Python imports.\n\nSee https://github.com/myint/autoflake for details.", + "enabled": true, + "name": "pants.backend.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.python.lint.bandit": { + "description": "Security linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://bandit.readthedocs.io/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.bandit", + "provider": "pants" + }, + "pants.backend.python.lint.black": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://black.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.black", + "provider": "pants" + }, + "pants.backend.python.lint.docformatter": { + "description": "Python autoformatter for PEP257 docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/myint/docformatter.", + "enabled": true, + "name": "pants.backend.python.lint.docformatter", + "provider": "pants" + }, + "pants.backend.python.lint.flake8": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://flake8.pycqa.org/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.flake8", + "provider": "pants" + }, + "pants.backend.python.lint.isort": { + "description": "Autoformatter for Python import statements.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://pycqa.github.io/isort/.", + "enabled": true, + "name": "pants.backend.python.lint.isort", + "provider": "pants" + }, + "pants.backend.python.lint.pydocstyle": { + "description": "Static analysis tool for checking compliance with Python docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttp://www.pydocstyle.org/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.pydocstyle", + "provider": "pants" + }, + "pants.backend.python.lint.pylint": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://www.pylint.org.", + "enabled": true, + "name": "pants.backend.python.lint.pylint", + "provider": "pants" + }, + "pants.backend.python.lint.pyupgrade": { + "description": "https://github.com/asottile/pyupgrade.\n\nA tool to automatically upgrade syntax for newer versions of the language.", + "enabled": true, + "name": "pants.backend.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.python.lint.yapf": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/google/yapf .", + "enabled": true, + "name": "pants.backend.python.lint.yapf", + "provider": "pants" + }, + "pants.backend.python.mixed_interpreter_constraints": { + "description": "", + "enabled": true, + "name": "pants.backend.python.mixed_interpreter_constraints", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv.custom_install": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv.custom_install", + "provider": "pants" + }, + "pants.backend.python.typecheck.mypy": { + "description": "Type checker for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://mypy.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.typecheck.mypy", + "provider": "pants" + }, + "pants.backend.shell": { + "description": "", + "enabled": true, + "name": "pants.backend.shell", + "provider": "pants" + }, + "pants.backend.shell.lint.shellcheck": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shellcheck", + "provider": "pants" + }, + "pants.backend.shell.lint.shfmt": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shfmt", + "provider": "pants" + }, + "pants.backend.tools.preamble": { + "description": "", + "enabled": true, + "name": "pants.backend.tools.preamble", + "provider": "pants" + }, + "pants.backend.tools.taplo": { + "description": "", + "enabled": false, + "name": "pants.backend.tools.taplo", + "provider": "pants" + }, + "pants.backend.url_handlers.s3": { + "description": "", + "enabled": false, + "name": "pants.backend.url_handlers.s3", + "provider": "pants" + }, + "pants.core": { + "description": "Core rules for Pants to operate correctly.\n\nThese are always activated and cannot be disabled.", + "enabled": true, + "name": "pants.core", + "provider": "pants" + } + }, + "name_to_build_file_info": { + "PANTS_VERSION": { + "documentation": null, + "is_target": false, + "name": "PANTS_VERSION", + "signature": null + }, + "__defaults__": { + "documentation": "Provide default field values.\n\nLearn more https://www.pantsbuild.org/v2.20/docs/targets#field-default-values", + "is_target": false, + "name": "__defaults__", + "signature": "(*args: 'SetDefaultsT', ignore_unknown_fields: 'bool' = False, ignore_unknown_targets: 'bool' = False, **kwargs) -> 'None'" + }, + "__dependencies_rules__": { + "documentation": "Declare dependencies rules.", + "is_target": false, + "name": "__dependencies_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "__dependents_rules__": { + "documentation": "Declare dependents rules.", + "is_target": false, + "name": "__dependents_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "_generator_sources_helper": { + "documentation": null, + "is_target": true, + "name": "_generator_sources_helper", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfile": { + "documentation": null, + "is_target": true, + "name": "_lockfile", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfiles": { + "documentation": null, + "is_target": true, + "name": "_lockfiles", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "adhoc_tool": { + "documentation": null, + "is_target": true, + "name": "adhoc_tool", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "archive": { + "documentation": null, + "is_target": true, + "name": "archive", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "build_file_dir": { + "documentation": "Returns the path to the directory of the current BUILD file.\n\nThe returned value is an instance of `PurePath` to make path name manipulations easy.\n\nSee: https://docs.python.org/3/library/pathlib.html#pathlib.PurePath", + "is_target": false, + "name": "build_file_dir", + "signature": "() -> 'PurePath'" + }, + "code_quality_tool": { + "documentation": null, + "is_target": true, + "name": "code_quality_tool", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "deploy_jar": { + "documentation": null, + "is_target": true, + "name": "deploy_jar", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_environment": { + "documentation": null, + "is_target": true, + "name": "docker_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_image": { + "documentation": null, + "is_target": true, + "name": "docker_image", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "duplicate_rule": { + "documentation": "DeployJarDuplicateRule(pattern: 'str', action: 'str')", + "is_target": false, + "name": "duplicate_rule", + "signature": "(pattern: 'str', action: 'str') -> None" + }, + "env": { + "documentation": "Reference environment variable.", + "is_target": false, + "name": "env", + "signature": "(name: 'str', *args, **kwargs) -> 'Any'" + }, + "experimental_test_shell_command": { + "documentation": null, + "is_target": true, + "name": "experimental_test_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_go_package_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_go_package_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_java_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_python_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_resources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_scala_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "file": { + "documentation": null, + "is_target": true, + "name": "file", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "files": { + "documentation": null, + "is_target": true, + "name": "files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_binary": { + "documentation": null, + "is_target": true, + "name": "go_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_mod": { + "documentation": null, + "is_target": true, + "name": "go_mod", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_package": { + "documentation": null, + "is_target": true, + "name": "go_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_third_party_package": { + "documentation": null, + "is_target": true, + "name": "go_third_party_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_artifact": { + "documentation": null, + "is_target": true, + "name": "helm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_chart": { + "documentation": null, + "is_target": true, + "name": "helm_chart", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_deployment": { + "documentation": null, + "is_target": true, + "name": "helm_deployment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_test": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_tests": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "http_source": { + "documentation": "http_source(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')", + "is_target": false, + "name": "http_source", + "signature": "(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')" + }, + "java_source": { + "documentation": null, + "is_target": true, + "name": "java_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "java_sources": { + "documentation": null, + "is_target": true, + "name": "java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_test": { + "documentation": null, + "is_target": true, + "name": "junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_tests": { + "documentation": null, + "is_target": true, + "name": "junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_artifact": { + "documentation": null, + "is_target": true, + "name": "jvm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_exclude": { + "documentation": "JvmArtifactExclusion(group: 'str', artifact: 'str | None' = None)", + "is_target": false, + "name": "jvm_exclude", + "signature": "(group: 'str', artifact: 'str | None' = None) -> None" + }, + "jvm_war": { + "documentation": null, + "is_target": true, + "name": "jvm_war", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_test": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_tests": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_source": { + "documentation": null, + "is_target": true, + "name": "kotlin_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlinc_plugin": { + "documentation": null, + "is_target": true, + "name": "kotlinc_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "local_environment": { + "documentation": null, + "is_target": true, + "name": "local_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_document": { + "documentation": null, + "is_target": true, + "name": "openapi_document", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_documents": { + "documentation": null, + "is_target": true, + "name": "openapi_documents", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_source": { + "documentation": null, + "is_target": true, + "name": "openapi_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_sources": { + "documentation": null, + "is_target": true, + "name": "openapi_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pants_requirements": { + "documentation": null, + "is_target": true, + "name": "pants_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "parametrize": { + "documentation": "A builtin function/dataclass that can be used to parametrize Targets.\n\nParametrization is applied between TargetAdaptor construction and Target instantiation, which\nmeans that individual Field instances need not be aware of it.", + "is_target": false, + "name": "parametrize", + "signature": "(*args: 'str', **kwargs: 'Any') -> 'None'" + }, + "per_platform": { + "documentation": "An object containing differing homogeneous platform-dependent values.\n\nThe values should be evaluated for the execution environment, and not the host environment\n(I.e. it should be evaluated in a `rule` which requests `Platform`).\n\nExpected usage is roughly:\n\n```python\nclass MyFieldType(...):\n value = str | per_platform[str]\n\n @classmethod\n def compute_value( # type: ignore[override]\n cls,\n raw_value: Optional[Union[str, per_platform[str]]],\n address: Address,\n ) -> Optional[Union[str, per_platform[str]]]:\n if isinstance(raw_value, per_platform):\n # NOTE: Ensure the values are homogenous\n raw_value.check_types(str)\n\n return raw_value\n\n...\n\n@rule\nasync def my_rule(..., platform: Platform) -> ...:\n field_value = target[MyFieldType].value\n\n if isinstance(field_value, per_platform):\n field_value = field_value.get_value_for_platform(platform)\n\n ...\n```\n\nNOTE: Support for this object should be heavily weighed, as it would be innaproriate to use in\ncertain contexts (such as the `source` field in a `foo_source` target, where the intent is to\nsupport differing source files based on platform. The result would be that dependency inference\n(and therefore the dependencies field) wouldn't be knowable on the host, which is not something\nthe engine can support yet).", + "is_target": false, + "name": "per_platform", + "signature": "(linux_arm64: '_T | None' = None, linux_x86_64: '_T | None' = None, macos_arm64: '_T | None' = None, macos_x86_64: '_T | None' = None) -> None" + }, + "pex_binaries": { + "documentation": null, + "is_target": true, + "name": "pex_binaries", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pex_binary": { + "documentation": null, + "is_target": true, + "name": "pex_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pipenv_requirements": { + "documentation": null, + "is_target": true, + "name": "pipenv_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "poetry_requirements": { + "documentation": null, + "is_target": true, + "name": "poetry_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_source": { + "documentation": null, + "is_target": true, + "name": "protobuf_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_sources": { + "documentation": null, + "is_target": true, + "name": "protobuf_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pyoxidizer_binary": { + "documentation": null, + "is_target": true, + "name": "pyoxidizer_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_artifact": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "python_artifact", + "signature": "(**kwargs) -> None" + }, + "python_aws_lambda_function": { + "documentation": null, + "is_target": true, + "name": "python_aws_lambda_function", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_aws_lambda_layer": { + "documentation": null, + "is_target": true, + "name": "python_aws_lambda_layer", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_awslambda": { + "documentation": null, + "is_target": true, + "name": "python_awslambda", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_distribution": { + "documentation": null, + "is_target": true, + "name": "python_distribution", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_google_cloud_function": { + "documentation": null, + "is_target": true, + "name": "python_google_cloud_function", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirement": { + "documentation": null, + "is_target": true, + "name": "python_requirement", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirements": { + "documentation": null, + "is_target": true, + "name": "python_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_source": { + "documentation": null, + "is_target": true, + "name": "python_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_sources": { + "documentation": null, + "is_target": true, + "name": "python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test": { + "documentation": null, + "is_target": true, + "name": "python_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test_utils": { + "documentation": null, + "is_target": true, + "name": "python_test_utils", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_tests": { + "documentation": null, + "is_target": true, + "name": "python_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "relocated_files": { + "documentation": null, + "is_target": true, + "name": "relocated_files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "remote_environment": { + "documentation": null, + "is_target": true, + "name": "remote_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resource": { + "documentation": null, + "is_target": true, + "name": "resource", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resources": { + "documentation": null, + "is_target": true, + "name": "resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "run_shell_command": { + "documentation": null, + "is_target": true, + "name": "run_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_artifact": { + "documentation": null, + "is_target": true, + "name": "scala_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_exclude": { + "documentation": "ScalaArtifactExclusion(group: 'str', artifact: 'str | None' = None, crossversion: 'str' = 'binary')", + "is_target": false, + "name": "scala_exclude", + "signature": "(group: 'str', artifact: 'str | None' = None, crossversion: 'str' = 'binary') -> None" + }, + "scala_junit_test": { + "documentation": null, + "is_target": true, + "name": "scala_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_junit_tests": { + "documentation": null, + "is_target": true, + "name": "scala_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_source": { + "documentation": null, + "is_target": true, + "name": "scala_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_sources": { + "documentation": null, + "is_target": true, + "name": "scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalac_plugin": { + "documentation": null, + "is_target": true, + "name": "scalac_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_test": { + "documentation": null, + "is_target": true, + "name": "scalatest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_tests": { + "documentation": null, + "is_target": true, + "name": "scalatest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "setup_py": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "setup_py", + "signature": "(**kwargs) -> None" + }, + "shading_keep": { + "documentation": "JvmShadingKeepRule(pattern: 'str')", + "is_target": false, + "name": "shading_keep", + "signature": "(pattern: 'str') -> None" + }, + "shading_relocate": { + "documentation": "JvmShadingRelocateRule(package: 'str', into: 'str | None' = None)", + "is_target": false, + "name": "shading_relocate", + "signature": "(package: 'str', into: 'str | None' = None) -> None" + }, + "shading_rename": { + "documentation": "JvmShadingRenameRule(pattern: 'str', replacement: 'str')", + "is_target": false, + "name": "shading_rename", + "signature": "(pattern: 'str', replacement: 'str') -> None" + }, + "shading_zap": { + "documentation": "JvmShadingZapRule(pattern: 'str')", + "is_target": false, + "name": "shading_zap", + "signature": "(pattern: 'str') -> None" + }, + "shell_command": { + "documentation": null, + "is_target": true, + "name": "shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_source": { + "documentation": null, + "is_target": true, + "name": "shell_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_sources": { + "documentation": null, + "is_target": true, + "name": "shell_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_test": { + "documentation": null, + "is_target": true, + "name": "shunit2_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_tests": { + "documentation": null, + "is_target": true, + "name": "shunit2_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "stevedore_namespace": { + "documentation": "str(object='') -> str\nstr(bytes_or_buffer[, encoding[, errors]]) -> str\n\nCreate a new string object from the given object. If encoding or\nerrors is specified, then the object must expose a data buffer\nthat will be decoded using the given encoding and error handler.\nOtherwise, returns the result of object.__str__() (if defined)\nor repr(object).\nencoding defaults to sys.getdefaultencoding().\nerrors defaults to 'strict'.", + "is_target": false, + "name": "stevedore_namespace", + "signature": null + }, + "system_binary": { + "documentation": null, + "is_target": true, + "name": "system_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "target": { + "documentation": null, + "is_target": true, + "name": "target", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "terraform_deployment": { + "documentation": null, + "is_target": true, + "name": "terraform_deployment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "terraform_module": { + "documentation": null, + "is_target": true, + "name": "terraform_module", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_source": { + "documentation": null, + "is_target": true, + "name": "thrift_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_sources": { + "documentation": null, + "is_target": true, + "name": "thrift_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "vcs_version": { + "documentation": null, + "is_target": true, + "name": "vcs_version", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + } + }, + "name_to_goal_info": { + "check": { + "consumed_scopes": ["", "check", "environments-preview", "filter"], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "python-bootstrap", + "scc", + "system-binaries" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": ["", "dependents", "environments-preview", "filter"], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": ["", "dependencies", "environments-preview", "filter"], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "dependents": { + "consumed_scopes": ["", "dependents", "environments-preview", "filter"], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.core" + }, + "experimental-deploy": { + "consumed_scopes": [ + "", + "environments-preview", + "experimental-deploy", + "filter" + ], + "description": "Perform a deployment process.", + "is_implemented": true, + "name": "experimental-deploy", + "provider": "pants.core" + }, + "experimental-explorer": { + "consumed_scopes": [], + "description": "Run the Pants Explorer Web UI server.", + "is_implemented": true, + "name": "experimental-explorer", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": ["", "environments-preview", "export", "filter"], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": ["", "environments-preview", "filter"], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.core" + }, + "filedeps": { + "consumed_scopes": ["", "environments-preview", "filedeps", "filter"], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "fix": { + "consumed_scopes": ["", "environments-preview", "filter", "fix"], + "description": "Autofix source code.", + "is_implemented": true, + "name": "fix", + "provider": "pants.core" + }, + "fmt": { + "consumed_scopes": ["", "environments-preview", "filter", "fmt"], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": ["", "environments-preview", "generate-lockfiles"], + "description": "Generate lockfiles for third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "generate-snapshots": { + "consumed_scopes": ["", "environments-preview", "filter"], + "description": "Generate test snapshots.", + "is_implemented": true, + "name": "generate-snapshots", + "provider": "pants.core" + }, + "go-generate": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "go-generate", + "go-test", + "golang", + "system-binaries" + ], + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the `//go:generate` directives.\n\nSee https://go.dev/blog/generate for details.", + "is_implemented": true, + "name": "go-generate", + "provider": "pants.backend.experimental.go" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": ["", "environments-preview", "filter", "lint"], + "description": "Run linters/formatters/fixers in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": ["", "environments-preview", "filter", "list"], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": ["", "environments-preview", "filter"], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": ["", "environments-preview", "filter", "paths"], + "description": "List the paths between two addresses. Either address may represent a group of targets, e.g. `--from=src/app/main.py --to=src/library::`.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": ["", "environments-preview", "filter", "peek"], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": ["", "environments-preview", "filter", "publish"], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "python-dump-source-analysis": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "python", + "python-dump-source-analysis", + "python-infer", + "source" + ], + "description": "Dump source analysis for python_source targets.", + "is_implemented": true, + "name": "python-dump-source-analysis", + "provider": "pants.backend.experimental.python" + }, + "repl": { + "consumed_scopes": ["", "environments-preview", "filter", "repl"], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": ["roots", "source"], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": ["", "environments-preview", "filter", "tailor"], + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "system-binaries", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.20/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_rule_info": { + "construct_env_aware_scope_apache_thrift": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["ApacheThriftSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_apache_thrift", + "output_type": "EnvironmentAware", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_env_aware_scope_docker": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["DockerOptions", "EnvironmentTarget"], + "name": "construct_env_aware_scope_docker", + "output_type": "EnvironmentAware", + "provider": "pants.backend.docker" + }, + "construct_env_aware_scope_go_generate": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["GoGenerateGoalSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_go_generate", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_golang": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["GolangSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_golang", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_jvm": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["JvmSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_jvm", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.java" + }, + "construct_env_aware_scope_nodejs": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["NodeJS", "EnvironmentTarget"], + "name": "construct_env_aware_scope_nodejs", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_env_aware_scope_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["PexSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_pex", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["PythonBootstrapSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_python_bootstrap", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_native_code": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["PythonNativeCodeSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_python_native_code", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_shell_setup": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["ShellSetup", "EnvironmentTarget"], + "name": "construct_env_aware_scope_shell_setup", + "output_type": "EnvironmentAware", + "provider": "pants.backend.shell" + }, + "construct_env_aware_scope_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["SubprocessEnvironment", "EnvironmentTarget"], + "name": "construct_env_aware_scope_subprocess_environment", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_system_binaries": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["SystemBinariesSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_system_binaries", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_test": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["TestSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_test", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_scope_": { + "description": null, + "documentation": "Options to control the overall behavior of Pants.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_", + "output_type": "GlobalOptions", + "provider": "pants.core" + }, + "construct_scope_add_trailing_comma": { + "description": null, + "documentation": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_add_trailing_comma", + "output_type": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "construct_scope_anonymous_telemetry": { + "description": null, + "documentation": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + }, + "construct_scope_apache_thrift": { + "description": null, + "documentation": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_autoflake": { + "description": null, + "documentation": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_autoflake", + "output_type": "Autoflake", + "provider": "pants.backend.python.lint.autoflake" + }, + "construct_scope_bandit": { + "description": null, + "documentation": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_bandit", + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + }, + "construct_scope_black": { + "description": null, + "documentation": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_black", + "output_type": "Black", + "provider": "pants.core" + }, + "construct_scope_buf": { + "description": null, + "documentation": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_buf", + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "construct_scope_build_deprecations_fixer": { + "description": null, + "documentation": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for:\n\n - Renamed targets\n - Renamed fields", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_build_deprecations_fixer", + "output_type": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "construct_scope_buildifier": { + "description": null, + "documentation": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_buildifier", + "output_type": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "construct_scope_check": { + "description": null, + "documentation": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_check", + "output_type": "CheckSubsystem", + "provider": "pants.core" + }, + "construct_scope_count_loc": { + "description": null, + "documentation": "Count lines of code.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_count_loc", + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_coursier": { + "description": null, + "documentation": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_coursier", + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_coverage_py": { + "description": null, + "documentation": "Configuration for Python test coverage measurement.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_debug_adapter": { + "description": null, + "documentation": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_debug_adapter", + "output_type": "DebugAdapterSubsystem", + "provider": "pants.core" + }, + "construct_scope_debugpy": { + "description": null, + "documentation": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_debugpy", + "output_type": "DebugPy", + "provider": "pants.backend.python" + }, + "construct_scope_dependencies": { + "description": null, + "documentation": "List the dependencies of the input files/targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_dependencies", + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_dependents": { + "description": null, + "documentation": "List all targets that depend on any of the input files/targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_dependents", + "output_type": "DependentsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_docformatter": { + "description": null, + "documentation": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_docformatter", + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + }, + "construct_scope_docker": { + "description": null, + "documentation": "Options for interacting with Docker.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_docker", + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + }, + "construct_scope_dockerfile_parser": { + "description": null, + "documentation": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + }, + "construct_scope_download_terraform": { + "description": null, + "documentation": "Terraform (https://terraform.io)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_experimental_bsp": { + "description": null, + "documentation": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_experimental_bsp", + "output_type": "BSPGoal", + "provider": "pants.core" + }, + "construct_scope_experimental_deploy": { + "description": null, + "documentation": "Perform a deployment process.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_experimental_deploy", + "output_type": "DeploySubsystem", + "provider": "pants.core" + }, + "construct_scope_export": { + "description": null, + "documentation": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_export", + "output_type": "ExportSubsystem", + "provider": "pants.core" + }, + "construct_scope_export_codegen": { + "description": null, + "documentation": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_type": "ExportCodegenSubsystem", + "provider": "pants.core" + }, + "construct_scope_filedeps": { + "description": null, + "documentation": "List all source and BUILD files a target depends on.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_filedeps", + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_filter": { + "description": null, + "documentation": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_filter", + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_fix": { + "description": null, + "documentation": "Autofix source code.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_fix", + "output_type": "FixSubsystem", + "provider": "pants.core" + }, + "construct_scope_flake8": { + "description": null, + "documentation": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_flake8", + "output_type": "Flake8", + "provider": "pants.backend.python.lint.flake8" + }, + "construct_scope_fmt": { + "description": null, + "documentation": "Autoformat source code.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_fmt", + "output_type": "FmtSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_lockfiles": { + "description": null, + "documentation": "Generate lockfiles for third-party dependencies.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_snapshots": { + "description": null, + "documentation": "Generate test snapshots.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_generate_snapshots", + "output_type": "GenerateSnapshotsSubsystem", + "provider": "pants.core" + }, + "construct_scope_go_generate": { + "description": null, + "documentation": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the `//go:generate` directives.\n\nSee https://go.dev/blog/generate for details.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_go_generate", + "output_type": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_go_test": { + "description": null, + "documentation": "Options for Go tests.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_go_test", + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_gofmt": { + "description": null, + "documentation": "Gofmt-specific options.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_gofmt", + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_golang": { + "description": null, + "documentation": "Options for Golang support.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_golang", + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_google_java_format": { + "description": null, + "documentation": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "construct_scope_grpc_python_plugin": { + "description": null, + "documentation": "The gRPC Protobuf plugin for Python.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_hadolint": { + "description": null, + "documentation": "A linter for Dockerfiles.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_hadolint", + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + }, + "construct_scope_helm": { + "description": null, + "documentation": "The Helm command line (https://helm.sh)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm", + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_k8s_parser": { + "description": null, + "documentation": "Analyses K8S manifests rendered by Helm.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm_k8s_parser", + "output_type": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_post_renderer": { + "description": null, + "documentation": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm_post_renderer", + "output_type": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_unittest": { + "description": null, + "documentation": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/helm-unittest)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm_unittest", + "output_type": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_ipython": { + "description": null, + "documentation": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_ipython", + "output_type": "IPython", + "provider": "pants.backend.python" + }, + "construct_scope_isort": { + "description": null, + "documentation": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_isort", + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + }, + "construct_scope_jarjar": { + "description": null, + "documentation": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_jarjar", + "output_type": "JarJar", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_java_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_java_infer", + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_javac": { + "description": null, + "documentation": "The javac Java source compiler.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_javac", + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_junit": { + "description": null, + "documentation": "The JUnit test framework (https://junit.org)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_junit", + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_jvm": { + "description": null, + "documentation": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_jvm", + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_kotlin": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_kotlin", + "output_type": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlin_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Kotlin targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_kotlin_infer", + "output_type": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlinc": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_kotlinc", + "output_type": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_ktlint": { + "description": null, + "documentation": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_ktlint", + "output_type": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "construct_scope_lint": { + "description": null, + "documentation": "Run linters/formatters/fixers in check mode.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_lint", + "output_type": "LintSubsystem", + "provider": "pants.core" + }, + "construct_scope_list": { + "description": null, + "documentation": "Lists all targets matching the file or target arguments.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_list", + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_mypy": { + "description": null, + "documentation": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_mypy", + "output_type": "MyPy", + "provider": "pants.backend.python.typecheck.mypy" + }, + "construct_scope_mypy_protobuf": { + "description": null, + "documentation": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_nodejs": { + "description": null, + "documentation": "The Node.js Javascript runtime (including Corepack).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_nodejs", + "output_type": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_nodejs_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for javascript targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_nodejs_infer", + "output_type": "NodeJSInfer", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_openapi": { + "description": null, + "documentation": "The OpenAPI Specification (https://swagger.io/specification/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_openapi", + "output_type": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi" + }, + "construct_scope_openapi_format": { + "description": null, + "documentation": "Format an OpenAPI document by ordering, formatting and filtering fields (https://github.com/thim81/openapi-format).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_openapi_format", + "output_type": "OpenApiFormatSubsystem", + "provider": "pants.backend.experimental.openapi.lint.openapi_format" + }, + "construct_scope_package": { + "description": null, + "documentation": "Create a distributable package.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_package", + "output_type": "PackageSubsystem", + "provider": "pants.core" + }, + "construct_scope_paths": { + "description": null, + "documentation": "List the paths between two addresses. Either address may represent a group of targets, e.g. `--from=src/app/main.py --to=src/library::`.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_paths", + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_peek": { + "description": null, + "documentation": "Display BUILD target info", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_peek", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_pex": { + "description": null, + "documentation": "How Pants uses Pex to run Python subprocesses.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pex", + "output_type": "PexSubsystem", + "provider": "pants.core" + }, + "construct_scope_pex_binary_defaults": { + "description": null, + "documentation": "Default settings for creating PEX executables.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + }, + "construct_scope_pex_cli": { + "description": null, + "documentation": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_type": "PexCli", + "provider": "pants.core" + }, + "construct_scope_preamble": { + "description": null, + "documentation": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's `string.Template` substitutions): - $year: The current year (only used when actually writing the year to the file).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_preamble", + "output_type": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble" + }, + "construct_scope_protobuf_java_grpc": { + "description": null, + "documentation": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_protobuf_java_grpc", + "output_type": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "construct_scope_protoc": { + "description": null, + "documentation": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_protoc", + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_publish": { + "description": null, + "documentation": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_publish", + "output_type": "PublishSubsystem", + "provider": "pants.core" + }, + "construct_scope_py_constraints": { + "description": null, + "documentation": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "construct_scope_pydocstyle": { + "description": null, + "documentation": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pydocstyle", + "output_type": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "construct_scope_pylint": { + "description": null, + "documentation": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pylint", + "output_type": "Pylint", + "provider": "pants.backend.python.lint.pylint" + }, + "construct_scope_pyoxidizer": { + "description": null, + "documentation": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "construct_scope_pytest": { + "description": null, + "documentation": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pytest", + "output_type": "PyTest", + "provider": "pants.backend.python" + }, + "construct_scope_python": { + "description": null, + "documentation": "Options for Pants's Python backend.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python", + "output_type": "PythonSetup", + "provider": "pants.core" + }, + "construct_scope_python_bootstrap": { + "description": null, + "documentation": "Options used to locate Python interpreters.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_dump_source_analysis": { + "description": null, + "documentation": "Dump source analysis for python_source targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_dump_source_analysis", + "output_type": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_python_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_infer", + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_python_native_code": { + "description": null, + "documentation": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_type": "PythonNativeCodeSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_protobuf": { + "description": null, + "documentation": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.20/docs/protobuf-python.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_python_repos": { + "description": null, + "documentation": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_repos", + "output_type": "PythonRepos", + "provider": "pants.core" + }, + "construct_scope_python_thrift": { + "description": null, + "documentation": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_pytype": { + "description": null, + "documentation": "The Pytype utility for typechecking Python code (https://github.com/google/pytype).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pytype", + "output_type": "Pytype", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "construct_scope_pyupgrade": { + "description": null, + "documentation": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_type": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "construct_scope_regex_lint": { + "description": null, + "documentation": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_repl": { + "description": null, + "documentation": "Open a REPL with the specified code loadable.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_repl", + "output_type": "ReplSubsystem", + "provider": "pants.core" + }, + "construct_scope_roots": { + "description": null, + "documentation": "List the repo's registered source roots.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_roots", + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_ruff": { + "description": null, + "documentation": "The Ruff Python formatter (https://github.com/astral-sh/ruff).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_ruff", + "output_type": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "construct_scope_run": { + "description": null, + "documentation": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_run", + "output_type": "RunSubsystem", + "provider": "pants.core" + }, + "construct_scope_scala": { + "description": null, + "documentation": "Scala programming language", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scala", + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scala_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalac": { + "description": null, + "documentation": "The Scala compiler.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalac", + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalafmt": { + "description": null, + "documentation": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "construct_scope_scalapb": { + "description": null, + "documentation": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalapb", + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "construct_scope_scalatest": { + "description": null, + "documentation": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalatest", + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scc": { + "description": null, + "documentation": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scc", + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + }, + "construct_scope_semgrep": { + "description": null, + "documentation": "Lightweight static analysis for many languages. Find bug variants with patterns that look like source code. (https://semgrep.dev/)\n\nPants automatically finds config files (`.semgrep.yml`, `.semgrep.yaml`, and `.yml` or `.yaml` files within `.semgrep/` directories), and runs semgrep against all _targets_ known to Pants.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_semgrep", + "output_type": "SemgrepSubsystem", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "construct_scope_setup_py_generation": { + "description": null, + "documentation": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools": { + "description": null, + "documentation": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_setuptools", + "output_type": "Setuptools", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools_scm": { + "description": null, + "documentation": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_setuptools_scm", + "output_type": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_shell_setup": { + "description": null, + "documentation": "Options for Pants's Shell support.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + }, + "construct_scope_shell_test": { + "description": null, + "documentation": "Options for Pants' Shell test support.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shell_test", + "output_type": "ShellTestSubsystem", + "provider": "pants.backend.shell" + }, + "construct_scope_shellcheck": { + "description": null, + "documentation": "A linter for shell scripts.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + }, + "construct_scope_shfmt": { + "description": null, + "documentation": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shfmt", + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + }, + "construct_scope_shunit2": { + "description": null, + "documentation": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shunit2", + "output_type": "Shunit2", + "provider": "pants.backend.shell" + }, + "construct_scope_source": { + "description": null, + "documentation": "Configuration for roots of source trees.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_source", + "output_type": "SourceRootConfig", + "provider": "pants.core" + }, + "construct_scope_spectral": { + "description": null, + "documentation": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_spectral", + "output_type": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_stats": { + "description": null, + "documentation": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_stats", + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + }, + "construct_scope_subprocess_environment": { + "description": null, + "documentation": "Environment settings for forked subprocesses.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + }, + "construct_scope_system_binaries": { + "description": null, + "documentation": "System binaries related settings.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_system_binaries", + "output_type": "SystemBinariesSubsystem", + "provider": "pants.core" + }, + "construct_scope_tailor": { + "description": null, + "documentation": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_tailor", + "output_type": "TailorSubsystem", + "provider": "pants.core" + }, + "construct_scope_terraform_fmt": { + "description": null, + "documentation": "Terraform fmt options.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_hcl2_parser": { + "description": null, + "documentation": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_validate": { + "description": null, + "documentation": "Terraform validate options.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_test": { + "description": null, + "documentation": "Run tests.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_test", + "output_type": "TestSubsystem", + "provider": "pants.core" + }, + "construct_scope_thrift": { + "description": null, + "documentation": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_thrift", + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_twine": { + "description": null, + "documentation": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_twine", + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_update_build_files": { + "description": null, + "documentation": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.20/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_workunit_logger": { + "description": null, + "documentation": "Workunit Logger subsystem. Useful for debugging pants itself.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_workunit_logger", + "output_type": "WorkunitLogger", + "provider": "pants.backend.experimental.tools.workunit_logger" + }, + "construct_scope_yamllint": { + "description": null, + "documentation": "A linter for YAML files (https://yamllint.readthedocs.io)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_yamllint", + "output_type": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "construct_scope_yapf": { + "description": null, + "documentation": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_yapf", + "output_type": "Yapf", + "provider": "pants.core" + }, + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request": { + "description": "Running run_in_sandbox target", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunInSandboxRequest, {EnvironmentName: .., RunFieldSet: ..})", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., AdhocProcessRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateFilesFromAdhocToolRequest"], + "name": "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.adhoc.code_quality_tool.find_code_quality_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": ["CodeQualityToolAddressString"], + "name": "pants.backend.adhoc.code_quality_tool.find_code_quality_tool", + "output_type": "CodeQualityTool", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CodeQualityTool, CodeQualityToolAddressString, ..)", + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(RunInSandboxRequest, {EnvironmentName: .., RunFieldSet: ..})", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["CodeQualityToolAddressString"], + "name": "pants.backend.adhoc.code_quality_tool.hydrate_code_quality_tool", + "output_type": "CodeQualityToolBatchRunner", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.adhoc.code_quality_tool.process_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["CodeQualityToolBatch"], + "name": "pants.backend.adhoc.code_quality_tool.process_files", + "output_type": "FallibleProcessResult", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["SystemBinaryFieldSet", "EnvironmentAware"], + "name": "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function": { + "description": "Create Python AWS Lambda Function", + "documentation": null, + "input_gets": ["Get(BuiltPackage, BuildPythonFaaSRequest, ..)"], + "input_types": ["PythonAwsLambdaFieldSet"], + "name": "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer": { + "description": "Create Python AWS Lambda Layer", + "documentation": null, + "input_gets": ["Get(BuiltPackage, BuildPythonFaaSRequest, ..)"], + "input_types": ["PythonAwsLambdaLayerFieldSet"], + "name": "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RegisteredTargetTypes", "UnionMembership"], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix": { + "description": "Fix deprecated field names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RenameFieldsInFileRequest", "RenamedFieldTypes"], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RegisteredTargetTypes"], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix": { + "description": "Fix deprecated target type names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RenameTargetsInFileRequest", "RenamedTargetTypes"], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fmt.black.register.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Black"], + "name": "pants.backend.build_files.fmt.black.register.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.black" + }, + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt": { + "description": "Format with Buildifier", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Buildifier", "Platform"], + "name": "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "pants.backend.build_files.fmt.yapf.register.yapf_fmt": { + "description": "Format with Yapf", + "documentation": null, + "input_gets": [ + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Yapf"], + "name": "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BlackRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Black", "BuildFileOptions"], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BlackRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.black" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BuildifierRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Buildifier", "BuildFileOptions"], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BuildifierRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameFieldsInFilesRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BUILDDeprecationsFixer", + "BuildFileOptions" + ], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameFieldsInFilesRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameTargetsInFilesRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BUILDDeprecationsFixer", + "BuildFileOptions" + ], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameTargetsInFilesRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_YapfRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Yapf", "BuildFileOptions"], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_YapfRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.codegen.export_codegen_goal.export_codegen": { + "description": "`export-codegen` goal", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "FilteredTargets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_type": "ExportCodegen", + "provider": "pants.core" + }, + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf": { + "description": "Generate Go source files from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets": { + "description": "Map import paths for all Go Protobuf targets.", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "ProtobufGoModuleImportPathsMappingsHook", + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": ["GoCodegenBuildProtobufRequest"], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "PackageAnalyzerSetup", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProtobufJavaRuntimeForResolve, ProtobufJavaRuntimeForResolveRequest, ..)", + "Get(ProtobufJavaGrpcRuntimeForResolve, ProtobufJavaGrpcRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferProtobufJavaRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaGrpcRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "output_type": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "output_type": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GrpcJavaToolLockfileSentinel", + "JavaProtobufGrpcSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf": { + "description": "Generate Java from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc", + "ProtobufJavaGrpcPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GrpcJavaToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["Platform"], + "name": "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "output_type": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "BufSubsystem"], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format": { + "description": "Format with buf format", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "BufSubsystem", "DiffBinary", "Platform"], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_type": "FixResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "BufSubsystem"], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf": { + "description": "Lint with buf lint", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "BufSubsystem", "Platform"], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_type": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies": { + "description": "Inferring Protobuf dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["InferProtobufDependencies", "ProtobufMapping", "Protoc"], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files": { + "description": "Creating map of Protobuf file names to Protobuf targets", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": ["AllProtobufTargets"], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules": { + "description": "Creating map of Protobuf targets to generated Python modules", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "PythonInferSubsystem" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf": { + "description": "Generate Python from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaPBRuntimeForResolve, ScalaPBRuntimeForResolveRequest, ..)" + ], + "input_types": ["InferScalaPBRuntimeDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPBRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "output_type": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf": { + "description": "Generate Scala from Protobuf", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalapbcToolLockfileSentinel", "ScalaPBSubsystem"], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": ["MaterializeJvmPluginRequest"], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["MaterializeJvmPluginsRequest"], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["ScalaPBSubsystem", "InternalJdk"], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.tailor.find_putative_targets": { + "description": "Determine candidate Protobuf targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets": { + "description": "Find all Protobuf targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GeneratorSettingsRequest", "Protoc"], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules": { + "description": "Creating map of Thrift targets to generated Python modules", + "documentation": null, + "input_gets": ["Get(ParsedThrift, ParsedThriftRequest, ..)"], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "PythonInferSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift": { + "description": "Generate Python from Thrift", + "documentation": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["GenerateThriftSourcesRequest", "ApacheThriftSetup"], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem", + "EnvironmentAware", + "EnvironmentTarget" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies": { + "description": "Inferring Thrift dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files": { + "description": "Creating map of Thrift file names to Thrift targets", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": ["AllThriftTargets"], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets": { + "description": "Determine candidate Thrift targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets": { + "description": "Find all Thrift targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GeneratorSettingsRequest", "ThriftSubsystem"], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["ParsedThriftRequest"], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.docker.goals.package_image.build_docker_image": { + "description": null, + "documentation": "Build a Docker image using `docker build`.", + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "DockerPackageFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "KeepSandboxes", + "UnionMembership" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.publish.push_docker_images": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerRunFieldSet", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.tailor.find_putative_targets": { + "description": "Determine candidate Docker targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.lint.hadolint.rules.run_hadolint": { + "description": "Lint with Hadolint", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "Hadolint", "Platform"], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_type": "LintResult", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": ["DockerfileInfoRequest"], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["DockerfileParser"], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": ["Get(Process, VenvPexProcess, ..)"], + "input_types": ["DockerfileParseRequest", "ParserSetup"], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.target_types.all_docker_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.docker.target_types.all_docker_targets", + "output_type": "AllDockerImageTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies": { + "description": null, + "documentation": "Inspects the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": ["InferDockerDependencies", "AllPackageableTargets"], + "name": "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.get_docker": { + "description": "Finding the `docker` binary and related tooling", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": ["DockerOptions", "EnvironmentAware"], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_args.docker_build_args": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DockerBuildArgsRequest", "DockerOptions"], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": ["DockerBuildContextRequest"], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GenerateDockerContextFiles"], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile": { + "description": null, + "documentation": null, + "input_gets": ["Get(Snapshot, CreateDigest, ..)"], + "input_types": ["GenerateDockerfileRequest"], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)" + ], + "input_types": [ + "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.go_sources.load_go_binary.setup_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": ["LoadedGoBinaryRequest", "GoRoot"], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.check.check_go": { + "description": "Check Go compilation", + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": ["GoCheckRequest"], + "name": "pants.backend.go.goals.check.check_go", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.go_generate": { + "description": "`go-generate` goal", + "documentation": null, + "input_gets": [ + "Get(RunPackageGeneratorsResult, RunPackageGeneratorsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["Targets", "Workspace"], + "name": "pants.backend.go.goals.generate.go_generate", + "output_type": "GoGenerateGoal", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.merge_digests_with_overwrite": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["OverwriteMergeDigests"], + "name": "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "output_type": "Digest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.run_go_package_generators": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, OverwriteMergeDigests, ..)" + ], + "input_types": [ + "RunPackageGeneratorsRequest", + "GoRoot", + "EnvironmentAware" + ], + "name": "pants.backend.go.goals.generate.run_go_package_generators", + "output_type": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.package_binary.package_go_binary": { + "description": "Package Go binary", + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["GoBinaryFieldSet"], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.create_go_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": ["Get(BuiltPackage, PackageFieldSet, ..)"], + "input_types": ["GoBinaryFieldSet"], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_package_target": { + "description": null, + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": ["FindPutativeGoPackageTargetRequest", "AllOwnedSources"], + "name": "pants.backend.go.goals.tailor.find_putative_go_package_target", + "output_type": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_targets": { + "description": "Determine candidate Go targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FindPutativeGoPackageTargetResult, FindPutativeGoPackageTargetRequest, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources", + "GolangSubsystem" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.prepare_go_test_binary": { + "description": "Prepare Go test binary", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(GenerateCoverageSetupCodeResult, GenerateCoverageSetupCodeRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": ["PrepareGoTestBinaryRequest", "PackageAnalyzerSetup"], + "name": "pants.backend.go.goals.test.prepare_go_test_binary", + "output_type": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.run_go_tests": { + "description": "Test with Go", + "documentation": null, + "input_gets": [ + "Get(FalliblePrepareGoTestBinaryResult, PrepareGoTestBinaryRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "GoTestSubsystem", + "TestExtraEnv", + "GoRoot" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.lint.gofmt.rules.gofmt_fmt": { + "description": "Format with gofmt", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "GofmtSubsystem", "GoRoot"], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.generate_targets_from_go_mod": { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "documentation": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": ["GenerateTargetsFromGoModRequest", "UnionMembership"], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_map_import_paths_by_module": { + "description": "Analyze and map Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis": { + "description": "Analyze Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMappings, GoModuleImportPathsMappingsHook, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.backend.go.target_type_rules.go_merge_import_paths_analysis", + "output_type": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_dependencies": { + "description": "Infer dependencies for first-party Go packages", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": ["InferGoPackageDependenciesRequest"], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies": { + "description": "Infer dependencies for third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": ["InferGoThirdPartyPackageDependenciesRequest"], + "name": "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.map_import_paths_to_packages": { + "description": "Map Go targets owned by module to import paths", + "documentation": null, + "input_gets": [], + "input_types": [ + "GoImportPathMappingRequest", + "AllGoModuleImportPathsMappings" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_type": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["AssembleGoAssemblyFilesRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "output_type": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["GenerateAssemblySymabisRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "output_type": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary": { + "description": "Determine first-party package used by `go_binary` target", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["GoBinaryMainPackageRequest"], + "name": "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": ["InferGoBinaryMainDependencyRequest"], + "name": "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "GoBuildOptionsFromTargetRequest", + "GoRoot", + "GolangSubsystem", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "output_type": "GoBuildOptions", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.build_go_package": { + "description": "Compile with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(ApplyCodeCoverageResult, ApplyCodeCoverageRequest, ..)", + "Get(CheckForGolangAssemblyResult, CheckForGolangAssemblyRequest, ..)", + "Get(CGoCompileResult, CGoCompileRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleGenerateAssemblySymabisResult, GenerateAssemblySymabisRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(FallibleAssembleGoAssemblyFilesResult, AssembleGoAssemblyFilesRequest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["BuildGoPackageRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly": { + "description": null, + "documentation": "Return true if any of the given `s_files` look like it could be a Golang-format assembly\nlanguage file.\n\nThis is used by the cgo rules as a heuristic to determine if the user is passing Golang assembly\nformat instead of gcc assembly format.", + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["CheckForGolangAssemblyRequest", "SetupAsmCheckBinary"], + "name": "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "output_type": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id": { + "description": null, + "documentation": null, + "input_gets": ["Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)"], + "input_types": ["GoCompileActionIdRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.render_embed_config": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["RenderEmbedConfigRequest"], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.required_built_go_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FallibleBuiltGoPackage"], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "output_type": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FallibleBuildGoPackageRequest"], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["_ResolveStdlibEmbedConfigRequest"], + "name": "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "output_type": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request": { + "description": "Set up Go compilation request", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(_ResolveStdlibEmbedConfigResult, _ResolveStdlibEmbedConfigRequest, ..)" + ], + "input_types": ["BuildGoPackageRequestForStdlibRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.cgo_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CGoPkgConfigFlagsResult, CGoPkgConfigFlagsRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(BashBinary)", + "Get(CGoCompilerWrapperScript)", + "Get(SetupCompilerCmdResult, SetupCompilerCmdRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": ["CGoCompileRequest", "GoRoot", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.cgo.cgo_compile_request", + "output_type": "CGoCompileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["CheckCompilerSupportsFlagRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "output_type": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": [], + "name": "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "output_type": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.setup_compiler_cmd": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CheckCompilerSupportsOptionResult, CheckCompilerSupportsFlagRequest, ..)" + ], + "input_types": ["SetupCompilerCmdRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "output_type": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path": { + "description": null, + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["CGoBinaryPathRequest", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "output_type": "BinaryPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["CGoPkgConfigFlagsRequest"], + "name": "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "output_type": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["GenerateCoverageSetupCodeRequest"], + "name": "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "output_type": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(ApplyCodeCoverageToFileResult, ApplyCodeCoverageToFileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ApplyCodeCoverageRequest"], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "output_type": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["ApplyCodeCoverageToFileRequest"], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "output_type": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": ["RenderGoCoverageProfileToHtmlRequest"], + "name": "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "output_type": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports": { + "description": "Merge Go coverage data", + "documentation": null, + "input_gets": [ + "Get(RenderGoCoverageReportResult, RenderGoCoverageReportRequest, ..)" + ], + "input_types": ["GoCoverageDataCollection"], + "name": "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(RenderGoCoverageProfileToHtmlResult, RenderGoCoverageProfileToHtmlRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "RenderGoCoverageReportRequest", + "DistDir", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "output_type": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["FirstPartyPkgAnalysisRequest", "PackageAnalyzerSetup"], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": ["FirstPartyPkgImportPathRequest"], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["FirstPartyPkgDigestRequest"], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(PathEnvironmentVariable)" + ], + "input_types": ["GolangSubsystem", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "output_type": "GoBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.determine_go_mod_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["GoModInfoRequest"], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets": { + "description": "Find all `go_mod` targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllUnexpandedTargets"], + "name": "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "output_type": "AllGoModTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod": { + "description": null, + "documentation": null, + "input_gets": ["Get(UnexpandedTargets, RawSpecs, ..)"], + "input_types": ["NearestAncestorGoModRequest"], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "output_type": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_owning_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(NearestAncestorGoModResult, NearestAncestorGoModRequest, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(Address, AddressInput, ..)" + ], + "input_types": ["OwningGoModRequest", "AllGoModTargets"], + "name": "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.goroot.setup_goroot": { + "description": "Find Go binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["GolangSubsystem", "GoBootstrap", "EnvironmentTarget"], + "name": "pants.backend.go.util_rules.goroot.setup_goroot", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltGoPackage, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["SdkImplicitLinkerDependenciesHook"], + "name": "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "output_type": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages": { + "description": "Analyze Go standard library packages.", + "documentation": null, + "input_gets": ["Get(ProcessResult, GoSdkProcess, ..)"], + "input_types": ["GoStdLibPackagesRequest"], + "name": "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "output_type": "GoStdLibPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_config.generate_import_config": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["ImportConfigRequest"], + "name": "pants.backend.go.util_rules.import_config.generate_import_config", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.link_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ImplicitLinkerDependencies, ImplicitLinkerDependenciesHook, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["LinkGoBinaryRequest", "LinkerSetup", "UnionMembership"], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.setup_go_linker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["BashBinary", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.link.setup_go_linker", + "output_type": "LinkerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer": { + "description": null, + "documentation": null, + "input_gets": ["Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)"], + "input_types": ["GoRoot"], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.compute_go_tool_id": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, GoSdkProcess, ..)"], + "input_types": ["GoSdkToolIDRequest"], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["GoRoot"], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.setup_go_sdk_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "EnvironmentAware", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.tests_analysis.generate_testmain": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["GenerateTestMainRequest"], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": ["AnalyzeThirdPartyModuleRequest", "PackageAnalyzerSetup"], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["AnalyzeThirdPartyPackageRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, GoSdkProcess, ..)"], + "input_types": ["ModuleDescriptorsRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages": { + "description": "Download and analyze all third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": ["AllThirdPartyPackagesRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.extract_package_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": ["ThirdPartyPkgAnalysisRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function": { + "description": "Create Python Google Cloud Function", + "documentation": null, + "input_gets": ["Get(BuiltPackage, BuildPythonFaaSRequest, ..)"], + "input_types": ["PythonGoogleCloudFunctionFieldSet"], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping": { + "description": null, + "documentation": null, + "input_gets": ["Get(HelmChartMetadata, HelmChartMetaSourceField, ..)"], + "input_types": ["AllHelmChartTargets"], + "name": "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "output_type": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata": { + "description": "Inferring Helm chart dependencies", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "InferHelmChartDependenciesRequest", + "FirstPartyHelmChartMapping", + "ThirdPartyHelmArtifactMapping", + "HelmSubsystem" + ], + "name": "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.analyse_deployment": { + "description": "Analyse Helm deployment", + "documentation": null, + "input_gets": [ + "Get(RenderedHelmFiles, HelmDeploymentRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ParsedKubeManifest, ParseKubeManifestRequest, ..)" + ], + "input_types": ["AnalyseHelmDeploymentRequest"], + "name": "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "output_type": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmDeploymentReport, AnalyseHelmDeploymentRequest, ..)", + "Get(MaybeAddress, AddressInput, ..)" + ], + "input_types": [ + "FirstPartyHelmDeploymentMappingRequest", + "AllDockerImageTargets" + ], + "name": "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "output_type": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies": { + "description": "Find the dependencies needed by a Helm deployment", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)" + ], + "input_types": ["InferHelmDeploymentDependenciesRequest"], + "name": "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)" + ], + "input_types": [ + "InferHelmUnitTestChartDependencyRequest", + "AllHelmChartTargets", + "AllAssetTargetsByPath" + ], + "name": "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.deploy.run_helm_deploy": { + "description": "Run Helm deploy process", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmPostRenderer, HelmDeploymentPostRendererRequest, ..)", + "Get(InteractiveProcess, HelmDeploymentRequest, ..)" + ], + "input_types": ["DeployHelmDeploymentFieldSet", "HelmSubsystem"], + "name": "pants.backend.helm.goals.deploy.run_helm_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.partition_helm_lint": { + "description": null, + "documentation": null, + "input_gets": ["Get(HelmChart, HelmChartRequest, ..)"], + "input_types": ["PartitionRequest"], + "name": "pants.backend.helm.goals.lint.partition_helm_lint", + "output_type": "Partitions", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.run_helm_lint": { + "description": "Lint Helm charts", + "documentation": null, + "input_gets": ["Get(FallibleProcessResult, HelmProcess, ..)"], + "input_types": ["Batch", "HelmSubsystem"], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.package.run_helm_package": { + "description": "Package Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["HelmPackageFieldSet"], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.publish.publish_helm_chart": { + "description": "Push Helm chart to OCI registries", + "documentation": null, + "input_gets": ["Get(Process, HelmProcess, ..)"], + "input_types": ["PublishHelmChartRequest", "HelmSubsystem"], + "name": "pants.backend.helm.goals.publish.publish_helm_chart", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.tailor.find_putative_helm_targets": { + "description": "Determine candidate Helm chart targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeHelmTargetsRequest", + "AllOwnedSources", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["HelmArtifact", "HelmSubsystem"], + "name": "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "output_type": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping": { + "description": null, + "documentation": null, + "input_gets": ["Get(ResolvedHelmArtifact, HelmArtifact, ..)"], + "input_types": ["AllHelmArtifactTargets"], + "name": "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "output_type": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch.fetch_helm_artifact": { + "description": "Fetch Helm artifact", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ResolvedHelmArtifact, HelmArtifact, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["FetchHelmArtifactRequest"], + "name": "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "output_type": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["HelmKubeParserSubsystem"], + "name": "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "output_type": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest": { + "description": "Parse Kubernetes resource manifest", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["ParseKubeManifestRequest", "_HelmKubeParserTool"], + "name": "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "output_type": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher": { + "description": "Configure Helm post-renderer", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupHelmPostRenderer", + "_HelmPostRendererTool", + "CatBinary" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "output_type": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool": { + "description": "Setup Helm post renderer binaries", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["HelmPostRendererSubsystem"], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "output_type": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestPluginBinding", + "HelmUnitTestSubsystem", + "Platform" + ], + "name": "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "output_type": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_artifact_targets", + "output_type": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_chart_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_chart_targets", + "output_type": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_deployment_targets", + "output_type": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_unittest_test_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "output_type": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmUnitTestSetup, HelmUnitTestSetupRequest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["HelmUnitTestFieldSet"], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "output_type": "GenerateSnapshotsResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.run_helm_unittest": { + "description": "Run Helm Unittest", + "documentation": null, + "input_gets": [ + "Get(HelmUnitTestSetup, HelmUnitTestSetupRequest, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["Batch", "TestSubsystem", "HelmUnitTestSubsystem"], + "name": "pants.backend.helm.test.unittest.run_helm_unittest", + "output_type": "TestResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.setup_helm_unittest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["HelmUnitTestSetupRequest", "HelmUnitTestSubsystem"], + "name": "pants.backend.helm.test.unittest.setup_helm_unittest", + "output_type": "HelmUnitTestSetup", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.create_chart_from_artifact": { + "description": "Compile third parth Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": ["FetchedHelmArtifact"], + "name": "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.find_chart_for_deployment": { + "description": "Find Helm deployment's chart", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)" + ], + "input_types": ["FindHelmDeploymentChart"], + "name": "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.get_helm_chart": { + "description": "Compile Helm chart", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["HelmChartRequest", "HelmSubsystem"], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["ParseHelmChartMetadataDigest"], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": ["HelmChartMetaSourceField"], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["HelmChartMetadata"], + "name": "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment": { + "description": "Prepare Helm deployment post-renderer", + "documentation": null, + "input_gets": [ + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)", + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)" + ], + "input_types": [ + "HelmDeploymentPostRendererRequest", + "UnionMembership", + "DockerOptions" + ], + "name": "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "output_type": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(Process, HelmProcess, ..)"], + "input_types": ["_HelmDeploymentProcessWrapper"], + "name": "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.render_helm_chart": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["RenderHelmChartRequest"], + "name": "pants.backend.helm.util_rules.renderer.render_helm_chart", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.run_renderer": { + "description": "Render Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["_HelmDeploymentProcessWrapper"], + "name": "pants.backend.helm.util_rules.renderer.run_renderer", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process": { + "description": "Prepare Helm deployment renderer", + "documentation": null, + "input_gets": [ + "Get(HelmChart, FindHelmDeploymentChart, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["HelmDeploymentRequest"], + "name": "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "output_type": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.find_chart_source_root": { + "description": "Detect Helm chart source root", + "documentation": null, + "input_gets": ["Get(HydratedSources, HydrateSourcesRequest, ..)"], + "input_types": ["HelmChartRootRequest"], + "name": "pants.backend.helm.util_rules.sources.find_chart_source_root", + "output_type": "HelmChartRoot", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.get_helm_source_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["HelmChartSourceFilesRequest"], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.all_helm_plugins": { + "description": null, + "documentation": null, + "input_gets": ["Get(HelmPlugin, ExternalHelmPluginBinding, ..)"], + "input_types": ["UnionMembership"], + "name": "pants.backend.helm.util_rules.tool.all_helm_plugins", + "output_type": "HelmPlugins", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.download_external_helm_plugin": { + "description": "Download external Helm plugin", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["ExternalHelmPluginRequest"], + "name": "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "output_type": "HelmPlugin", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.helm_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["HelmProcess", "HelmBinary", "HelmSubsystem"], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.setup_helm": { + "description": "Download and configure Helm", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": ["HelmSubsystem", "HelmPlugins", "Platform"], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.java.bsp.rules.bsp_java_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["JavaBSPCompileRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_java_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["JavaBSPResourcesRequest", "BuildRoot"], + "name": "pants.backend.java.bsp.rules.bsp_java_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_javac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": ["JavacOptionsParams"], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JavaBSPBuildTargetsMetadataRequest"], + "name": "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.handle_bsp_java_options_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["HandleJavacOptionsRequest", "BuildRoot"], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.compile.javac.compile_java_source": { + "description": "Compile with javac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "JvmSubsystem", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.backend.java.dependency_inference.java_parser.build_processors", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JavaParserToolLockfileSentinel"], + "name": "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["SourceFiles"], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis": { + "description": "Inferring Java dependencies and exports by source analysis", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis": { + "description": "Inferring Java dependencies by source analysis", + "documentation": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": ["InferJavaSourceDependencies"], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets": { + "description": "Find all Java targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols": { + "description": "Map all first party Java targets to their packages", + "documentation": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.check.javac_check": { + "description": "Check javac compilation", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["JavacCheckRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.java.goals.check.javac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.tailor.find_putative_targets": { + "description": "Determine candidate Java targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources", + "JavacSubsystem" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt": { + "description": "Format with Google Java Format", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "GoogleJavaFormatSubsystem", "InternalJdk"], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OwningNodePackage, OwningNodePackageRequest, ..)", + "Get(InferenceMetadata, PackageJsonSourceField, ..)", + "Get(NativeParsedJavascriptDependencies, NativeDependenciesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(NodePackageCandidateMap, RequestNodePackagesCandidateMap, ..)" + ], + "input_types": ["InferJSDependenciesRequest", "NodeJSInfer"], + "name": "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PackageJsonEntryPoints, PackageJsonSourceField, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": ["InferNodePackageDependenciesRequest", "NodeJSInfer"], + "name": "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages": { + "description": null, + "documentation": null, + "input_gets": ["Get(OwningNodePackage, OwningNodePackageRequest, ..)"], + "input_types": [ + "RequestNodePackagesCandidateMap", + "FirstPartyNodePackageTargets" + ], + "name": "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "output_type": "NodePackageCandidateMap", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PackageJsonImports"], + "name": "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata", + "output_type": "InferenceMetadata", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InstalledNodePackage, InstalledNodePackageRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["InstalledNodePackageRequest"], + "name": "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "output_type": "InstalledNodePackageWithSource", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.install_node_package.install_node_packages_for_address": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(NodeJsProjectEnvironment, NodeJSProjectEnvironmentRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InstalledNodePackageWithSource, InstalledNodePackageRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, NodeJsProjectEnvironmentProcess, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["InstalledNodePackageRequest", "UnionMembership"], + "name": "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "output_type": "InstalledNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.nodejs_project.find_node_js_projects": { + "description": null, + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "AllPackageJson", + "PnpmWorkspaces", + "NodeJS", + "UserChosenNodeJSResolveAliases" + ], + "name": "pants.backend.javascript.nodejs_project.find_node_js_projects", + "output_type": "AllNodeJSProjects", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment": { + "description": "Assembling nodejs project environment", + "documentation": null, + "input_gets": [ + "Get(ChosenNodeResolve, RequestNodeResolve, ..)", + "Get(OwningNodePackage, OwningNodePackageRequest, ..)" + ], + "input_types": ["NodeJSProjectEnvironmentRequest"], + "name": "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment", + "output_type": "NodeJsProjectEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, NodeJSToolProcess, ..)" + ], + "input_types": ["NodeJsProjectEnvironmentProcess"], + "name": "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.all_first_party_node_package_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.javascript.package_json.all_first_party_node_package_targets", + "output_type": "FirstPartyNodePackageTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.all_package_json": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedTargetGeneratorRequests, ResolveAllTargetGeneratorRequests, ..)", + "Get(PackageJsonForGlobs, PathGlobs, ..)" + ], + "input_types": [], + "name": "pants.backend.javascript.package_json.all_package_json", + "output_type": "AllPackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.all_package_json_names": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllPackageJson"], + "name": "pants.backend.javascript.package_json.all_package_json_names", + "output_type": "AllPackageJsonNames", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.find_owning_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": ["OwningNodePackageRequest"], + "name": "pants.backend.javascript.package_json.find_owning_package", + "output_type": "OwningNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.generate_node_package_targets": { + "description": null, + "documentation": null, + "input_gets": ["Get(PackageJson, PackageJsonSourceField, ..)"], + "input_types": [ + "GenerateNodePackageTargets", + "UnionMembership", + "AllPackageJsonNames" + ], + "name": "pants.backend.javascript.package_json.generate_node_package_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.package_json_for_source": { + "description": null, + "documentation": null, + "input_gets": ["Get(PackageJsonForGlobs, PathGlobs, ..)"], + "input_types": ["PackageJsonSourceField"], + "name": "pants.backend.javascript.package_json.package_json_for_source", + "output_type": "PackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.parse_package_json": { + "description": null, + "documentation": null, + "input_gets": ["Get(Snapshot, PathGlobs, ..)"], + "input_types": ["FileContent"], + "name": "pants.backend.javascript.package_json.parse_package_json", + "output_type": "PackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.pnpm_workspace_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["AllPackageJson"], + "name": "pants.backend.javascript.package_json.pnpm_workspace_files", + "output_type": "PnpmWorkspaces", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.read_package_jsons": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(PackageJson, FileContent, ..)" + ], + "input_types": ["PathGlobs"], + "name": "pants.backend.javascript.package_json.read_package_jsons", + "output_type": "PackageJsonForGlobs", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.script_entrypoints_for_source": { + "description": null, + "documentation": null, + "input_gets": ["Get(PackageJson, PackageJsonSourceField, ..)"], + "input_types": ["PackageJsonSourceField"], + "name": "pants.backend.javascript.package_json.script_entrypoints_for_source", + "output_type": "PackageJsonEntryPoints", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.subpath_imports_for_source": { + "description": null, + "documentation": null, + "input_gets": ["Get(PackageJson, PackageJsonSourceField, ..)"], + "input_types": ["PackageJsonSourceField"], + "name": "pants.backend.javascript.package_json.subpath_imports_for_source", + "output_type": "PackageJsonImports", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.resolve.resolve_for_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(OwningNodePackage, OwningNodePackageRequest, ..)" + ], + "input_types": ["RequestNodeResolve", "AllNodeJSProjects"], + "name": "pants.backend.javascript.resolve.resolve_for_package", + "output_type": "ChosenNodeResolve", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.resolve.resolve_to_first_party_node_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["NodeJSProjectResolves", "FirstPartyNodePackageTargets"], + "name": "pants.backend.javascript.resolve.resolve_to_first_party_node_package", + "output_type": "FirstPartyNodePackageResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.resolve.resolve_to_projects": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllNodeJSProjects", "UserChosenNodeJSResolveAliases"], + "name": "pants.backend.javascript.resolve.resolve_to_projects", + "output_type": "NodeJSProjectResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries": { + "description": "Finding Node.js distribution binaries.", + "documentation": null, + "input_gets": ["Get(DownloadedExternalTool, ExternalToolRequest, ..)"], + "input_types": ["NodeJS", "Platform", "_BinaryPathsPerVersion"], + "name": "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "output_type": "NodeJSBinaries", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version": { + "description": "Testing for Node.js binaries.", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["NodeJSBootstrap"], + "name": "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "output_type": "_BinaryPathsPerVersion", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.node_process_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["NodeJSBinaries", "EnvironmentAware"], + "name": "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "output_type": "NodeJSProcessEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(VersionManagerSearchPaths, VersionManagerSearchPathsRequest, ..)", + "Get(PathEnvironmentVariable)" + ], + "input_types": ["EnvironmentAware"], + "name": "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "output_type": "NodeJSBootstrap", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool": { + "description": "Preparing Corepack managed tool.", + "documentation": null, + "input_gets": ["Get(ProcessResult, Process, ..)"], + "input_types": [ + "CorepackToolRequest", + "NodeJSProcessEnvironment", + "NodeJS" + ], + "name": "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "output_type": "CorepackToolDigest", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CorepackToolDigest, CorepackToolRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["NodeJSToolProcess", "NodeJSProcessEnvironment"], + "name": "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["NodeJS"], + "name": "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases", + "output_type": "UserChosenNodeJSResolveAliases", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(NodeJS)", + "Get(Process, NodeJSToolProcess, ..)", + "Get(NodeJSProjectResolves)", + "Get(FirstPartyNodePackageResolves)", + "Get(InstalledNodePackage, InstalledNodePackageRequest, ..)", + "Get(Process, NodeJsProjectEnvironmentProcess, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["NodeJSToolRequest"], + "name": "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source": { + "description": "Compile with kotlinc", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(KotlincPluginTargetsForTarget, KotlincPluginsForTargetRequest, ..)", + "Get(KotlincPlugins, KotlincPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinSubsystem", + "KotlincSubsystem", + "CompileKotlinSourceRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlincPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "output_type": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "output_type": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["KotlincPluginsRequest"], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "output_type": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "KotlincPluginsForTargetRequest", + "AllKotlincPluginTargets", + "JvmSubsystem", + "KotlincSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "output_type": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": ["KotlinParserCompiledClassfiles", "SourceFiles"], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "output_type": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KotlinParserToolLockfileSentinel"], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": [ + "FallibleKotlinSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "output_type": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "output_type": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis": { + "description": "Inferring Kotlin dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferKotlinSourceDependencies", + "KotlinInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency": { + "description": "Infer dependency on Kotlin runtime artifacts for Kotlin targets.", + "documentation": null, + "input_gets": [ + "Get(KotlinRuntimeForResolve, KotlinRuntimeForResolveRequest, ..)" + ], + "input_types": ["InferKotlinRuntimeDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "output_type": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets": { + "description": "Find all Kotlin targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "output_type": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols": { + "description": "Map all first party Kotlin targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyKotlinTargetsMappingRequest", + "AllKotlinTargets", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.check.kotlinc_check": { + "description": "Check compilation for Kotlin", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["KotlincCheckRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.kotlin.goals.check.kotlinc_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.tailor.find_putative_targets": { + "description": "Determine candidate Kotlin targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeKotlinTargetsRequest", + "AllOwnedSources", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KtlintToolLockfileSentinel", "KtlintSubsystem"], + "name": "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt": { + "description": "Format with Ktlint", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KtlintToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "KtlintSubsystem", "InternalJdk"], + "name": "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency": { + "description": "Infer dependency on Kotlin Junit support artifact.", + "documentation": null, + "input_gets": [ + "Get(KotlinJunitLibrariesForResolve, KotlinJunitLibrariesForResolveRequest, ..)" + ], + "input_types": ["InferKotlinJunitTestDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinJunitLibrariesForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "output_type": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["InferOpenApiDocumentDependenciesRequest"], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["InferOpenApiSourceDependenciesRequest"], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.parse_openapi_sources": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": ["ParseOpenApiSources"], + "name": "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "output_type": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.goals.tailor.find_putative_targets": { + "description": "Determine candidate OpenAPI targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)" + ], + "input_types": [ + "PutativeOpenApiTargetsRequest", + "AllOwnedSources", + "OpenApiSubsystem" + ], + "name": "pants.backend.openapi.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format": { + "description": "Format with openapi-format", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, NodeJSToolRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "OpenApiFormatSubsystem"], + "name": "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "output_type": "FixResult", + "provider": "pants.backend.experimental.openapi.lint.openapi_format" + }, + "pants.backend.openapi.lint.spectral.rules.run_spectral": { + "description": "Lint with Spectral", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, NodeJSToolRequest, ..)" + ], + "input_types": ["Batch", "SpectralSubsystem"], + "name": "pants.backend.openapi.lint.spectral.rules.run_spectral", + "output_type": "LintResult", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + "pants.backend.project_info.count_loc.count_loc": { + "description": "`count-loc` goal", + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsPaths", + "Platform" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependencies.dependencies": { + "description": "`dependencies` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": ["Console", "Addresses", "DependenciesSubsystem"], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.dependents_goal": { + "description": "`dependents` goal", + "documentation": null, + "input_gets": ["Get(Dependents, DependentsRequest, ..)"], + "input_types": ["Addresses", "DependentsSubsystem", "Console"], + "name": "pants.backend.project_info.dependents.dependents_goal", + "output_type": "DependentsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.find_dependents": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DependentsRequest", "AddressToDependents"], + "name": "pants.backend.project_info.dependents.find_dependents", + "output_type": "Dependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.map_addresses_to_dependents": { + "description": "Map all targets to their dependents", + "documentation": null, + "input_gets": ["Get(Addresses, DependenciesRequest, ..)"], + "input_types": ["AllUnexpandedTargets"], + "name": "pants.backend.project_info.dependents.map_addresses_to_dependents", + "output_type": "AddressToDependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filedeps.file_deps": { + "description": "`filedeps` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": ["Console", "FiledepsSubsystem", "BuildRoot", "Addresses"], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filter_targets.filter_targets": { + "description": "`filter` goal", + "documentation": null, + "input_gets": [], + "input_types": ["Addresses", "FilterSubsystem", "Console"], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_roots.list_roots": { + "description": "`roots` goal", + "documentation": null, + "input_gets": [], + "input_types": ["Console", "RootsSubsystem", "AllSourceRoots"], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_type": "Roots", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_targets.list_targets": { + "description": "`list` goal", + "documentation": null, + "input_gets": ["Get(UnexpandedTargets, Addresses, ..)"], + "input_types": ["Addresses", "ListSubsystem", "Console"], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_type": "List", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.get_paths_between_root_and_destination": { + "description": "Get paths between root and destination.", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": ["RootDestinationPair"], + "name": "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "output_type": "SpecsPaths", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.get_paths_between_root_and_destinations": { + "description": null, + "documentation": null, + "input_gets": ["Get(SpecsPaths, RootDestinationPair, ..)"], + "input_types": ["RootDestinationsPair"], + "name": "pants.backend.project_info.paths.get_paths_between_root_and_destinations", + "output_type": "SpecsPathsCollection", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.paths": { + "description": "`paths` goal", + "documentation": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(SpecsPathsCollection, RootDestinationsPair, ..)" + ], + "input_types": ["Console", "PathsSubsystem"], + "name": "pants.backend.project_info.paths.paths", + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.get_target_data": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OptionalAddressFamily, AddressFamilyDir, ..)", + "Get(DependenciesRuleApplication, DependenciesRuleApplicationRequest, ..)" + ], + "input_types": ["UnexpandedTargets", "PeekSubsystem"], + "name": "pants.backend.project_info.peek.get_target_data", + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.peek": { + "description": "`peek` goal", + "documentation": null, + "input_gets": ["Get(TargetDatas, UnexpandedTargets, ..)"], + "input_types": ["Console", "PeekSubsystem", "UnexpandedTargets"], + "name": "pants.backend.project_info.peek.peek", + "output_type": "Peek", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.lint_with_regex_patterns": { + "description": "Lint with regex patterns", + "documentation": null, + "input_gets": ["Get(DigestContents, PathGlobs, ..)"], + "input_types": ["Batch", "RegexLintSubsystem"], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_type": "LintResult", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "RegexLintSubsystem"], + "name": "pants.backend.project_info.regex_lint.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.project_info" + }, + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects": { + "description": "Find all Python targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules": { + "description": "Creating map of first party Python targets to Python modules", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses": { + "description": "Creating map of third party targets to Python modules", + "documentation": null, + "input_gets": [], + "input_types": ["AllPythonTargets", "PythonSetup"], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(NativeParsedPythonDependencies, NativeDependenciesRequest, ..)" + ], + "input_types": ["ParsePythonDependenciesRequest", "PythonInferSubsystem"], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": ["UnownedImportPossibleOwnerRequest", "PythonSetup"], + "name": "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "output_type": "UnownedImportPossibleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies": { + "description": "Inferring dependencies on `conftest.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source": { + "description": "Inferring Python dependencies by analyzing source", + "documentation": null, + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies": { + "description": "Inferring dependencies on `__init__.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies": { + "description": null, + "documentation": "Find the owning targets for the parsed dependencies.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargetsByPath)" + ], + "input_types": [ + "ResolvedParsedPythonDependenciesRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "output_type": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points": { + "description": "Find all `python_distribution` targets with `stevedore_namespace` entry_points", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "output_type": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces": { + "description": "Find `python_distribution` targets with entry_points in selected `stevedore_namespace`s", + "documentation": null, + "input_gets": [], + "input_types": [ + "StevedoreNamespacesProviderTargetsRequest", + "StevedoreExtensions" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces", + "output_type": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies": { + "description": "Infer dependencies based on `stevedore_namespaces` field.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": ["InferStevedoreNamespacesDependencies"], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions": { + "description": "Create map of `stevedore_namespace` to `python_distribution` targets", + "documentation": null, + "input_gets": [], + "input_types": ["AllStevedoreExtensionTargets"], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions", + "output_type": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension": { + "description": "Generate entry_points.txt to imitate `python_distribution` installation.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(Paths, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["GenerateEntryPointsTxtFromStevedoreExtensionRequest"], + "name": "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["CoverageSubsystem"], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.generate_coverage_reports": { + "description": "Generate Pytest coverage reports", + "documentation": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "KeepSandboxes", + "DistDir" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.merge_coverage_data": { + "description": "Merge Pytest coverage data", + "documentation": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage": { + "description": null, + "documentation": null, + "input_gets": ["Get(VenvPex, PexRequest, ..)"], + "input_types": ["CoverageSubsystem"], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis": { + "description": "`python-dump-source-analysis` goal", + "documentation": null, + "input_gets": [ + "Get(PythonSourceAnalysis, PythonImportDependenciesInferenceFieldSet, ..)" + ], + "input_types": [ + "DumpPythonSourceAnalysisSubsystem", + "Targets", + "Console" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis", + "output_type": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single": { + "description": null, + "documentation": "Infer the dependencies for a single python fieldset, keeping all the intermediate results.", + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "PythonImportDependenciesInferenceFieldSet", + "PythonSetup" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "output_type": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.export.do_export": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(ProcessResult, PexProcess, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "VenvExportRequest", + "PexPEX", + "PexEnvironment", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.do_export", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EditableLocalDists, EditableLocalDistsRequest, ..)", + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "_ExportVenvForResolveRequest", + "PythonSetup", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "output_type": "MaybeExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenvs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeExportResult, _ExportVenvForResolveRequest, ..)" + ], + "input_types": ["ExportVenvsRequest", "ExportSubsystem"], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_type": "ExportResults", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.lockfile.determine_python_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KnownPythonUserResolveNamesRequest", "PythonSetup"], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.generate_lockfile": { + "description": "Generate Python lockfile", + "documentation": null, + "input_gets": [ + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "GenerateLockfilesSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonSyntheticLockfileTargetsRequest", "PythonSetup"], + "name": "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "output_type": "SyntheticAddressMaps", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GeneratePythonLockfile"], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.core" + }, + "pants.backend.python.goals.package_dists.package_python_dist": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_dists.package_python_dist", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request": { + "description": null, + "documentation": null, + "input_gets": ["Get(Pex, PexFromTargetsRequest, ..)"], + "input_types": ["PexFromTargetsRequestForBuiltPackage"], + "name": "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.package_pex_binary.package_pex_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)" + ], + "input_types": ["PexBinaryFieldSet", "PexBinaryDefaults"], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_type": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.publish.twine_upload": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.pytest_runner.debug_python_test": { + "description": "Set up Pytest to run interactively", + "documentation": null, + "input_gets": ["Get(TestSetup, TestSetupRequest, ..)"], + "input_types": ["Batch"], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.debugpy_python_test": { + "description": "Set up debugpy to run an interactive Pytest session", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch", + "DebugPy", + "DebugAdapterSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.partition_python_tests": { + "description": "Partition Pytest", + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "PythonSetup"], + "name": "pants.backend.python.goals.pytest_runner.partition_python_tests", + "output_type": "Partitions", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": ["AllPytestPluginSetupsRequest", "UnionMembership"], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_python_tests": { + "description": "Run Pytest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(ProcessResultWithRetries, ProcessWithRetries, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["Batch", "TestSubsystem", "GlobalOptions"], + "name": "pants.backend.python.goals.pytest_runner.run_python_tests", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(PexRequirementsInfo, PexRequirements, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_runtime_packages": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["RuntimePackagesPluginRequest"], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_ipython_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_python_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["PythonRepl", "PexEnvironment", "PythonSetup"], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexFromTargetsRequestForBuiltPackage, PexBinaryFieldSet, ..)", + "Get(BuiltPackage, PexFromTargetsRequestForBuiltPackage, ..)", + "Get(PythonExecutable, InterpreterConstraintsRequest, ..)" + ], + "input_types": ["PexBinaryFieldSet"], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)" + ], + "input_types": [ + "PythonRequirementFieldSet", + "PexEnvironment", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "DebugPy", + "DebugAdapterSubsystem", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["PythonSourceFieldSet", "PexEnvironment", "PythonSetup"], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["PythonSourceFieldSet", "PexEnvironment", "PythonSetup"], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.tailor.find_putative_targets": { + "description": "Determine candidate Python targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt": { + "description": "Format with add-trailing-comma", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "AddTrailingComma"], + "name": "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.autoflake.rules.autoflake_fix": { + "description": "Fix with Autoflake", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Autoflake"], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint": { + "description": "Lint with Bandit", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["Batch", "Bandit"], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.rules.partition_bandit": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Bandit", "PythonSetup"], + "name": "pants.backend.python.lint.bandit.rules.partition_bandit", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.black.rules.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Black"], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.rules.partition_black": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Black", "PythonSetup"], + "name": "pants.backend.python.lint.black.rules.partition_black", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.docformatter.rules.docformatter_fmt": { + "description": "Format with docformatter", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Docformatter", "KeepSandboxes"], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.flake8.rules.partition_flake8": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.partition_flake8", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.rules.run_flake8": { + "description": "Lint with Flake8", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["Batch", "Flake8", "Flake8FirstPartyPlugins"], + "name": "pants.backend.python.lint.flake8.rules.run_flake8", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["Flake8"], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.isort.rules.isort_fmt": { + "description": "Format with isort", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Isort", "KeepSandboxes"], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint": { + "description": "Lint with Pydocstyle", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["Batch", "Pydocstyle"], + "name": "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.backend.python.lint.pylint.rules.partition_pylint": { + "description": "Determine if necessary to partition Pylint input", + "documentation": null, + "input_gets": ["Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)"], + "input_types": [ + "PartitionRequest", + "Pylint", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.partition_pylint", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.run_pylint": { + "description": "Lint using Pylint", + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PexResolveInfo, Pex, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Pylint", + "PylintFirstPartyPlugins", + "PexEnvironment" + ], + "name": "pants.backend.python.lint.pylint.rules.run_pylint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["Pylint"], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix": { + "description": "Fix with pyupgrade", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "PyUpgrade"], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.backend.python.lint.ruff.rules.ruff_fix": { + "description": "Fix with ruff", + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, _RunRuffRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Ruff"], + "name": "pants.backend.python.lint.ruff.rules.ruff_fix", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.ruff_fmt": { + "description": "Format with ruff", + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, _RunRuffRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Ruff"], + "name": "pants.backend.python.lint.ruff.rules.ruff_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.ruff_lint": { + "description": "Lint with ruff", + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, _RunRuffRequest, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.python.lint.ruff.rules.ruff_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.run_ruff": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["_RunRuffRequest", "Ruff"], + "name": "pants.backend.python.lint.ruff.rules.run_ruff", + "output_type": "FallibleProcessResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.yapf.rules.yapf_fmt": { + "description": "Format with yapf", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Yapf"], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements": { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.python_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from requirements.txt or PEP 621 compliant pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints": { + "description": "`py-constraints` goal", + "documentation": null, + "input_gets": [ + "Get(AllTargets)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependents, DependentsRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary", + "Platform" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": ["Get(BuiltPackage, PackageFieldSet, ..)"], + "input_types": ["PyOxidizerFieldSet"], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GenerateTargetsFromPexBinaries", "UnionMembership"], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency": { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies": { + "description": null, + "documentation": "Infer dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_files_generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonResolveFieldDefaultFactoryRequest", "PythonSetup"], + "name": "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_pex_entry_point": { + "description": "Determining the entry point for a `pex_binary` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["ResolvePexEntryPointRequest"], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points": { + "description": "Determining the entry points for a `python_distribution` target", + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": ["ResolvePythonDistributionEntryPointsRequest"], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.validate_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": ["Get(WrappedTarget, WrappedTargetRequest, ..)"], + "input_types": ["PythonValidateDependenciesRequest", "PythonSetup"], + "name": "pants.backend.python.target_types_rules.validate_python_dependencies", + "output_type": "ValidatedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment": { + "description": "Get mypyc build environment", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)" + ], + "input_types": [ + "MyPycDistBuildEnvironmentRequest", + "MyPyFirstPartyPlugins", + "MyPyConfigFile", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "output_type": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions": { + "description": "Determine if necessary to partition MyPy input", + "documentation": null, + "input_gets": ["Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)"], + "input_types": ["MyPyRequest", "MyPy", "PythonSetup"], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck": { + "description": "Typecheck using MyPy", + "documentation": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": ["MyPyRequest", "MyPy"], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "BuildRoot", + "MyPy", + "PythonSetup", + "MkdirBinary", + "MktempBinary", + "CpBinary", + "MvBinary", + "LnBinary", + "GlobalOptions" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": ["MyPy"], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["MyPy"], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions": { + "description": "Determine if it is necessary to partition Pytype's input (interpreter_constraints and resolves)", + "documentation": null, + "input_gets": ["Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)"], + "input_types": ["PytypeRequest", "Pytype", "PythonSetup"], + "name": "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "output_type": "PytypePartitions", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck": { + "description": "Typecheck using Pytype", + "documentation": null, + "input_gets": [ + "Get(PytypePartitions, PytypeRequest, ..)", + "Get(CheckResult, PytypePartition, ..)" + ], + "input_types": ["PytypeRequest", "Pytype"], + "name": "pants.backend.python.typecheck.pytype.rules.pytype_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition": { + "description": "Pytype typecheck each partition based on its interpreter_constraints", + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["PytypePartition", "Pytype", "PexEnvironment"], + "name": "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": ["AncestorFilesRequest"], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.find_build_system": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, DigestSubset, ..)"], + "input_types": ["BuildSystemRequest", "Setuptools"], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.run_pep517_build": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["DistBuildRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.faas.build_python_faas": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RuntimePlatforms, RuntimePlatformsRequest, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PexVenv, PexVenvRequest, ..)" + ], + "input_types": ["BuildPythonFaaSRequest"], + "name": "pants.backend.python.util_rules.faas.build_python_faas", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": ["Get(CompletePlatforms, UnparsedAddressInputs, ..)"], + "input_types": ["PythonFaaSCompletePlatforms"], + "name": "pants.backend.python.util_rules.faas.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency": { + "description": "Inferring dependency from the python FaaS `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonFaaSHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.infer_runtime_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PythonFaaSCompletePlatforms, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["RuntimePlatformsRequest"], + "name": "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "output_type": "RuntimePlatforms", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.resolve_python_faas_handler": { + "description": "Determining the handler for a python FaaS target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["ResolvePythonFaaSHandlerRequest"], + "name": "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "output_type": "ResolvedPythonFaaSHandler", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.local_dists.build_local_dists": { + "description": "Building local distributions", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": ["LocalDistsPexRequest"], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists": { + "description": "Building editable local distributions (PEP 660)", + "documentation": null, + "input_gets": [ + "Get(LocalDistPEP660Wheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "EditableLocalDistsRequest", + "ResolveSortedPythonDistributionTargets", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "output_type": "EditableLocalDists", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions": { + "description": "Find all Python Distribution targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions", + "output_type": "AllPythonDistributionTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(PEP660BuildResult, DistBuildRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "output_type": "LocalDistPEP660Wheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build": { + "description": null, + "documentation": "Run our PEP 517 / PEP 660 wrapper script to generate an editable wheel.\n\nThe PEP 517 / PEP 660 wraper script is responsible for building the editable wheel.\nThe backend wrapper script, along with the commands that install the editable wheel,\nneed to conform to the following specs so that Pants is a PEP 660 compliant frontend,\na PEP 660 compliant backend, and that it builds a compliant wheel and install.\n\nNOTE: PEP 660 does not address the `.data` directory, so the wrapper ignores it.\n\nRelevant Specs:\n https://peps.python.org/pep-0517/\n https://peps.python.org/pep-0660/\n https://packaging.python.org/en/latest/specifications/platform-compatibility-tags/\n https://packaging.python.org/en/latest/specifications/recording-installed-packages/\n https://packaging.python.org/en/latest/specifications/direct-url-data-structure/\n https://packaging.python.org/en/latest/specifications/binary-distribution-format/", + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["DistBuildRequest", "PythonSetup", "BuildRoot"], + "name": "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "output_type": "PEP660BuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve": { + "description": "Associate resolves with all Python Distribution targets in project", + "documentation": null, + "input_gets": ["Get(OwnedDependencies, DependencyOwner, ..)"], + "input_types": ["AllPythonDistributionTargets", "PythonSetup"], + "name": "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "output_type": "ResolveSortedPythonDistributionTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": ["Get(SetupKwargs, SetupKwargsRequest, ..)"], + "input_types": ["ExportedTarget", "UnionMembership"], + "name": "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": ["GenerateSetupPyRequest"], + "name": "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.generate_chroot": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": ["DistBuildChrootRequest", "SetupPyGeneration"], + "name": "pants.backend.python.util_rules.package_dists.generate_chroot", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.generate_setup_py": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["GenerateSetupPyRequest"], + "name": "pants.backend.python.util_rules.package_dists.generate_setup_py", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_exporting_owner": { + "description": "Get exporting owner for target", + "documentation": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": ["OwnedDependency"], + "name": "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_owned_dependencies": { + "description": "Find all code to be published in the distribution", + "documentation": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": ["DependencyOwner", "UnionMembership"], + "name": "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_requirements": { + "description": "Compute distribution's 3rd party requirements", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.util_rules.package_dists.get_requirements", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": ["DistBuildChrootRequest", "UnionMembership"], + "name": "pants.backend.python.util_rules.package_dists.get_sources", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex.build_pex": { + "description": null, + "documentation": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(PexRequirementsInfo, PexRequirements, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": ["PexRequest", "PythonSetup", "PexSubsystem"], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_type": "BuildPexResult", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_optional_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(Pex, PexRequest, ..)"], + "input_types": ["OptionalPexRequest"], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_type": "OptionalPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(BuildPexResult, PexRequest, ..)"], + "input_types": ["PexRequest"], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_type": "Pex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_venv_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["VenvPexRequest", "BashBinary", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_type": "VenvPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, PexProcess, ..)"], + "input_types": ["PexPEX", "Pex"], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, VenvPexProcess, ..)"], + "input_types": ["VenvPex"], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["UnparsedAddressInputs"], + "name": "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": ["Get(CompletePlatforms, UnparsedAddressInputs, ..)"], + "input_types": ["PexCompletePlatformsField"], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.find_interpreter": { + "description": "Find Python interpreter for constraints", + "documentation": null, + "input_gets": [ + "Get(PythonExecutable, PythonProvider, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexSubsystem", + "EnvironmentTarget", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_type": "PythonExecutable", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.get_req_strings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": ["PexRequirements"], + "name": "pants.backend.python.util_rules.pex.get_req_strings", + "output_type": "PexRequirementsInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_pex_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["PexProcess", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_venv_pex_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["VenvPexProcess", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.wrap_venv_prex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PexRequest", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_type": "VenvPexRequest", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.download_pex_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(DownloadedExternalTool, ExternalToolRequest, ..)"], + "input_types": ["PexCli", "Platform"], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_type": "PexPEX", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonBuildStandaloneBinary", + "EnvironmentAware", + "GlobalOptions", + "PexSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_environment.find_pex_python": { + "description": "Prepare environment for running PEXes", + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBuildStandaloneBinary", + "PexSubsystem", + "EnvironmentAware", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_type": "PexEnvironment", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve": { + "description": null, + "documentation": null, + "input_gets": ["Get(TransitiveTargets, TransitiveTargetsRequest, ..)"], + "input_types": ["ChosenPythonResolveRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_type": "PexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, PathGlobs, ..)"], + "input_types": ["PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RequirementsPexRequest"], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": ["_RepositoryPexRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets": { + "description": null, + "documentation": null, + "input_gets": ["Get(TransitiveTargets, TransitiveTargetsRequest, ..)"], + "input_types": ["InterpreterConstraintsRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ResolvePexConfigRequest", + "PythonSetup", + "PythonRepos", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "output_type": "ResolvePexConfig", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Resolve", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "output_type": "Lockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.load_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["LoadedLockfileRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_type": "LoadedLockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_venv.pex_venv": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": ["PexVenvRequest"], + "name": "pants.backend.python.util_rules.pex_venv.pex_venv", + "output_type": "PexVenv", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.python_sources.prepare_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["PythonSourceFilesRequest", "UnionMembership"], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.python_sources.strip_python_sources": { + "description": null, + "documentation": null, + "input_gets": ["Get(StrippedSourceFiles, SourceFiles, ..)"], + "input_types": ["PythonSourceFiles"], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets": { + "description": "Find all vcs_version targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "output_type": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeGitWorktree, GitWorktreeRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GeneratePythonFromSetuptoolsSCMRequest", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules": { + "description": null, + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "AllVCSVersionTargets", + "PythonSetup", + "PythonVCSVersionMappingMarker" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsMetadataRequest", + "BashBinary", + "JvmSubsystem", + "ScalaSubsystem", + "BuildRoot", + "ReadlinkBinary" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ScalaBSPCompileRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaMainClassesParams"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request", + "output_type": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ScalaBSPResourcesRequest", "BuildRoot"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaTestClassesParams"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request", + "output_type": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": ["ScalacOptionsParams"], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.collect_thirdparty_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ThirdpartyModulesRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "output_type": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "HandleScalacOptionsRequest", + "BuildRoot", + "Workspace", + "Scalac" + ], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ScalaBSPDependencyModulesRequest", "BuildRoot"], + "name": "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "output_type": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.compile_scala_source": { + "description": "Compile with scalac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.fetch_scala_library": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": ["ScalaLibraryRequest"], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.fetch_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ScalaPluginsRequest"], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName", + "FieldDefaults" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis": { + "description": "Inferring Scala dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency": { + "description": "Infer dependency on scala-library artifact for Scala target.", + "documentation": null, + "input_gets": [ + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": ["InferScalaLibraryDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies": { + "description": "Infer dependency on scala plugin artifacts for Scala target.", + "documentation": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": ["InferScalaPluginDependenciesRequest"], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "AnalyzeScalaSourceRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "SourceFilesRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "output_type": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": ["ScalaParserToolLockfileSentinel"], + "name": "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, {FallibleProcessResult: .., ProductDescription: ..})", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["FallibleScalaSourceDependencyAnalysisResult"], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets": { + "description": "Find all Scala targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols": { + "description": "Map all first party Scala targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.check.scalac_check": { + "description": "Check compilation for Scala", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["ScalacCheckRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.repl.create_scala_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ScalaRepl", "BashBinary", "ScalaSubsystem"], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.tailor.find_putative_targets": { + "description": "Determine candidate Scala targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files": { + "description": null, + "documentation": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": ["Get(Snapshot, PathGlobs, ..)"], + "input_types": ["GatherScalafmtConfigFilesRequest"], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalafmtToolLockfileSentinel", "ScalafmtSubsystem"], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": ["PartitionRequest", "ScalafmtSubsystem"], + "name": "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt": { + "description": "Format with scalafmt", + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "InternalJdk", "ScalafmtSubsystem"], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.resolve.artifact.scala_artifact_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": ["ScalaArtifactClasspathEntryRequest"], + "name": "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.generate_jvm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateJvmArtifactForScalaTargets", + "JvmSubsystem", + "ScalaSubsystem", + "UnionMembership" + ], + "name": "pants.backend.scala.target_types.generate_jvm_artifact_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.scala_settings_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaInferSubsystem", "ScalaSettingsRequest"], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalatestToolLockfileSentinel", "Scalatest"], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.run_scalatest_test": { + "description": "Run Scalatest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["TestSubsystem", "Batch"], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaArtifactsForVersionRequest"], + "name": "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version", + "output_type": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.shell.dependency_inference.find_all_shell_targets": { + "description": "Find all Shell targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.infer_shell_dependencies": { + "description": "Inferring Shell dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": ["InferShellDependencies", "ShellMapping", "ShellSetup"], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.map_shell_files": { + "description": "Creating map of Shell file names to Shell targets", + "documentation": null, + "input_gets": [], + "input_types": ["AllShellTargets"], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.parse_shell_imports": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["ParseShellImportsRequest", "Shellcheck", "Platform"], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.tailor.find_putative_targets": { + "description": "Determine candidate shell targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources", + "ShellSetup" + ], + "name": "pants.backend.shell.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.test.test_shell_command": { + "description": "Test with shell command", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Process, ShellCommandProcessFromTargetRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "TestSubsystem", "TestExtraEnv"], + "name": "pants.backend.shell.goals.test.test_shell_command", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck": { + "description": "Lint with Shellcheck", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "Shellcheck", "Platform"], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_type": "LintResult", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt": { + "description": "Format with shfmt", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Shfmt", "Platform"], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell": { + "description": "Determine shunit2 shell", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["Shunit2RunnerRequest", "EnvironmentAware"], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2": { + "description": "Run tests with Shunit2", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "TestSubsystem", "GlobalOptions"], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test": { + "description": "Setup Shunit2 to run interactively", + "documentation": null, + "input_gets": ["Get(TestSetup, TestSetupRequest, ..)"], + "input_types": ["Batch"], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target": { + "description": "Setup shunit2", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "EnvironmentAware", + "TestSubsystem", + "TestExtraEnv", + "Shunit2", + "Platform" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ShellGeneratorSettingsRequest", "ShellSetup"], + "name": "pants.backend.shell.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Process, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(AdhocProcessResult, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_shell_command_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)" + ], + "input_types": ["BashBinary", "RunShellCommand"], + "name": "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox": { + "description": "Running shell command", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., ShellCommandProcessFromTargetRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateFilesFromShellCommandRequest"], + "name": "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + }, + "pants.backend.terraform.dependencies.get_terraform_providers": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": ["TerraformDependenciesRequest"], + "name": "pants.backend.terraform.dependencies.get_terraform_providers", + "output_type": "TerraformDependenciesResponse", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependencies.init_terraform": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(TerraformDependenciesResponse, TerraformDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["TerraformInitRequest"], + "name": "pants.backend.terraform.dependencies.init_terraform", + "output_type": "TerraformInitResponse", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["InferTerraformModuleDependenciesRequest"], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["TerraformHcl2Parser"], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources": { + "description": null, + "documentation": null, + "input_gets": ["Get(Process, VenvPexProcess, ..)"], + "input_types": ["ParseTerraformModuleSources", "ParserSetup"], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.check.terraform_check": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TerraformInitResponse, TerraformInitRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": ["TerraformCheckRequest", "TerraformValidateSubsystem"], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TerraformInitResponse, TerraformInitRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, TerraformProcess, ..)" + ], + "input_types": ["TerraformDeploymentRequest", "TerraformTool"], + "name": "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.deploy.run_terraform_deploy": { + "description": "Run Terraform deploy process", + "documentation": null, + "input_gets": ["Get(InteractiveProcess, TerraformDeploymentRequest, ..)"], + "input_types": ["DeployTerraformFieldSet"], + "name": "pants.backend.terraform.goals.deploy.run_terraform_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets": { + "description": "Determine candidate Terraform targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeTerraformTargetsRequest", + "TerraformTool", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourceFiles, SourceFilesRequest, ..)"], + "input_types": ["PartitionRequest", "TfFmtSubsystem"], + "name": "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt": { + "description": "Format with `terraform fmt`", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "TfFmtSubsystem"], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.target_types.all_terraform_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.terraform.target_types.all_terraform_deployment_targets", + "output_type": "AllTerraformDeploymentTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.tool.setup_terraform_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": ["TerraformProcess", "TerraformTool", "Platform"], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.tools.preamble.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "PreambleSubsystem"], + "name": "pants.backend.tools.preamble.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.preamble.rules.preamble_fmt": { + "description": "Add preambles", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["Batch", "PreambleSubsystem"], + "name": "pants.backend.tools.preamble.rules.preamble_fmt", + "output_type": "FixResult", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.semgrep.rules.all_semgrep_ignore_files": { + "description": null, + "documentation": null, + "input_gets": ["Get(Snapshot, PathGlobs, ..)"], + "input_types": [], + "name": "pants.backend.tools.semgrep.rules.all_semgrep_ignore_files", + "output_type": "SemgrepIgnoreFiles", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.semgrep.rules.find_all_semgrep_configs": { + "description": null, + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [], + "name": "pants.backend.tools.semgrep.rules.find_all_semgrep_configs", + "output_type": "AllSemgrepConfigs", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RelevantSemgrepConfigsRequest", "AllSemgrepConfigs"], + "name": "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs", + "output_type": "RelevantSemgrepConfigs", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.semgrep.rules.lint": { + "description": "Lint with Semgrep", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["Batch", "SemgrepSubsystem", "GlobalOptions"], + "name": "pants.backend.tools.semgrep.rules.lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.semgrep.rules.partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RelevantSemgrepConfigs, RelevantSemgrepConfigsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "SemgrepSubsystem", + "SemgrepIgnoreFiles" + ], + "name": "pants.backend.tools.semgrep.rules.partition", + "output_type": "Partitions", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.workunit_logger.rules.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["WorkunitLoggerCallbackFactoryRequest", "WorkunitLogger"], + "name": "pants.backend.tools.workunit_logger.rules.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.backend.experimental.tools.workunit_logger" + }, + "pants.backend.tools.yamllint.rules.gather_config_files": { + "description": null, + "documentation": "Gather yamllint configuration files.", + "input_gets": ["Get(Snapshot, PathGlobs, ..)"], + "input_types": ["YamllintConfigFilesRequest", "Yamllint"], + "name": "pants.backend.tools.yamllint.rules.gather_config_files", + "output_type": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(YamllintConfigFiles, YamllintConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": ["PartitionRequest", "Yamllint"], + "name": "pants.backend.tools.yamllint.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.run_yamllint": { + "description": "Lint using yamllint", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, PexProcess, ..)" + ], + "input_types": ["Batch", "Yamllint"], + "name": "pants.backend.tools.yamllint.rules.run_yamllint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.bsp.rules.bsp_context": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["SessionValues"], + "name": "pants.bsp.rules.bsp_context", + "output_type": "BSPContext", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.bsp_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPCompileResult, CompileOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["CompileParams", "Workspace"], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_type": "CompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.compile_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPCompileResult, BSPCompileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileOneBSPTargetRequest", + "BSPContext", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.compile.compile_bsp_target", + "output_type": "BSPCompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.lifecycle.bsp_build_initialize": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["InitializeBuildParams", "UnionMembership"], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.bsp_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPResourcesResult, ResourcesForOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResourcesParams", "Workspace"], + "name": "pants.bsp.util_rules.resources.bsp_resources_request", + "output_type": "ResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.resources_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPResourcesResult, BSPResourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResourcesForOneBSPTargetRequest", "UnionMembership"], + "name": "pants.bsp.util_rules.resources.resources_bsp_target", + "output_type": "BSPResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": ["SourcesParams"], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_type": "SourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["DependencyModulesParams", "Workspace"], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DependencySourcesParams"], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_workspace_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateOneBSPBuildTargetResult, GenerateOneBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "BSPBuildTargets", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPBuildTargetsMetadataResult, BSPBuildTargetsMetadataRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "GenerateOneBSPBuildTargetRequest", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "output_type": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": ["MaterializeBuildTargetSourcesRequest", "BuildRoot"], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(BSPBuildTargetInternal, _ParseOneBSPMappingRequest, ..)" + ], + "input_types": ["BSPGoal"], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "output_type": "BSPBuildTargets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.parse_one_bsp_mapping": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["_ParseOneBSPMappingRequest"], + "name": "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses": { + "description": null, + "documentation": null, + "input_gets": ["Get(Targets, RawSpecsWithoutFileOwners, ..)"], + "input_types": [ + "BSPBuildTargetInternal", + "UnionMembership", + "FieldDefaults" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "output_type": "Targets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["BuildTargetIdentifier", "BSPBuildTargets"], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": ["BSPBuildTargetInternal"], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "output_type": "BSPBuildTargetSourcesInfo", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_one_dependency_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(BSPDependencyModulesResult, BSPDependencyModulesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResolveOneDependencyModuleRequest", "UnionMembership"], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + }, + "pants.core.goals.check.check": { + "description": "`check` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(CheckResults, {CheckRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "Workspace", + "FilteredTargets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_type": "Check", + "provider": "pants.core" + }, + "pants.core.goals.deploy.publish_process_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)" + ], + "input_types": ["_PublishProcessesForTargetRequest"], + "name": "pants.core.goals.deploy.publish_process_for_target", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.deploy.run_deploy": { + "description": "`experimental-deploy` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(DeployProcess, DeployFieldSet, ..)", + "Get(PublishProcesses, _PublishProcessesForTargetRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": ["Console", "DeploySubsystem"], + "name": "pants.core.goals.deploy.run_deploy", + "output_type": "Deploy", + "provider": "pants.core" + }, + "pants.core.goals.export.export": { + "description": "`export` goal", + "documentation": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir", + "ExportSubsystem" + ], + "name": "pants.core.goals.export.export", + "output_type": "Export", + "provider": "pants.core" + }, + "pants.core.goals.fix.convert_fix_result_to_lint_result": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FixResult"], + "name": "pants.core.goals.fix.convert_fix_result_to_lint_result", + "output_type": "LintResult", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix": { + "description": "`fix` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FixSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fix.fix", + "output_type": "Fix", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix_batch": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(FixResult, Batch, ..)" + ], + "input_types": ["_FixBatchRequest"], + "name": "pants.core.goals.fix.fix_batch", + "output_type": "_FixBatchResult", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt": { + "description": "`fmt` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_type": "Fmt", + "provider": "pants.core" + }, + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal": { + "description": "`generate-lockfiles` goal", + "documentation": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, {RequestedUserResolveNames: .., EnvironmentName: ..})", + "Get(WrappedGenerateLockfile, {GenerateToolLockfileSentinel: .., EnvironmentName: ..})", + "Get(GenerateLockfileResult, {GenerateLockfile: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem", + "ChosenLocalEnvironmentName", + "Console", + "GlobalOptions" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + }, + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(GenerateSnapshotsResult, {GenerateSnapshotsFieldSet: .., EnvironmentName: ..})" + ], + "input_types": ["EnvironmentAwareGenerateSnapshotsRequest"], + "name": "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "output_type": "GenerateSnapshotsResult", + "provider": "pants.core" + }, + "pants.core.goals.generate_snapshots.generate_snapshots": { + "description": "`generate-snapshots` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(GenerateSnapshotsResult, EnvironmentAwareGenerateSnapshotsRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["Workspace"], + "name": "pants.core.goals.generate_snapshots.generate_snapshots", + "output_type": "GenerateSnapshots", + "provider": "pants.core" + }, + "pants.core.goals.lint.lint": { + "description": "`lint` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(LintResult, Batch, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Specs", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_type": "Lint", + "provider": "pants.core" + }, + "pants.core.goals.package.environment_aware_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(BuiltPackage, {PackageFieldSet: .., EnvironmentName: ..})" + ], + "input_types": ["EnvironmentAwarePackageRequest"], + "name": "pants.core.goals.package.environment_aware_package", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.goals.package.find_all_packageable_targets": { + "description": "Find all packageable targets in project", + "documentation": null, + "input_gets": ["Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)"], + "input_types": ["AllTargets"], + "name": "pants.core.goals.package.find_all_packageable_targets", + "output_type": "AllPackageableTargets", + "provider": "pants.core" + }, + "pants.core.goals.package.package_asset": { + "description": "`package` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["Workspace", "DistDir"], + "name": "pants.core.goals.package.package_asset", + "output_type": "Package", + "provider": "pants.core" + }, + "pants.core.goals.publish.package_for_publish": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(PublishProcesses, {PublishRequest: .., EnvironmentName: ..})" + ], + "input_types": ["PublishProcessesRequest", "ChosenLocalEnvironmentName"], + "name": "pants.core.goals.publish.package_for_publish", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.publish.run_publish": { + "description": "`publish` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "PublishSubsystem", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.publish.run_publish", + "output_type": "Publish", + "provider": "pants.core" + }, + "pants.core.goals.repl.run_repl": { + "description": "`repl` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "ReplSubsystem", + "FilteredTargets", + "UnionMembership", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.repl.run_repl", + "output_type": "Repl", + "provider": "pants.core" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported_RunShellCommand": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RunShellCommand"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported_RunShellCommand", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["DeployJarFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["DockerRunFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.docker" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["GoBinaryFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["JavaFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["JvmArtifactFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["KotlinFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["PexBinaryFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["PyOxidizerFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["PythonRequirementFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["ScalaFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["SystemBinaryFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DeployJarFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DeployJarFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DeployJarFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DockerRunFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DockerRunFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DockerRunFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.docker" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_GoBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GoBinaryFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_GoBinaryFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JavaFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JavaFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JavaFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JvmArtifactFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JvmArtifactFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JvmArtifactFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_KotlinFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KotlinFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_KotlinFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PexBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PexBinaryFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PexBinaryFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PyOxidizerFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PyOxidizerFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PyOxidizerFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PythonRequirementFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonRequirementFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PythonRequirementFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_RunShellCommand": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RunShellCommand"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_RunShellCommand", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_ScalaFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_ScalaFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_SystemBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["SystemBinaryFieldSet"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_SystemBinaryFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.core.goals.run.run": { + "description": "`run` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(RunDebugAdapterRequest, RunFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "DebugAdapterSubsystem", + "GlobalOptions", + "Workspace", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.run.run", + "output_type": "Run", + "provider": "pants.core" + }, + "pants.core.goals.tailor.determine_all_owned_sources": { + "description": "Determine all files already owned by targets", + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["AllUnexpandedTargets"], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_type": "AllOwnedSources", + "provider": "pants.core" + }, + "pants.core.goals.tailor.edit_build_files": { + "description": "Edit BUILD files with new targets", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["EditBuildFilesRequest", "TailorSubsystem"], + "name": "pants.core.goals.tailor.edit_build_files", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + }, + "pants.core.goals.tailor.rename_conflicting_targets": { + "description": null, + "documentation": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": ["PutativeTargets", "AllUnexpandedTargets"], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + }, + "pants.core.goals.tailor.restrict_conflicting_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": ["PutativeTarget"], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + }, + "pants.core.goals.tailor.tailor": { + "description": "`tailor` goal", + "documentation": null, + "input_gets": [ + "Get(SpecsPaths, Specs, ..)", + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_type": "TailorGoal", + "provider": "pants.core" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_GoTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_GoTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_HelmUnitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_HelmUnitTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_JunitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_JunitTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ScalatestTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ScalatestTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ShellTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ShellTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_Shunit2TestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_Shunit2TestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_GoTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_GoTestRequest", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_HelmUnitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_HelmUnitTestRequest", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_ShellTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_ShellTestRequest", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test.build_runtime_package_dependencies": { + "description": "Build runtime package dependencies for tests", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)" + ], + "input_types": ["BuildPackageDependenciesRequest"], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + }, + "pants.core.goals.test.get_filtered_environment": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.goals.test.get_filtered_environment", + "output_type": "TestExtraEnv", + "provider": "pants.core" + }, + "pants.core.goals.test.run_tests": { + "description": "`test` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(Partitions, {PartitionRequest: .., EnvironmentName: ..})", + "Get(EnvironmentName, SingleEnvironmentNameRequest, ..)", + "Get(TestDebugRequest, {Batch: .., EnvironmentName: ..})", + "Get(TestDebugAdapterRequest, {Batch: .., EnvironmentName: ..})", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})", + "Get(TestResult, {Batch: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, {CoverageDataCollection: .., EnvironmentName: ..})", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "DebugAdapterSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.test.run_tests", + "output_type": "Test", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_black": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["FormatWithBlackRequest", "Black"], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_yapf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["FormatWithYapfRequest", "Yapf"], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields": { + "description": "Check for deprecated field type names", + "documentation": null, + "input_gets": ["Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)"], + "input_types": ["RenameDeprecatedFieldsRequest"], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets": { + "description": "Check for deprecated target type names", + "documentation": null, + "input_gets": ["Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)"], + "input_types": ["RenameDeprecatedTargetsRequest"], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.update_build_files": { + "description": "Update all BUILD files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership", + "Specs" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(VersionManagerSearchPaths, VersionManagerSearchPathsRequest, ..)" + ], + "input_types": [ + "_ExpandInterpreterSearchPathsRequest", + "PathEnvironmentVariable" + ], + "name": "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "output_type": "_SearchPaths", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap.python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(_SearchPaths, _ExpandInterpreterSearchPathsRequest, ..)" + ], + "input_types": ["EnvironmentAware"], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_type": "PythonBootstrap", + "provider": "pants.core" + }, + "pants.core.target_types.find_all_assets": { + "description": "Find all assets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.core.target_types.find_all_assets", + "output_type": "AllAssetTargets", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_file_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["GenerateFileSourceRequest", "Platform"], + "name": "pants.core.target_types.hydrate_file_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_resource_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["GenerateResourceSourceRequest", "Platform"], + "name": "pants.core.target_types.hydrate_resource_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.map_assets_by_path": { + "description": "Mapping assets by path", + "documentation": null, + "input_gets": [], + "input_types": ["AllAssetTargets"], + "name": "pants.core.target_types.map_assets_by_path", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + }, + "pants.core.target_types.package_archive_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": ["ArchiveFieldSet"], + "name": "pants.core.target_types.package_archive_target", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.target_types.relocate_files": { + "description": "Relocating loose files for `relocated_files` targets", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["RelocateFilesViaCodegenRequest"], + "name": "pants.core.target_types.relocate_files", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.download_python_binary": { + "description": "Downloading Python for scripts", + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "_DownloadPythonBuildStandaloneBinaryRequest", + "Platform", + "TarBinary", + "BashBinary", + "PythonBootstrapSubsystem", + "EnvironmentAware" + ], + "name": "pants.core.util_rules.adhoc_binaries.download_python_binary", + "output_type": "_PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonBuildStandaloneBinary"], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GunzipBinaryRequest", "GunzipBinary"], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_PythonBuildStandaloneBinary, _DownloadPythonBuildStandaloneBinaryRequest, ..)" + ], + "input_types": ["EnvironmentTarget"], + "name": "pants.core.util_rules.adhoc_binaries.get_python_for_scripts", + "output_type": "PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["AddExtraSandboxContentsToProcess"], + "name": "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["MergeExtraSandboxContents"], + "name": "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "output_type": "ExtraSandboxContents", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["AdhocProcessRequest", "BashBinary"], + "name": "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(RunInSandboxRequest, RunFieldSet, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResolveExecutionDependenciesRequest", "BashBinary"], + "name": "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "output_type": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.run_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, AdhocProcessRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, {FallibleProcessResult: .., ProductDescription: ..})", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["AdhocProcessRequest"], + "name": "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest": { + "description": null, + "documentation": "Backwards-compatibility helper.", + "input_gets": [], + "input_types": ["Digest"], + "name": "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest", + "output_type": "MaybeExtractArchiveRequest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.create_archive": { + "description": "Creating an archive file", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ZipBinary)", + "Get(BashBinary)", + "Get(TarBinary)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["CreateArchive", "EnvironmentAware"], + "name": "pants.core.util_rules.archive.create_archive", + "output_type": "Digest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.maybe_extract_archive": { + "description": "Extracting an archive file", + "documentation": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary)", + "Get(TarBinary)", + "Get(GunzipBinary)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["MaybeExtractArchiveRequest", "EnvironmentAware"], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_type": "ExtractedArchive", + "provider": "pants.core" + }, + "pants.core.util_rules.asdf.resolve_asdf_tool_paths": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["AsdfToolPathsRequest", "BuildRoot"], + "name": "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "output_type": "AsdfToolPathsResult", + "provider": "pants.core" + }, + "pants.core.util_rules.config_files.find_config_file": { + "description": "Find config files", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": ["ConfigFilesRequest"], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_type": "ConfigFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.distdir.get_distdir": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GlobalOptions", "BuildRoot"], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_type": "DistDir", + "provider": "pants.core" + }, + "pants.core.util_rules.external_tool.download_external_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["ExternalToolRequest"], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_GoTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "GoTestSubsystem"], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_GoTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.go" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_HelmUnitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "HelmUnitTestSubsystem"], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_HelmUnitTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.helm" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_JunitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "JUnit"], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_JunitTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.java" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ScalatestTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Scalatest"], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ScalatestTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.scala" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ShellTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "ShellTestSubsystem"], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ShellTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_Shunit2TestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Shunit2"], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_Shunit2TestRequest", + "output_type": "Partitions", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "OpenApiFormatSubsystem"], + "name": "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.openapi.lint.openapi_format" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_HadolintRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Hadolint"], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_HadolintRequest", + "output_type": "Partitions", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_PydocstyleRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Pydocstyle"], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_PydocstyleRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_RuffLintRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Ruff"], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_RuffLintRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_ShellcheckRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Shellcheck"], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_ShellcheckRequest", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_SpectralRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "SpectralSubsystem"], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_SpectralRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "AddTrailingComma"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "Autoflake"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "Docformatter"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "GofmtSubsystem"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.go" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "GoogleJavaFormatSubsystem"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "Isort"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.isort" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "KtlintSubsystem"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "PyUpgrade"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "Ruff"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFormatRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "Ruff"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFormatRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "Shfmt"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "Yapf"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths": { + "description": null, + "documentation": "Inspects the directory of a version manager tool like pyenv or nvm to find installations.", + "input_gets": [], + "input_types": ["VersionManagerSearchPathsRequest"], + "name": "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths", + "output_type": "VersionManagerSearchPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.search_paths.validate_search_paths": { + "description": null, + "documentation": "Checks for special search path strings, and errors if any are invalid for the environment.\n\nThis will return:\n* The search paths, unaltered, for local/undefined environments, OR\n* The search paths, with invalid tokens removed, if the provided value was unaltered from the\n default value in the options system.\n* The search paths unaltered, if the search paths are all valid tokens for this environment\n\nIf the environment is non-local and there are invalid tokens for those environments, raise\n`ValueError`.", + "input_gets": [], + "input_types": ["ValidateSearchPathsRequest"], + "name": "pants.core.util_rules.search_paths.validate_search_paths", + "output_type": "ValidatedSearchPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.source_files.determine_source_files": { + "description": "Get all relevant source files", + "documentation": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["SourceFilesRequest"], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_type": "SourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_file_name": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourceRoot, SourceRootRequest, ..)"], + "input_types": ["StrippedFileNameRequest"], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_type": "StrippedFileName", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_source_roots": { + "description": null, + "documentation": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["SourceFiles"], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_sources_paths": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourceRoot, SourceRootRequest, ..)"], + "input_types": ["SourcesPaths"], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + }, + "pants.core.util_rules.subprocess_environment.get_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.create_binary_shims": { + "description": null, + "documentation": "Creates a bin directory with shims for all requested binaries.\n\nThis can be provided to a `Process` as an `immutable_input_digest`, or can be merged into the\ninput digest.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["BinaryShimsRequest", "BashBinary"], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_type": "BinaryShims", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["BinaryPathRequest", "EnvironmentTarget"], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_type": "BinaryPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat": { + "description": "Finding the `cat` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_cat", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod": { + "description": "Finding the `chmod` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cp": { + "description": "Finding the `cp` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_cp", + "output_type": "CpBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff": { + "description": "Finding the `diff` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_git", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_ln": { + "description": "Finding the `ln` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_ln", + "output_type": "LnBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir": { + "description": "Finding the `mkdir` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mktemp": { + "description": "Finding the `mktempt` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_mktemp", + "output_type": "MktempBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mv": { + "description": "Finding the `mv` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_mv", + "output_type": "MvBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_open": { + "description": "Finding the `open` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_open", + "output_type": "OpenBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink": { + "description": "Finding the `readlink` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_readlink", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar": { + "description": "Finding the `tar` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["Platform", "EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_touch": { + "description": "Finding the `touch` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_touch", + "output_type": "TouchBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip": { + "description": "Finding the `unzip` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip": { + "description": "Finding the `zip` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.get_bash": { + "description": "Finding the `bash` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.system_binaries.maybe_find_git", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["MaybeGitBinaryRequest", "MaybeGitBinary"], + "name": "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateWrapSourceSourcesRequest"], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.go" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateWrapSourceSourcesRequest"], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.java" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateWrapSourceSourcesRequest"], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateWrapSourceSourcesRequest"], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "output_type": "GeneratedSources", + "provider": "pants.backend.python" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateWrapSourceSourcesRequest"], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateWrapSourceSourcesRequest"], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.scala" + }, + "pants.engine.internals.graph._determine_target_adaptor_and_type": { + "description": null, + "documentation": null, + "input_gets": ["Get(TargetAdaptor, TargetAdaptorRequest, ..)"], + "input_types": ["_RequestAdaptorAndType", "RegisteredTargetTypes"], + "name": "pants.engine.internals.graph._determine_target_adaptor_and_type", + "output_type": "_AdaptorAndType", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.coarsened_targets": { + "description": "Resolve coarsened targets", + "documentation": null, + "input_gets": ["Get(_DependencyMapping, _DependencyMappingRequest, ..)"], + "input_types": ["CoarsenedTargetsRequest", "ChosenLocalEnvironmentName"], + "name": "pants.engine.internals.graph.coarsened_targets", + "output_type": "CoarsenedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.coarsened_targets_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Addresses"], + "name": "pants.engine.internals.graph.coarsened_targets_request", + "output_type": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request": { + "description": null, + "documentation": "This rule discards any deps predicate from DependenciesRequest.\n\nCalculating ExplicitlyProvidedDependencies does not use any deps traversal predicates as it is\nmeant to list all explicit deps from the given field. By stripping the predicate from the\nrequest, we ensure that the cache key for ExplicitlyProvidedDependencies calculation does not\ninclude the predicate increasing the cache-hit rate.", + "input_gets": [], + "input_types": ["DependenciesRequest"], + "name": "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request", + "output_type": "ExplicitlyProvidedDependenciesRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.determine_explicitly_provided_dependencies": { + "description": null, + "documentation": null, + "input_gets": ["Get(Address, AddressInput, ..)"], + "input_types": [ + "ExplicitlyProvidedDependenciesRequest", + "UnionMembership", + "RegisteredTargetTypes", + "SubprojectRoots" + ], + "name": "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "output_type": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_subproject_roots": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GlobalOptions"], + "name": "pants.engine.internals.graph.extract_subproject_roots", + "output_type": "SubprojectRoots", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_unmatched_build_file_globs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GlobalOptions"], + "name": "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "output_type": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.field_defaults": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldDefaultFactoryResult, FieldDefaultFactoryRequest, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.engine.internals.graph.field_defaults", + "output_type": "FieldDefaults", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_targets": { + "description": "Find all targets in the project", + "documentation": null, + "input_gets": ["Get(Targets, RawSpecsWithoutFileOwners, ..)"], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_targets", + "output_type": "AllTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_unexpanded_targets": { + "description": "Find all (unexpanded) targets in the project", + "documentation": null, + "input_gets": ["Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)"], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_unexpanded_targets", + "output_type": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_owners": { + "description": "Find which targets own certain files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FilteredTargets, RawSpecsWithoutFileOwners, ..)", + "Get(Targets, RawSpecsWithoutFileOwners, ..)", + "Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)" + ], + "input_types": ["OwnersRequest", "ChosenLocalEnvironmentName"], + "name": "pants.engine.internals.graph.find_owners", + "output_type": "Owners", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_valid_field_sets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FieldSetsPerTargetRequest", "UnionMembership"], + "name": "pants.engine.internals.graph.find_valid_field_sets", + "output_type": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.generate_file_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(TargetFilesGeneratorSettings, TargetFilesGeneratorSettingsRequest, ..)" + ], + "input_types": ["GenerateFileTargets", "UnionMembership"], + "name": "pants.engine.internals.graph.generate_file_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.hydrate_sources": { + "description": "Hydrate the `sources` field", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(GeneratedSources, GenerateSourcesRequest, ..)" + ], + "input_types": [ + "HydrateSourcesRequest", + "UnmatchedBuildFileGlobs", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.hydrate_sources", + "output_type": "HydratedSources", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_all_generator_target_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AddressFamilies, RawSpecsWithoutFileOwners, ..)", + "Get(ResolvedTargetGeneratorRequests, ResolveTargetGeneratorRequests, ..)" + ], + "input_types": ["ResolveAllTargetGeneratorRequests"], + "name": "pants.engine.internals.graph.resolve_all_generator_target_requests", + "output_type": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_dependencies": { + "description": "Resolve direct dependencies of target", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(InferredDependencies, {InferDependenciesRequest: .., EnvironmentName: ..})", + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})", + "Get(Address, AddressInput, ..)", + "Get(ValidatedDependencies, {ValidateDependenciesRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "DependenciesRequest", + "TargetTypesToGenerateTargetsRequests", + "UnionMembership", + "SubprojectRoots", + "FieldDefaults", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_dependencies", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_generator_target_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_AdaptorAndType, _RequestAdaptorAndType, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "ResolveTargetGeneratorRequests", + "UnionMembership", + "TargetTypesToGenerateTargetsRequests", + "UnmatchedBuildFileGlobs" + ], + "name": "pants.engine.internals.graph.resolve_generator_target_requests", + "output_type": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_source_paths": { + "description": "Resolve `sources` field file names", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": ["SourcesPathsRequest", "UnmatchedBuildFileGlobs"], + "name": "pants.engine.internals.graph.resolve_source_paths", + "output_type": "SourcesPaths", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "WrappedTargetRequest", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_target", + "output_type": "WrappedTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_for_bootstrapping": { + "description": null, + "documentation": null, + "input_gets": ["Get(_AdaptorAndType, _RequestAdaptorAndType, ..)"], + "input_types": ["WrappedTargetRequest", "UnionMembership"], + "name": "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "output_type": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_parametrizations": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_AdaptorAndType, _RequestAdaptorAndType, ..)", + "Get(ResolvedTargetGeneratorRequests, ResolveTargetGeneratorRequests, ..)", + "Get(GeneratedTargets, GenerateTargetsRequest, ..)" + ], + "input_types": ["_TargetParametrizationsRequest", "UnionMembership"], + "name": "pants.engine.internals.graph.resolve_target_parametrizations", + "output_type": "_TargetParametrizations", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "UnexpandedTargets", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_targets", + "output_type": "Targets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unexpanded_targets": { + "description": null, + "documentation": null, + "input_gets": ["Get(WrappedTarget, WrappedTargetRequest, ..)"], + "input_types": ["Addresses"], + "name": "pants.engine.internals.graph.resolve_unexpanded_targets", + "output_type": "UnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unparsed_address_inputs": { + "description": "Resolve addresses", + "documentation": null, + "input_gets": [ + "Get(MaybeAddress, AddressInput, ..)", + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": ["UnparsedAddressInputs", "SubprojectRoots"], + "name": "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.target_types_to_generate_targets_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["UnionMembership"], + "name": "pants.engine.internals.graph.target_types_to_generate_targets_requests", + "output_type": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_dependency_mapping": { + "description": null, + "documentation": "This uses iteration, rather than recursion, so that we can tolerate dependency cycles.\n\nUnlike a traditional BFS algorithm, we batch each round of traversals via `MultiGet` for\nimproved performance / concurrency.", + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(UnexpandedTargets, DependenciesRequest, ..)" + ], + "input_types": ["_DependencyMappingRequest"], + "name": "pants.engine.internals.graph.transitive_dependency_mapping", + "output_type": "_DependencyMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_targets": { + "description": "Resolve transitive targets", + "documentation": "Find all the targets transitively depended upon by the target roots.", + "input_gets": [ + "Get(_DependencyMapping, _DependencyMappingRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitivelyExcludeDependencies, {TransitivelyExcludeDependenciesRequest: .., EnvironmentName: ..})", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "TransitiveTargetsRequest", + "ChosenLocalEnvironmentName", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.transitive_targets", + "output_type": "TransitiveTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.process.fallible_to_exec_result_or_raise": { + "description": null, + "documentation": "Converts a FallibleProcessResult to a ProcessResult or raises an error.", + "input_gets": [], + "input_types": [ + "FallibleProcessResult", + "ProductDescription", + "KeepSandboxes" + ], + "name": "pants.engine.process.fallible_to_exec_result_or_raise", + "output_type": "ProcessResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.get_multi_platform_request_description": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Process"], + "name": "pants.engine.process.get_multi_platform_request_description", + "output_type": "ProductDescription", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.run_proc_with_retry": { + "description": null, + "documentation": null, + "input_gets": ["Get(FallibleProcessResult, Process, ..)"], + "input_types": ["ProcessWithRetries"], + "name": "pants.engine.process.run_proc_with_retry", + "output_type": "ProcessResultWithRetries", + "provider": "pants.backend.experimental.helm" + }, + "pants.goal.stats_aggregator.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.jvm.bsp.compile.notify_for_classpath_entry": { + "description": null, + "documentation": null, + "input_gets": ["Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)"], + "input_types": ["BSPClasspathEntryRequest", "BSPContext"], + "name": "pants.jvm.bsp.compile.notify_for_classpath_entry", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["CoarsenedTargets", "ClasspathEntryRequestFactory"], + "name": "pants.jvm.classpath.classpath", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.loose_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["ClasspathEntry", "UnzipBinary"], + "name": "pants.jvm.classpath.loose_classfiles", + "output_type": "LooseClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.calculate_jvm_request_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["UnionMembership"], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.classpath_dependency_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.compile_classpath_entries": { + "description": null, + "documentation": null, + "input_gets": ["Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)"], + "input_types": ["ClasspathEntryRequests"], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.required_classfiles": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FallibleClasspathEntry"], + "name": "pants.jvm.compile.required_classfiles", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping": { + "description": null, + "documentation": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "output_type": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets": { + "description": "Find all jvm_artifact targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields": { + "description": "Find all targets with experimental_provides fields in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllJvmArtifactTargets", "JvmSubsystem"], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings": { + "description": null, + "documentation": null, + "input_gets": ["Get(SymbolMap, FirstPartyMappingRequest, ..)"], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem", + "ThirdPartySymbolMapping" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "output_type": "SymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.determine_jvm_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KnownJVMUserResolveNamesRequest", "JvmSubsystem"], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.generate_jvm_lockfile": { + "description": "Generate JVM lockfile", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["GenerateJvmLockfile", "GenerateLockfilesSubsystem"], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GenerateJvmLockfile"], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.build_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "output_type": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JarToolGenerateLockfileSentinel"], + "name": "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.run_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "JarToolRequest", + "InternalJdk", + "JarToolCompiledClassfiles" + ], + "name": "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.fetch_nailgun": { + "description": null, + "documentation": null, + "input_gets": ["Get(ClasspathEntry, CoursierLockfileEntry, ..)"], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.internal_jdk": { + "description": null, + "documentation": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": ["Get(JdkEnvironment, JdkRequest, ..)"], + "input_types": ["JvmSubsystem"], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.jvm_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess", + "JvmSubsystem", + "GlobalOptions" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.prepare_jdk_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "EnvironmentAware", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest", + "EnvironmentTarget" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.deploy_jar_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": ["DeployJarClasspathEntryRequest"], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.package_deploy_jar": { + "description": null, + "documentation": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Creating a deploy jar with a valid ZIP index and deduplicated entries\n3. (optionally) Stripping the jar of all metadata that may cause it to be non-reproducible (https://reproducible-builds.org)\n4. (optionally) Apply shading rules to the bytecode inside the jar file", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, JarToolRequest, ..)", + "Get(Digest, StripJarRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)" + ], + "input_types": ["JvmSubsystem", "DeployJarFieldSet"], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.package_war": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["PackageWarFileFieldSet", "BashBinary", "ZipBinary"], + "name": "pants.jvm.package.war.package_war", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_content": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["RenderWarContentRequest"], + "name": "pants.jvm.package.war.render_war_content", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_deployment_descriptor": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["RenderWarDeploymentDescriptorRequest"], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile": { + "description": null, + "documentation": "Fetch every artifact in a lockfile.", + "input_gets": ["Get(ClasspathEntry, CoursierLockfileEntry, ..)"], + "input_types": ["CoursierResolvedLockfile"], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord": { + "description": null, + "documentation": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": ["CoursierLockfileEntry"], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile": { + "description": null, + "documentation": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": ["ArtifactRequirements"], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier": { + "description": "Fetch with coursier", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["CoursierFetchRequest"], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": ["CoursierResolveKey"], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["ToolClasspathRequest"], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ArtifactRequirements"], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets": { + "description": null, + "documentation": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": ["Get(Digest, PathGlobs, ..)"], + "input_types": ["CoarsenedTargets", "JvmSubsystem"], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["BashBinary", "Coursier", "CoursierFetchProcess"], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.setup_coursier": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBuildStandaloneBinary", + "Platform" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": ["GatherJvmCoordinatesRequest"], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": ["GenerateJvmLockfileFromTool"], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resources.assemble_resources_jar": { + "description": "Assemble resources", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "BashBinary", + "TouchBinary", + "JvmSubsystem", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run.create_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(Classpath, CoarsenedTargets, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["GenericJvmRunRequest", "UnzipBinary"], + "name": "pants.jvm.run.create_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["DeployJarFieldSet"], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JarJarGeneratorLockfileSentinel", "JarJar"], + "name": "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.rules.shade_jar": { + "description": "Applies shading rules to a JAR file", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarJarGeneratorLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ShadeJarRequest", "InternalJdk", "JarJar"], + "name": "pants.jvm.shading.rules.shade_jar", + "output_type": "ShadedJar", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.jvm.strip_jar.strip_jar.build_processors", + "output_type": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["StripJarToolLockfileSentinel"], + "name": "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.strip_jar": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "StripJarCompiledClassfiles", + "InternalJdk", + "StripJarRequest" + ], + "name": "pants.jvm.strip_jar.strip_jar.strip_jar", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, GenericJvmRunRequest, ..)"], + "input_types": ["JavaFieldSet"], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, GenericJvmRunRequest, ..)"], + "input_types": ["JvmArtifactFieldSet"], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, GenericJvmRunRequest, ..)"], + "input_types": ["KotlinFieldSet"], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, GenericJvmRunRequest, ..)"], + "input_types": ["ScalaFieldSet"], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.jvm.target_types.jvm_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JvmResolveFieldDefaultFactoryRequest", "JvmSubsystem"], + "name": "pants.jvm.target_types.jvm_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.generate_junit_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JunitToolLockfileSentinel", "JUnit"], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.run_junit_test": { + "description": "Run JUnit", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["TestSubsystem", "Batch"], + "name": "pants.jvm.test.junit.run_junit_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["Batch"], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.util_rules.digest_to_file_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": ["ExtractFileDigest"], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + }, + "pants.source.source_root.all_roots": { + "description": "Compute all source roots", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["SourceRootConfig"], + "name": "pants.source.source_root.all_roots", + "output_type": "AllSourceRoots", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_root": { + "description": null, + "documentation": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["SourceRootRequest", "SourceRootConfig"], + "name": "pants.source.source_root.get_optional_source_root", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_roots": { + "description": null, + "documentation": "Rule to request source roots that may not exist.", + "input_gets": ["Get(OptionalSourceRoot, SourceRootRequest, ..)"], + "input_types": ["SourceRootsRequest"], + "name": "pants.source.source_root.get_optional_source_roots", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_root": { + "description": null, + "documentation": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": ["Get(OptionalSourceRoot, SourceRootRequest, ..)"], + "input_types": ["SourceRootRequest"], + "name": "pants.source.source_root.get_source_root", + "output_type": "SourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_roots": { + "description": null, + "documentation": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": ["Get(OptionalSourceRootsResult, SourceRootsRequest, ..)"], + "input_types": ["SourceRootsRequest"], + "name": "pants.source.source_root.get_source_roots", + "output_type": "SourceRootsResult", + "provider": "pants.core" + }, + "pants.vcs.git.get_git_worktree": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GitWorktreeRequest", "MaybeGitBinary"], + "name": "pants.vcs.git.get_git_worktree", + "output_type": "MaybeGitWorktree", + "provider": "pants.core" + } + }, + "name_to_target_type_info": { + "_generator_sources_helper": { + "alias": "_generator_sources_helper", + "description": "A private helper target type used by some target generators.\n\nThis tracks their `source` / `sources` field so that `--changed-since --changed-dependents` works properly for generated targets.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.python", + "summary": "A private helper target type used by some target generators." + }, + "_lockfile": { + "alias": "_lockfile", + "description": "A target for lockfiles in order to include them in the dependency graph of other targets.\n\nThis tracks them so that `--changed-since --changed-dependents` works properly for targets relying on a particular lockfile.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A target for lockfiles in order to include them in the dependency graph of other targets." + }, + "_lockfiles": { + "alias": "_lockfiles", + "description": "Generate a `_lockfile` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.lock']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `_lockfile` target for each file in the `sources` field." + }, + "adhoc_tool": { + "alias": "adhoc_tool", + "description": "Execute any runnable target for its side effects.\n\nExample BUILD file:\n\n adhoc_tool(\n runnable=\":python_source\",\n args=[\"\"],\n execution_dependencies=[\":scripts\"],\n output_directories=[\"results/\"],\n output_files=[\"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runnable", + "default": null, + "description": "Address to a target that can be invoked by the `run` goal (and does not set `run_in_sandbox_behavior=NOT_SUPPORTED`). This will be executed along with any arguments specified by `args`, in a sandbox with that target's transitive dependencies, along with the transitive dependencies specified by `execution_dependencies`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "args", + "default": "()", + "description": "Extra arguments to pass into the `runnable` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that need to be present (as transitive dependencies) whenever the outputs of this target are consumed (including as dependencies).\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\nValues are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stdout", + "default": null, + "description": "A filename to capture the contents of `stdout` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stderr", + "default": null, + "description": "A filename to capture the contents of `stderr` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "Execute any runnable target for its side effects." + }, + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "code_quality_tool": { + "alias": "code_quality_tool", + "description": "Configure a runnable to use as a linter, fixer or formatter\n\nExample BUILD file:\n\n code_quality_tool(\n runnable=\":flake8_req\",\n execution_dependencies=[\":config_file\"],\n file_glob_include=[\"**/*.py\"],\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runnable", + "default": null, + "description": "Address to a target that can be invoked by the `run` goal (and does not set `run_in_sandbox_behavior=NOT_SUPPORTED`). This will be executed along with any arguments specified by `args`, in a sandbox with that target's transitive dependencies, along with the transitive dependencies specified by `execution_dependencies`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "args", + "default": "()", + "description": "Extra arguments to pass into the `runnable` field before the list of source files", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "Additional dependencies that need to be available when running the tool. Typically used to point to config files.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "file_glob_include", + "default": null, + "description": "Globs that identify files that can be processed by this tool\n\nA file matching any of the supplied globs is eligible for processing. Example: [\"**/*.py\"]", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "file_glob_exclude", + "default": "()", + "description": "Globs matching files that should not be processed by this tool", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "Configure a runnable to use as a linter, fixer or formatter" + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "duplicate_policy", + "default": "(duplicate_rule(pattern='^META-INF/services/', action='concat_text'), duplicate_rule(pattern='^META-INF/LICENSE', action='skip'))", + "description": "A list of the rules to apply when duplicate file entries are found in the final assembled JAR file.\n\nWhen defining a duplicate policy, just add `duplicate_rule` directives to this field as follows:\n\nExample:\n\n duplicate_policy=[\n duplicate_rule(pattern=\"^META-INF/services\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^reference\\.conf\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^org/apache/commons\", action=\"throw\"),\n ]\n\nWhere:\n\n* The `pattern` field is treated as a regular expression\n* The `action` field must be one of `['skip', 'replace', 'concat', 'concat_text', 'throw']`.\n\nNote that the order in which the rules are listed is relevant.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.DeployJarDuplicateRule] | None" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the final JAR artifact.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + }, + { + "alias": "exclude_files", + "default": null, + "description": "A list of patterns to exclude from the final jar.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_environment": { + "alias": "docker_environment", + "description": "Configuration of a Docker environment used for building your code.\n\nEnvironment configuration includes both Docker-specific information (including the image and platform choice), as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this Docker environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nBefore running Pants using this environment, if you are using Docker Desktop, make sure the option **Enable default Docker socket** is enabled, you can find it in **Docker Desktop Settings > Advanced** panel. That option tells Docker to create a socket at `/var/run/docker.sock` which Pants can use to communicate with Docker.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image", + "default": null, + "description": "The docker image ID to use when this environment is loaded.\n\nThis value may be any image identifier that the local Docker installation can accept. This includes image names with or without tags (e.g. `centos6` or `centos6:latest`), or image names with an immutable digest (e.g. `centos@sha256:`).\n\nThe choice of image ID can affect the reproducibility of builds. Consider using an immutable digest if reproducibility is needed, but regularly ensure that the image is free of relevant bugs or security vulnerabilities.\n\nNote that in order to use an image as a `docker_environment` it must have a few tools: - `/bin/sh` - `/usr/bin/env` - `bash` - `tar`\n\nWhile most images will have these preinstalled, users of base images such as Distroless or scratch will need to bake these tools into the image themselves. All of these except `bash` are available via busybox.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "platform", + "default": null, + "description": "If set, Docker will always use the specified platform when pulling and running the image.\n\nIf unset, Pants will default to the CPU architecture of your local host machine. For example, if you are running on Apple Silicon, it will use `linux_arm64`, whereas running on Intel macOS will use `linux_x86_64`. This mirrors Docker's behavior when `--platform` is left off.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this Docker environment cannot be used because either the global option `--docker-execution` is false, or the field `platform` is not compatible with the local host's CPU architecture (this is only an issue when the local host is Linux; macOS is fine).\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific Docker environment cannot be used.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "system_binaries_system_binary_paths", + "default": null, + "description": "Overrides the default value from the option `[system-binaries].system_binary_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a Docker environment used for building your code." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, it will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "\nAny tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.20/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the `[docker].registries` configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. `\"/\"`.\n\nIt uses the `[docker].default_repository` by default.\n\nRepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory`, `parent_directory`, and `default_repository`.\n\nRegistries may also configure the repository value for specific registries.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nLabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "extra_build_hosts", + "default": null, + "description": "Extra hosts entries to be added to a container's `/etc/hosts` file.\n\nUse `[docker].build_hosts` to set default host entries for all images.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. Paths to your home directory will be automatically expanded. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"home-dir-secret\": \"~/.config/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: `default|[=|[,]]`)\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If true, do not push this image to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pull", + "default": "False", + "description": "If true, then docker will always attempt to pull a newer version of the image.\n\nNOTE: This option cannot be used on images that build off of \"transitive\" base images referenced by address (i.e. `FROM path/to/your/base/Dockerfile`).", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "squash", + "default": "False", + "description": "If true, then docker will squash newly built layers into a single new layer.\n\nNote that this option is only supported on a Docker daemon with experimental features enabled.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "build_network", + "default": null, + "description": "Sets the networking mode for the run commands during build. Supported standard values are: bridge, host, none, and container:. Any other value is taken as a custom network's name to which the container should connect to.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "build_platform", + "default": null, + "description": "Set the target platform(s) for the build.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "cache_to", + "default": null, + "description": "Export image build cache to an external cache destination.\n\nThis option requires BuildKit to be enabled via the Docker subsystem options.\n\nExample:\n\n docker_image(\n name=\"example-local-cache-backend\",\n cache_to={\n \"type\": \"local\",\n \"dest\": \"/tmp/docker-cache/example\"\n },\n cache_from={\n \"type\": \"local\",\n \"src\": \"/tmp/docker-cache/example\"\n }\n )\n\nValues may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "cache_from", + "default": null, + "description": "Use an external cache source when building the image.\n\nThis option requires BuildKit to be enabled via the Docker subsystem options.\n\nExample:\n\n docker_image(\n name=\"example-local-cache-backend\",\n cache_to={\n \"type\": \"local\",\n \"dest\": \"/tmp/docker-cache/example\"\n },\n cache_from={\n \"type\": \"local\",\n \"src\": \"/tmp/docker-cache/example\"\n }\n )\n\nValues may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "output", + "default": "FrozenDict({'type': 'docker'})", + "description": "Sets the export action for the build result.\n\nThis option requires BuildKit to be enabled via the Docker subsystem options.\n\nWhen using `pants publish` to publish Docker images to a registry, the output type must be 'docker', as `publish` expects that the built images exist in the local image store.\n\nCurrently, multi-platform images cannot be exported with the 'docker' export type, although experimental support is available with the [containerd image store](https://docs.docker.com/desktop/containerd/)\n\nValues may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_test_shell_command": { + "alias": "experimental_test_shell_command", + "description": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot.\n\nExample BUILD file:\n\n experimental_test_shell_command(\n name=\"test\",\n tools=[\"test\"],\n command=\"test -r $CHROOT/some-data-file.txt\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `run_shell_command`, this target is intended to run shell commands as tests and will only run them via the `test` goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by `[shell-setup].executable_search_paths` (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this tests for target.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot." + }, + "experimental_wrap_as_go_package_sources": { + "alias": "experimental_wrap_as_go_package_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .go, .s, .S, .sx, .c, .h, .hh, .hpp, .hxx, .cc, .cpp, .cxx, .m, .f, .F, .for, .f90, .syso\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`." + }, + "experimental_wrap_as_java_sources": { + "alias": "experimental_wrap_as_java_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .java\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`." + }, + "experimental_wrap_as_kotlin_sources": { + "alias": "experimental_wrap_as_kotlin_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .kt\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`." + }, + "experimental_wrap_as_python_sources": { + "alias": "experimental_wrap_as_python_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .py, .pyi\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`." + }, + "experimental_wrap_as_resources": { + "alias": "experimental_wrap_as_resources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files from `inputs` will be matched.\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`." + }, + "experimental_wrap_as_scala_sources": { + "alias": "experimental_wrap_as_scala_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .scala\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an `http_source` is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (e.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (`linux_arm64`, `linux_x86_64`, `macos_arm64`, `macos_x86_64`) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `file` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.go', '*_test.go', '!test_ignore.go']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "test_race", + "default": null, + "description": "Enable compiling this package's test binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_artifact": { + "alias": "helm_artifact", + "description": "A third party Helm artifact.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registry", + "default": null, + "description": "Either registry alias (prefixed by `@`) configured in `[helm.registries]` for the Helm artifact or the full OCI registry URL.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repository", + "default": null, + "description": "Either a HTTP(S) URL to a classic repository, or a path inside an OCI registry (when `registry` is provided).", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "Artifact name of the chart, without version number.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The `version` part of a third party Helm chart.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A third party Helm artifact." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'values.yml', 'templates/*.yaml', 'templates/*.yml', 'templates/*.tpl', 'crds/*.yaml', 'crds/*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['values.yaml', 'templates/*.yaml', '!values_ignore.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "repository", + "default": null, + "description": "Repository to use in the Helm registry where this chart is going to be published.\n\nIf no value is given and `[helm].default-registry-repository` is undefined too, then the chart will be pushed to the root of the OCI registry.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "version", + "default": null, + "description": "Version number for the given Helm chart.\n\nWhen specified, the version provided in the source Chart.yaml file will be overriden by the value given to this field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any OCI registries to use for the built chart.\n\nThe address is an `oci://` prefixed domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the `[helm].registries` configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [helm.registries.my-registry-alias]\n address = \"oci://myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n helm_chart(\n registries = [\n \"@my-registry-alias\",\n \"oci://myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this Helm chart to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_lint", + "default": "False", + "description": "If set to true, do not run any linting in this Helm chart when running `scie-pants-linux-x86_64 lint`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart." + }, + "helm_deployment": { + "alias": "helm_deployment", + "description": "A Helm chart deployment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": null, + "description": "The address of the `helm_chart` or `helm_artifact` that will be used for this deployment.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "release_name", + "default": null, + "description": "Name of the release used in the deployment. If not set, the target name will be used instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.yaml', '*.yml')", + "description": "Helm configuration files for a given deployment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "namespace", + "default": null, + "description": "Kubernetes namespace for the given deployment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_crds", + "default": "False", + "description": "If true, then does not deploy the Custom Resource Definitions that are defined in the chart.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "values", + "default": null, + "description": "Individual values to use when rendering a given deployment.\n\nValue names should be defined using dot-syntax as in the following example:\n\n helm_deployment(\n values={\n \"nameOverride\": \"my_custom_name\",\n \"image.pullPolicy\": \"Always\",\n },\n )\n\nValues can be dynamically calculated using interpolation as shown in the following example:\n\n helm_deployment(\n values={\n \"configmap.deployedAt\": f\"{env('DEPLOY_TIME')}\",\n },\n )\n\nCheck the Helm backend documentation on what are the options available and its caveats when making usage of dynamic values in your deployments.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "no_hooks", + "default": "False", + "description": "If true, none of the lifecycle hooks of the given chart will be included in the deployment.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": null, + "description": "Timeout in seconds when running a Helm deployment.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "post_renderers", + "default": null, + "description": "List of runnable targets to be used to post-process the helm chart after being rendered by Helm.\n\nThis is equivalent to the same post-renderer feature already available in Helm with the difference that this supports a list of executables instead of a single one.\n\nWhen more than one post-renderer is given, they will be combined into a single one in which the input of each of them would be output of the previous one.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "enable_dns", + "default": "False", + "description": "Enables DNS lookups when using the `getHostByName` template function.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart deployment." + }, + "helm_unittest_test": { + "alias": "helm_unittest_test", + "description": "A single helm-unittest suite file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A single helm-unittest suite file." + }, + "helm_unittest_tests": { + "alias": "helm_unittest_tests", + "description": "Generates a `helm_unittest_test` target per each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.yaml', '*_test.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*_test.yaml', '!ignore_test.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `helm_unittest_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"configmap_test.yaml\": {\"timeout\": 120},\n (\"deployment_test.yaml\", \"pod_test.yaml\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `helm_unittest_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "Generates a `helm_unittest_test` target per each file in the `sources` field." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.java', 'New*.java', '!OldExample.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.java', '!TestIgnore.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "exclusions", + "default": null, + "description": "A list of exclusions for unversioned coordinates that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nSupported exclusions are:\n * `jvm_exclude`: Exclude the given `artifact` and `group`, or all artifacts from the given `group`.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmArtifactExclusion] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., `web.xml`) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the individual JAR artifacts embedded in the `WEB-INF/lib` folder.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "kotlin_junit_test": { + "alias": "kotlin_junit_test", + "description": "A single Kotlin test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin test, run with JUnit." + }, + "kotlin_junit_tests": { + "alias": "kotlin_junit_tests", + "description": "Generate a `kotlin_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.kt', '!TestIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_junit_test` target for each file in the `sources` field." + }, + "kotlin_source": { + "alias": "kotlin_source", + "description": "A single Kotlin source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin source file containing application or library code." + }, + "kotlin_sources": { + "alias": "kotlin_sources", + "description": "Generate a `kotlin_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.kt', 'New*.kt', '!OldIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_source` target for each file in the `sources` field." + }, + "kotlinc_plugin": { + "alias": "kotlinc_plugin", + "description": "A plugin for `kotlinc`.\n\nTo enable a `kotlinc` plugin, define a target with this target type, and set the `artifact` field to the address of a `jvm_artifact` target that provides the plugin. Set the `plugin_id` field to the ID of the plugin if that name cannot be inferred from the `name` of this target.\n\nThe standard `kotlinc` plugins are available via the following artifact coordinates and IDs:\n\n* All-open: `org.jetbrains.kotlin:kotlin-allopen:VERSION` (ID: `all-open`)\n* No-arg: `org.jetbrains.kotlin:kotlin-noarg:VERSION` (ID: `no-arg`)\n* SAM with receiver: `org.jetbrains.kotlin:kotlin-sam-with-receiver:VERSION` (ID: `sam-with-receiver`)\n* kapt (annotation processor): `org.jetbrains.kotlin:org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:VERSION` (ID: `kapt3`)\n* Serialization: `org.jetbrains.kotlin:kotlin-serialization:VERSION` (ID: `serialization`)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `kotlinc`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_id", + "default": null, + "description": "The ID for `kotlinc` to use when setting options for the plugin.\n\nIf not set, the plugin ID defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "plugin_args", + "default": null, + "description": "Optional list of argument to pass to the plugin.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A plugin for `kotlinc`." + }, + "local_environment": { + "alias": "local_environment", + "description": "Configuration of a local execution environment for specific platforms.\n\nEnvironment configuration includes the platforms the environment is compatible with, and optionally a fallback environment, along with environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOnly one `local_environment` may be defined in `[environments-preview].names` per platform, and when `__local__` is specified as the environment, the `local_environment` that matches the current platform (if defined) will be selected.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatible_platforms", + "default": "('linux_arm64', 'linux_x86_64', 'macos_arm64', 'macos_x86_64')", + "description": "Which platforms this environment can be used with.\n\nThis is used for Pants to automatically determine which environment target to use for the user's machine when the environment is set to the special value `__local__`. Currently, there cannot be more than one environment target registered in `[environments-preview].names` for a particular platform. If there is no environment target for a certain platform, Pants will use the options system instead to determine environment variables and executable search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this local environment cannot be used because the field `compatible_platforms` is not compatible with the local host.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific local environment cannot be used.\n\nTip: when targeting Linux, it can be particularly helpful to fallback to a `docker_environment` or `remote_environment` target. That allows you to prefer using the local host when possible, which often has less overhead (particularly compared to Docker). If the local host is not compatible, then Pants will use Docker or remote execution to still run in a similar environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "system_binaries_system_binary_paths", + "default": null, + "description": "Overrides the default value from the option `[system-binaries].system_binary_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a local execution environment for specific platforms." + }, + "openapi_document": { + "alias": "openapi_document", + "description": "A single OpenAPI document file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI document file." + }, + "openapi_documents": { + "alias": "openapi_documents", + "description": "Generate an `openapi_document` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('openapi.json', 'openapi.yaml', 'openapi.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['openapi.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_document` target for each file in the `sources` field." + }, + "openapi_source": { + "alias": "openapi_source", + "description": "A single OpenAPI source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_openapi_format", + "default": "False", + "description": "If true, don't run `openapi-format` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI source file." + }, + "openapi_sources": { + "alias": "openapi_sources", + "description": "Generate an `openapi_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.json', '*.yaml', '*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_openapi_format", + "default": "False", + "description": "If true, don't run `openapi-format` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_source` target for each file in the `sources` field." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants.\n\nThe generated targets will have the correct version based on the exact `version` in your `pants.toml`, and they will work with dependency inference. They're pulled directly from our GitHub releases, using the relevant platform markers.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "version_spec", + "default": "'== 2.20.0.dev2'", + "description": "The PEP 440 version specifier version of Pants to target. E.g. `== 2.15.*`, or `>= 2.16.0, < 2.17.0`", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n }\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same `entry_point` in multiple keys, so long as you don't override the same field more than one time for the `entry_point`.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.20/docs/pex for details.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore errors when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.20/docs/pex.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.20/docs/pex for details.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore errors when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like `'path.to.module'` and `'path.to.module:func'`, or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) `'app.py'`, Pants will convert into the module `path.to.app`;\n 2) `'app.py:func'`, Pants will convert into `path.to.app:func`.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "args", + "default": null, + "description": "Freeze these command-line args into the PEX. Allows you to run generic entry points on specific arguments without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "env", + "default": null, + "description": "Freeze these environment variables into the PEX. Allows you to run generic entry points on a specific environment without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry `pyproject.toml`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry `pyproject.toml`." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.20/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.20/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.proto', 'new_*.proto', '!old_ignore*.proto']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `protobuf_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.proto\": {\"grpc\": True},\n \"bar.proto\": {\"description\": \"our user model\"},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.20/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the value of the `binary_name` field. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary that will be output by PyOxidizer. If not set, this will default to the name of this target.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by `$` or surrounded with `${ }`.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted `entry_point` passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or `[]`).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets `filesystem_resources`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.20/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.20/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: `'path.to.module'`.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_aws_lambda_function": { + "alias": "python_aws_lambda_function", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.20/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the AWS Lambda artifact. This is most useful with Lambda Layers to make code uploads smaller when third-party requirements are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.\n\nN.B.: only one of this and `complete_platforms` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. If you have issues either packaging the AWS Lambda PEX or running it as a deployed AWS Lambda function, you should try using an explicit `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.20/docs/pex for details.\n\nN.B.: only one of this and `runtime` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. Explicitly set this to `[]` to use the platform's ambient interpreter, such as when running in an docker environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like `'path.to.module:handler_func'` or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. `'cloud_function.py:handler_func'`.\n\nThis is re-exported at `lambda_function.handler` in the resulting package to be used as the configured handler of the Lambda in AWS. It can also be accessed under its source-root-relative module path, for example: `path.to.module.handler_func`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_aws_lambda_layer": { + "alias": "python_aws_lambda_layer", + "description": "A Python layer suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.20/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the AWS Lambda artifact. This is most useful with Lambda Layers to make code uploads smaller when third-party requirements are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.\n\nN.B.: only one of this and `complete_platforms` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. If you have issues either packaging the AWS Lambda PEX or running it as a deployed AWS Lambda function, you should try using an explicit `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.20/docs/pex for details.\n\nN.B.: only one of this and `runtime` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. Explicitly set this to `[]` to use the platform's ambient interpreter, such as when running in an docker environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to resolve first party sources and include them in the AWS Lambda artifact. This is most useful to allow creating a Lambda Layer with only third-party requirements. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A Python layer suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.20/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (`\"path.to.module:func\"`) or a Pants target address to a `pex_binary` target.\n\nExample:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a `pex_binary` target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n scie-pants-linux-x86_64 dependencies ", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.20/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing `setup.py`, `setup.cfg`, `pyproject.toml` files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "env_vars", + "default": null, + "description": "Environment variables to set when running the PEP-517 build backend.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the `long_description` field in `setup.py`.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": "''", + "description": "The path to the directory to write the distribution file to, relative the dist directory.\n\nIf undefined, this defaults to the empty path, i.e. the output goes at the top level of the dist dir.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + }, + { + "alias": "uses_mypyc", + "default": "False", + "description": "If true, this distribution is built using mypyc.\n\nIn this case, Pants will build the distribution in an environment that includes mypy, as configured in the `[mypy]` subsystem, including plugins, config files, extra type stubs, and the distribution's own requirements (which normally would not be needed at build time, but in this case may provide necessary type annotations).\n\nYou will typically set this field on distributions whose `setup.py` uses `mypyc.build.mypycify()`. See https://mypyc.readthedocs.io/en/latest/index.html .", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.20/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like `'path.to.module:handler_func'` or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. `'cloud_function.py:handler_func'`.\n\nThis is re-exported at `main.handler` in the resulting package to used as the configured handler of the Google Cloud Function in GCP. It can also be accessed under its source-root-relative module path, for example: `path.to.module.handler_func`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.\n\nIn general you'll want to define either a `runtime` or one `complete_platforms` but not both. Specifying a `runtime` is simpler, but less accurate. If you have issues either packaging the Google Cloud Function PEX or running it as a deployed Google Cloud Function, you should try using `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "'python310' | 'python311' | 'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.20/docs/pex for details.\n\nN.B.: only one of this and `runtime` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. Explicitly set this to `[]` to use the platform's ambient interpreter, such as when running in an docker environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be `'event'` or `'http'`. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to `--trigger-http`.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like `'path.to.module'` and `'path.to.module:func'`, or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) `'app.py'`, Pants will convert into the module `path.to.app`;\n 2) `'app.py:func'`, Pants will convert into `path.to.app:func`.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant `pyproject.toml` file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser.\n\nFurther details about pip-style requirements files are available from the PyPA documentation: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.\n\nFurther details about PEP 621 and `pyproject.toml` files are available from the PEP itself: https://peps.python.org/pep-0621/. If the `project.optional-dependencies` table is included, Pants will save the key/name of the optional dependency group as a tag on the generated `python_requirement`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant `pyproject.toml` file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'new_*.py', '!old_ignore.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.20/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single test runner process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other test `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same test runner process. Compatible tests may not end up in the same test runner batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all `entry_points` on `python_distribution` targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the `entry_points` only need to be defined on one `python_distribution` even if the test only needs some of the `entry_points` namespaces on it.\n\nPlus, an `entry_points.txt` file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The `entry_points.txt` file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools `entry_points` metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (`my.stevedore.extension`) is similar to a Python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test_*.py', '*_test.py', 'tests.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo_test.py\": {\"timeout\": 120},\n \"bar_test.py\": {\"timeout\": 200},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all `entry_points` on `python_distribution` targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the `entry_points` only need to be defined on one `python_distribution` even if the test only needs some of the `entry_points` namespaces on it.\n\nPlus, an `entry_points.txt` file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The `entry_points.txt` file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools `entry_points` metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (`my.stevedore.extension`) is similar to a Python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single test runner process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other test `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same test runner process. Compatible tests may not end up in the same test runner batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "remote_environment": { + "alias": "remote_environment", + "description": "Configuration of a remote execution environment used for building your code.\n\nEnvironment configuration includes platform properties and a fallback environment, as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this remote environment.\n\nNote that you must also configure remote execution with the global options like `remote_execution` and `remote_execution_address`.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOften, it is only necessary to have a single `remote_environment` target for your repository, but it can be useful to have >1 so that you can set different `extra_platform_properties`. For example, with some servers, you could use this to configure a different Docker image per environment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platform", + "default": "'linux_x86_64'", + "description": "The platform used by the remote execution environment.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "extra_platform_properties", + "default": "()", + "description": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when remote execution is disabled via the global option `--remote-execution`.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when remote execution is disabled.\n\nTip: if you are using a Docker image with your remote execution environment (usually enabled by setting the field `extra_platform_properties`), then it can be useful to fallback to an equivalent `docker_image` target so that you have a consistent execution environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cache_binary_discovery", + "default": "False", + "description": "If true, will cache system binary discovery, e.g. finding Python interpreters.\n\nWhen safe to do, it is preferable to set this option to `True` for faster performance by avoiding wasted work. Otherwise, Pants will search for system binaries whenever the Pants daemon is restarted.\n\nHowever, it is only safe to set this to `True` if the remote execution environment has a stable environment, e.g. the server will not change versions of installed system binaries. Otherwise, you risk caching results that become stale when the server changes its environment, which may break your builds. With some remote execution servers, you can specify a Docker image to run with via the field `extra_platform_properties`; if you are able to specify what Docker image to use, and also use a pinned tag of the image, it is likely safe to set this field to true.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "system_binaries_system_binary_paths", + "default": null, + "description": "Overrides the default value from the option `[system-binaries].system_binary_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a remote execution environment used for building your code." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an `http_source` is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (e.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (`linux_arm64`, `linux_x86_64`, `macos_arm64`, `macos_x86_64`) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `resource` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "run_shell_command": { + "alias": "run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `shell_command`, in addition to `workdir` you only have the `command` and `execution_dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful.\n\nSee also `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "scala_artifact": { + "alias": "scala_artifact", + "description": "A third-party Scala artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.\n\nBeing a Scala artifact, the final artifact name will be inferred using the Scala version configured for the given resolve.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible Scala-versioned coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `org.typelevel:cats-core_2.13:2.9.0`, the artifact is `cats-core`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "crossversion", + "default": "'binary'", + "description": "Whether to use the full Scala version or the partial one to determine the artifact name suffix.\n\nDefault is `binary`.", + "provider": "", + "required": false, + "type_hint": "'binary' | 'full' | 'partial' | None" + }, + { + "alias": "exclusions", + "default": null, + "description": "A list of exclusions for unversioned coordinates that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nSupported exclusions are:\n * `jvm_exclude`: Exclude the given `artifact` and `group`, or all artifacts from the given `group`.\n * `scala_exclude`: Exclude the given `artifact` and `group`, or all artifacts from the given `group`. You can also use the `crossversion` field to help resolve the final artifact name.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmArtifactExclusion] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A third-party Scala artifact, as identified by its Maven-compatible coordinate." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.scala', '!TestIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scala_junit_tests` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_junit_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.scala', 'New*.scala', '!OldIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scala_sources` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_sources` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of either a `jvm_artifact` or a `scala_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching `('*Spec.scala', '*Suite.scala')`).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Spec.scala', '!SuiteIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scalatest_tests` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scalatest_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching `('*Spec.scala', '*Suite.scala')`)." + }, + "shell_command": { + "alias": "shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n execution_dependencies=[\":scripts\"],\n output_files=[\"logs/my-script.log\"],\n output_directories=[\"results\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that need to be present (as transitive dependencies) whenever the outputs of this target are consumed (including as dependencies).\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by `[shell-setup].executable_search_paths` (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_named_caches", + "default": null, + "description": "Named caches to construct for the execution. See https://www.pantsbuild.org/docs/reference-global#named_caches_dir.\n\nThe keys of the mapping are the directory name to be created in the named caches dir. The values are the name of the symlink (relative to the sandbox root) in the sandbox which points to the subdirectory in the named caches dir\n\nNOTE: The named caches MUST be handled with great care. Processes accessing the named caches can be run in parallel, and can be cancelled at any point in their execution (and potentially restarted). That means that _every_ operation modifying the contents of the cache MUST be concurrency and cancellation safe.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\nValues are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.sh', 'new_*.sh', '!old_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shell_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test.sh', 'test_*.sh', '!test_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shunit2_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo_test.sh\": {\"timeout\": 120},\n \"bar_test.sh\": {\"timeout\": 200},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "system_binary": { + "alias": "system_binary", + "description": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`.\n\nPants will search for binaries with name `binary_name` in the search paths provided, as well as default search paths. If `fingerprint` is specified, each binary that is located will be executed with the arguments from `fingerprint_args`. Any binaries whose output does not match the pattern will be excluded.\n\nThe first non-excluded binary will be the one that is resolved.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary to find.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "extra_search_paths", + "default": "()", + "description": "Extra search paths to look for the binary. These take priority over Pants' default search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint", + "default": null, + "description": "A regular expression which will be used to match the fingerprint outputs from candidate binaries found during the search process.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "fingerprint_args", + "default": "()", + "description": "Specifies arguments that will be used to run the binary during the search process.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint_dependencies", + "default": null, + "description": "Specifies any runnable dependencies that need to be available on the `PATH` when the binary is run, so that the search process may complete successfully. The name of the target must be the name of the runnable dependency that is called by this binary.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_deployment": { + "alias": "terraform_deployment", + "description": "A deployment of Terraform", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "root_module", + "default": null, + "description": "The Terraform module to use as the root module.\n\nExample: `root_module=\":my_module\"`", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "backend_config", + "default": null, + "description": "Configuration to be merged with what is in the configuration file's 'backend' block", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "var_files", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `var_files=['common.tfvars', 'prod.tfvars']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A deployment of Terraform" + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.tf', 'new_*.tf', '!old_ignore.tf']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.20/docs/thrift-python", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.thrift', 'new_*.thrift', '!old_ignore.thrift']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `thrift_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.20/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + }, + "vcs_version": { + "alias": "vcs_version", + "description": "Generates a version string from VCS state.\n\nUses a constrained but useful subset of the full functionality of setuptools_scm (https://github.com/pypa/setuptools_scm). These constraints avoid pitfalls in the interaction of setuptools_scm with Pants's hermetic environments.\n\nIn particular, we ignore any existing setuptools_scm config. Instead you must provide a subset of that config in this target's fields.\n\nIf you need functionality that is not currently exposed here, please reach out to us at https://www.pantsbuild.org/v2.20/docs/getting-help.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "tag_regex", + "default": "'^(?:[\\\\w-]+-)?(?P[vV]?\\\\d+(?:\\\\.\\\\d+){0,2}[^\\\\+]*)(?:\\\\+.*)?$'", + "description": "A Python regex string to extract the version string from a VCS tag.\n\nThe regex needs to contain either a single match group, or a group named version, that captures the actual version information.\n\nNote that this is unrelated to the tags field and Pants's own tags concept.\n\nSee https://github.com/pypa/setuptools_scm for implementation details.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "generate_to", + "default": null, + "description": "Generate the version data to this relative path, using the template field.\n\nNote that the generated output will not be written to disk in the source tree, but will be available as a generated dependency to code that depends on this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "template", + "default": null, + "description": "Generate the version data using this format string, which takes a version format kwarg.\n\nE.g., `'version = \"{version}\"'`", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python", + "summary": "Generates a version string from VCS state." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--backend-packages=\"['', '', ...]\""], + "env_var": "PANTS_BACKEND_PACKAGES", + "fromfile": false, + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--backend-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--backend-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.workunit_logger", + "pants.backend.experimental.tools.yamllint", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--plugins=\"['', '', ...]\""], + "env_var": "PANTS_PLUGINS", + "fromfile": false, + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]plugins-force-resolve"], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "fromfile": false, + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]show-log-target"], + "env_var": "PANTS_SHOW_LOG_TARGET", + "fromfile": false, + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with `--log-levels-by-target`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--show-log-target", "--no-show-log-target"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "fromfile": false, + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with `--level`. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--log-levels-by-target"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--log-levels-by-target"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]log-show-rust-3rdparty"], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "fromfile": false, + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ignore-warnings=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE_WARNINGS", + "fromfile": false, + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ignore-warnings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-warnings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-version="], + "env_var": "PANTS_VERSION", + "fromfile": false, + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.20/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.20.0.dev2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.20.0.dev2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-bin-name="], + "env_var": "PANTS_BIN_NAME", + "fromfile": false, + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-bin-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-bin-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.TG08L3iBWC/.pants.d/workdir", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-workdir="], + "env_var": "PANTS_WORKDIR", + "fromfile": false, + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-workdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-workdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/.pants.d/workdir" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-physical-workdir-base="], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "fromfile": false, + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-physical-workdir-base"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-physical-workdir-base"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.TG08L3iBWC/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-distdir="], + "env_var": "PANTS_DISTDIR", + "fromfile": false, + "help": "Write end products, such as the results of `pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-distdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-distdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.TG08L3iBWC/.pants.d/pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-subprocessdir="], + "env_var": "PANTS_SUBPROCESSDIR", + "fromfile": false, + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-subprocessdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-subprocessdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/.pants.d/pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": ["/tmp/tmp.TG08L3iBWC/pants.toml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-config-files=\"['', '', ...]\""], + "env_var": "PANTS_CONFIG_FILES", + "fromfile": false, + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/tmp/tmp.TG08L3iBWC/pants.toml"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsrc"], + "env_var": "PANTS_PANTSRC", + "fromfile": false, + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsrc-files=\"[, , ...]\""], + "env_var": "PANTS_PANTSRC_FILES", + "fromfile": false, + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsrc-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pythonpath=\"['', '', ...]\""], + "env_var": "PANTS_PYTHONPATH", + "fromfile": false, + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pythonpath"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pythonpath"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]verify-config"], + "env_var": "PANTS_VERIFY_CONFIG", + "fromfile": false, + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": ["*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "fromfile": false, + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-record-option-scopes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--stats-record-option-scopes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["*"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [".*/", "/dist/", "__pycache__", "!.semgrep/"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-ignore=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE", + "fromfile": false, + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc).\n\nPatterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored.\n\n`pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [".*/", "/dist/", "__pycache__", "!.semgrep/"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pants-ignore-use-gitignore"], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "fromfile": false, + "help": "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.\n\nPatterns from `[GLOBAL].pants_ignore` take precedence over these files' rules. For example, you can use `!my_pattern` in `pants_ignore` to have Pants operate on files that are gitignored.\n\nWarning: this does not yet support reading nested gitignore files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--logdir="], + "env_var": "PANTS_LOGDIR", + "fromfile": false, + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "fromfile": false, + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "4GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-max-memory-usage="], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]print-stacktrace"], + "env_var": "PANTS_PRINT_STACKTRACE", + "fromfile": false, + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--engine-visualize-to="], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "fromfile": false, + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--engine-visualize-to"], + "target_field_name": null, + "typ": "dir_option", + "unscoped_cmd_line_args": ["--engine-visualize-to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-pailgun-port="], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "fromfile": false, + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-pailgun-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--pantsd-pailgun-port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "fromfile": false, + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-core="], + "env_var": "PANTS_RULE_THREADS_CORE", + "fromfile": false, + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-core"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-core"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-max="], + "env_var": "PANTS_RULE_THREADS_MAX", + "fromfile": false, + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-dir="], + "env_var": "PANTS_LOCAL_STORE_DIR", + "fromfile": false, + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-store-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-shard-count="], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "fromfile": false, + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-shard-count"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-shard-count"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-processes-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-files-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-directories-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-directories-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--named-caches-dir="], + "env_var": "PANTS_NAMED_CACHES_DIR", + "fromfile": false, + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--named-caches-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--named-caches-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-execution-root-dir="], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "fromfile": false, + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-execution-root-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-execution-root-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": ["fetch", "validate", "defer"], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cache-content-behavior="], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "fromfile": false, + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cache-content-behavior"], + "target_field_name": null, + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": ["--cache-content-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ca-certs-path="], + "env_var": "PANTS_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.20/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-total-child-memory-usage="], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-total-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-total-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-per-child-memory-usage="], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-per-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-per-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-local-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-local-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-local-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-remote-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-cache-namespace="], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "fromfile": false, + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-cache-namespace"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--process-execution-cache-namespace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]process-execution-local-enable-nailgun"], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "fromfile": false, + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "fromfile": false, + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-instance-name="], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "fromfile": false, + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use a Pants plugin which provides remote authentication to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-instance-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-instance-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-ca-certs-path="], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-certs-path=", + "config_key": "remote_client_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-client-certs-path="], + "env_var": "PANTS_REMOTE_CLIENT_CERTS_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_key_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-client-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-client-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-key-path=", + "config_key": "remote_client_key_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-client-key-path="], + "env_var": "PANTS_REMOTE_CLIENT_KEY_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_certs_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-client-key-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-client-key-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token=", + "config_key": "remote_oauth_bearer_token", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-oauth-bearer-token="], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN", + "fromfile": false, + "help": "An oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.\n\nRecommendation: do not place a token directly in `pants.toml`, instead do one of: set the token via the environment variable (`PANTS_REMOTE_OAUTH_BEARER_TOKEN`), CLI option (`--remote-oauth-bearer-token`), or store the token in a file and set the option to `\"@/path/to/token.txt\"` to [read the value from that file](https://www.pantsbuild.org/v2.20/docs/options#reading-individual-option-values-from-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-oauth-bearer-token"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-oauth-bearer-token"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-address="], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "fromfile": false, + "help": "The URI of a server/entity used as a remote file store.\n\nSupported schemes:\n\n- `grpc://`, `grpcs://`: Use a [Remote Execution API](https://github.com/bazelbuild/remote-apis) remote caching/execution server. `grpcs` uses TLS while `grpc` does not. Format: `grpc[s]://$host:$port`.\n\n- `experimental:file://`: Use a local directory as a 'remote' store, for testing, debugging, or potentially an NFS mount. Format: `file://$path`. For example: `file:///tmp/remote-cache-example/` will store within the `/tmp/remote-cache-example/` directory, creating it if necessary.\n\n- `experimental:github-actions-cache+http://`, `experimental:github-actions-cache+https://`: Use the GitHub Actions Cache for fine-grained caching. This requires extracting `ACTIONS_CACHE_URL` (passing it in `PANTS_REMOTE_STORE_ADDRESS`) and `ACTIONS_RUNTIME_TOKEN` (passing it in `PANTS_REMOTE_OAUTH_BEARER_TOKEN`). See https://www.pantsbuild.org/v2.20/docs/remote-caching#github-actions-cache for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-store-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "fromfile": false, + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-store-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.20.0.dev2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-chunk-bytes="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "fromfile": false, + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-retries="], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "fromfile": false, + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-retries"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-retries"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-concurrency="], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-timeout-millis=", + "config_key": "remote_store_rpc_timeout_millis", + "default": 30000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote store RPCs (not including streaming requests) in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 30000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-batch-api-size-limit="], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "fromfile": false, + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": ["ignore", "first_only", "backoff", "always"], + "comma_separated_choices": "ignore, first_only, backoff, always", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "fromfile": false, + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-warnings"], + "target_field_name": null, + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": ["--remote-cache-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-concurrency="], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-timeout-millis=", + "config_key": "remote_cache_rpc_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache RPCs in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-address="], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "fromfile": false, + "help": "The URI of a server/entity used as a remote execution scheduler.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.\n\nSupported schemes:\n\n- `grpc://`, `grpcs://`: Use a [Remote Execution API](https://github.com/bazelbuild/remote-apis) remote caching/execution server. `grpcs` uses TLS while `grpc` does not. Format: `grpc[s]://$host:$port`.\n\n- `experimental:file://`, `experimental:github-actions-cache+http://`, `experimental:github-actions-cache+https://`: Remote execution is not supported.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-execution-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "fromfile": false, + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-execution-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.20.0.dev2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-overall-deadline-secs="], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "fromfile": false, + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-overall-deadline-secs"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-rpc-concurrency="], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-append-only-caches-base-path=", + "config_key": "remote_execution_append_only_caches_base_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-append-only-caches-base-path=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH", + "fromfile": false, + "help": "Sets the base path to use when setting up an append-only cache for a process running remotely. If this option is not set, then append-only caches will not be used with remote execution. The option should be set to the absolute path of a writable directory in the remote execution environment where Pants can create append-only caches for use with remotely executing processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]watch-filesystem"], + "env_var": "PANTS_WATCH_FILESYSTEM", + "fromfile": false, + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-build-file-globs=" + ], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "fromfile": false, + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-build-file-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-build-file-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--unmatched-cli-globs="], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "fromfile": false, + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-cli-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-cli-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": ["BUILD", "BUILD.*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-patterns=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_PATTERNS", + "fromfile": false, + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["BUILD", "BUILD.*"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-ignore=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_IGNORE", + "fromfile": false, + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "fromfile": false, + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.20/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-file-prelude-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-file-prelude-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--subproject-roots=\"['', '', ...]\""], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "fromfile": false, + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subproject-roots"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--subproject-roots"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--loop-max="], + "env_var": "PANTS_LOOP_MAX", + "fromfile": false, + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--loop-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-report-interval="], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "fromfile": false, + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-level="], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "fromfile": false, + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["--streaming-workunits-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]streaming-workunits-complete-async"], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "fromfile": false, + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-execution", + "config_key": "docker_execution", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-execution"], + "env_var": "PANTS_DOCKER_EXECUTION", + "fromfile": false, + "help": "If true, `docker_environment` targets can be used to run builds inside a Docker container.\n\nIf false, anytime a `docker_environment` target is used, Pants will instead fallback to whatever the target's `fallback_environment` field is set to.\n\nThis can be useful, for example, if you want to always use Docker locally, but disable it in CI, or vice versa.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "fromfile": false, + "help": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.\n\nIf you are using the `remote_environment` target mechanism, set this value as a field on the target instead. This option will be ignored.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["-l=", "--level="], + "env_var": "PANTS_LEVEL", + "fromfile": false, + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["-l", "--level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["-l", "--level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spec-files=\"['', '', ...]\""], + "env_var": "PANTS_SPEC_FILES", + "fromfile": false, + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spec-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--spec-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsd"], + "env_var": "PANTS_PANTSD", + "fromfile": false, + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]concurrent"], + "env_var": "PANTS_CONCURRENT", + "fromfile": false, + "help": "Enable concurrent runs of Pants. With this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. As a result, enabling this option will increase the per-run startup cost, but will not block subsequent invocations.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]local-cache"], + "env_var": "PANTS_LOCAL_CACHE", + "fromfile": false, + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["always", "on_failure", "never"], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--keep-sandboxes="], + "env_var": "PANTS_KEEP_SANDBOXES", + "fromfile": false, + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--keep-sandboxes"], + "target_field_name": null, + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": ["--keep-sandboxes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--session-end-tasks-timeout=", + "config_key": "session_end_tasks_timeout", + "default": 3.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--session-end-tasks-timeout="], + "env_var": "PANTS_SESSION_END_TASKS_TIMEOUT", + "fromfile": false, + "help": "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 invocation to a configured remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--session-end-tasks-timeout"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--session-end-tasks-timeout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-execution"], + "env_var": "PANTS_REMOTE_EXECUTION", + "fromfile": false, + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-read"], + "env_var": "PANTS_REMOTE_CACHE_READ", + "fromfile": false, + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-write"], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "fromfile": false, + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]colors"], + "env_var": "PANTS_COLORS", + "fromfile": false, + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--colors", "--no-colors"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--colors", "--no-colors"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dynamic-ui"], + "env_var": "PANTS_DYNAMIC_UI", + "fromfile": false, + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["indicatif-spinner", "experimental-prodash"], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dynamic-ui-renderer="], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "fromfile": false, + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui-renderer"], + "target_field_name": null, + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": ["--dynamic-ui-renderer"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "fromfile": false, + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.20/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tag"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]loop"], + "env_var": "PANTS_LOOP", + "fromfile": false, + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop", "--no-loop"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--loop", "--no-loop"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]process-cleanup"], + "env_var": "PANTS_PROCESS_CLEANUP", + "fromfile": false, + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--process-cleanup", "--no-process-cleanup"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.21.0.dev0.", + "deprecation_active": true, + "display_args": ["--remote-oauth-bearer-token-path="], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "fromfile": false, + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": "use `[GLOBAL].remote_oauth_bearer_token = \"@/path/to/token.txt\"` instead, see https://www.pantsbuild.org/v2.20/docs/reference-global#remote_oauth_bearer_token", + "removal_version": "2.21.0.dev0", + "scoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "add-trailing-comma": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-install-from-resolve="], + "env_var": "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `add-trailing-comma` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-console-script=", + "config_key": "console_script", + "default": "add-trailing-comma", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-console-script="], + "env_var": "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-entry-point="], + "env_var": "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]add-trailing-comma-skip"], + "env_var": "PANTS_ADD_TRAILING_COMMA_SKIP", + "fromfile": false, + "help": "If true, don't use add-trailing-comma when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-skip", + "--no-add-trailing-comma-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to add-trailing-comma, e.g. `--add-trailing-comma-args='--py36-plus'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "scope": "add-trailing-comma" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]anonymous-telemetry-enabled"], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "fromfile": false, + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.20/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--anonymous-telemetry-repo-id="], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "fromfile": false, + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.20/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--anonymous-telemetry-repo-id"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--repo-id"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--apache-thrift-expected-version="], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "fromfile": false, + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-thrift-search-paths"], + "target_field_name": "apache_thrift_thrift_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--thrift-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-install-from-resolve="], + "env_var": "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `autoflake` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-console-script="], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-entry-point="], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]autoflake-skip"], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "fromfile": false, + "help": "If true, don't use Autoflake when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-skip", "--no-autoflake-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": ["--remove-all-unused-imports"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["--remove-all-unused-imports"] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-install-from-resolve="], + "env_var": "PANTS_BANDIT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `bandit` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BANDIT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-console-script="], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-entry-point="], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-config="], + "env_var": "PANTS_BANDIT_CONFIG", + "fromfile": false, + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]bandit-skip"], + "env_var": "PANTS_BANDIT_SKIP", + "fromfile": false, + "help": "If true, don't use Bandit when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-skip", "--no-bandit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-args=\"[, , ...]\""], + "env_var": "PANTS_BANDIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-install-from-resolve="], + "env_var": "PANTS_BLACK_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `black` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BLACK_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-console-script="], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-entry-point="], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-config="], + "env_var": "PANTS_BLACK_CONFIG", + "fromfile": false, + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-config-discovery"], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-skip"], + "env_var": "PANTS_BLACK_SKIP", + "fromfile": false, + "help": "If true, don't use Black when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-skip", "--no-black-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-args=\"[, , ...]\""], + "env_var": "PANTS_BLACK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-version="], + "env_var": "PANTS_BUF_VERSION", + "fromfile": false, + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-url-template="], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-config="], + "env_var": "PANTS_BUF_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Buf (https://docs.buf.build/configuration/overview).\n\nSetting this option will disable `[buf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-config-discovery"], + "env_var": "PANTS_BUF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant root config files during runs (`buf.yaml`). If the json format is preferred, the path to the `buf.json` file should be provided in the config option.\n\nUse `[buf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config-discovery", + "--no-buf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-format-skip"], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-skip", "--no-buf-format-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--format-skip", "--no-format-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-lint-skip"], + "env_var": "PANTS_BUF_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-skip", "--no-buf-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-skip", "--no-lint-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--format-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--lint-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "build-deprecations-fixer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]build-deprecations-fixer-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]build-deprecations-fixer-skip"], + "env_var": "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP", + "fromfile": false, + "help": "If true, don't use BUILD Deprecations Fixer when running `scie-pants-linux-x86_64 fix`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-deprecations-fixer-skip", + "--no-build-deprecations-fixer-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for:\n\n - Renamed targets\n - Renamed fields", + "is_goal": false, + "provider": "pants.backend.build_files.fix.deprecations", + "scope": "build-deprecations-fixer" + }, + "buildifier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-version="], + "env_var": "PANTS_BUILDIFIER_VERSION", + "fromfile": false, + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-url-template="], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buildifier-skip"], + "env_var": "PANTS_BUILDIFIER_SKIP", + "fromfile": false, + "help": "If true, don't use Buildifier when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-skip", "--no-buildifier-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "is_goal": false, + "provider": "pants.backend.build_files.fmt.buildifier", + "scope": "buildifier" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-since="], + "env_var": "PANTS_CHANGED_SINCE", + "fromfile": false, + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-since"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--since"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-diffspec="], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "fromfile": false, + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-diffspec"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--diffspec"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependents=", + "config_key": "dependents", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-dependents="], + "env_var": "PANTS_CHANGED_DEPENDENTS", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-dependents"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependents"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [ + { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": ["--changed-dependees="], + "env_var": "PANTS_CHANGED_DEPENDEES", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": "Use --dependents instead", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": ["--changed-dependees"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependees"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.20/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--check-only=\"['', '', ...]\""], + "env_var": "PANTS_CHECK_ONLY", + "fromfile": false, + "help": "Only run these checkers and skip all others.\n\nThe checker names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkers.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--check-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cli-alias=\"{'key1': val1, 'key2': val2, ...}\""], + "env_var": "PANTS_CLI_ALIAS", + "fromfile": false, + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependents=transitive\"\n\nThis would allow you to run `scie-pants-linux-x86_64 green all-changed`, which is shorthand for `scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependents=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cli-alias"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-version="], + "env_var": "PANTS_COURSIER_VERSION", + "fromfile": false, + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-url-template="], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-repos=\"['', '', ...]\""], + "env_var": "PANTS_COURSIER_REPOS", + "fromfile": false, + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-install-from-resolve="], + "env_var": "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `coverage-py` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-console-script="], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-entry-point="], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-output-dir="], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-config="], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "fromfile": false, + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-config-discovery"], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-filter=\"['', '', ...]\""], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "fromfile": false, + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']`.\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-filter"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--filter"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["console", "xml", "html", "raw", "json", "lcov"], + "comma_separated_choices": "console, xml, html, raw, json, lcov", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": ["console"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "fromfile": false, + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-report"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--report"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["console"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-global-report"], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "fromfile": false, + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--global-report", "--no-global-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-fail-under="], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "fromfile": false, + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting `fail_under` in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set `[report] precision` properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-fail-under"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--fail-under"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "debug-adapter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-host="], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "fromfile": false, + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-host"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--host"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-port="], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "fromfile": false, + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "is_goal": false, + "provider": "pants.core", + "scope": "debug-adapter" + }, + "debugpy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-install-from-resolve="], + "env_var": "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `debugpy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-console-script="], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-entry-point="], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DEBUGPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "debugpy" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-output-file="], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-sep="], + "env_var": "PANTS_DEPENDEES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-transitive"], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-closed"], + "env_var": "PANTS_DEPENDEES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-output-file="], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-sep="], + "env_var": "PANTS_DEPENDENCIES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-transitive"], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-closed"], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "dependents": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-output-file="], + "env_var": "PANTS_DEPENDENTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-sep="], + "env_var": "PANTS_DEPENDENTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-transitive"], + "env_var": "PANTS_DEPENDENTS_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-transitive", + "--no-dependents-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-closed"], + "env_var": "PANTS_DEPENDENTS_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-closed", + "--no-dependents-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependents" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-install-from-resolve="], + "env_var": "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `docformatter` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-console-script="], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-entry-point="], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docformatter-skip"], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "fromfile": false, + "help": "If true, don't use docformatter when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-tools=\"['', '', ...]\""], + "env_var": "PANTS_DOCKER_TOOLS", + "fromfile": false, + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tools"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tools"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-tailor"], + "env_var": "PANTS_DOCKER_TAILOR", + "fromfile": false, + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tailor", "--no-docker-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find the Docker client and any tools required. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-executable-search-paths"], + "target_field_name": "docker_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-env-vars"], + "target_field_name": "docker_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "fromfile": true, + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n \"use_local_alias\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.\n\nIf `use_local_alias` is true, a built image is additionally tagged locally using the registry alias as the value for repository (i.e. the additional image tag is not pushed) and will be used for any `pants run` requests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-repository="], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "fromfile": false, + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-context-root="], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "fromfile": false, + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-context-root"], + "target_field_name": null, + "typ": "workspace_path", + "unscoped_cmd_line_args": ["--default-context-root"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-use-buildx", + "config_key": "use_buildx", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-use-buildx"], + "env_var": "PANTS_DOCKER_USE_BUILDX", + "fromfile": false, + "help": "Use [buildx](https://github.com/docker/buildx#buildx) (and BuildKit) for builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-use-buildx", + "--no-docker-use-buildx" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--use-buildx", "--no-use-buildx"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "fromfile": false, + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-build-target-stage="], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "fromfile": false, + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-target-stage"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-target-stage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "build_hosts", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_BUILD_HOSTS", + "fromfile": false, + "help": "Hosts entries to be added to the `/etc/hosts` file in all built images.\n\nExample:\n\n [docker]\n build_hosts = {\"docker\": \"10.180.0.1\", \"docker2\": \"10.180.0.2\"}\n\nUse the `extra_build_hosts` field on a `docker_image` target for additional image specific host entries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-hosts"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--build-hosts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-no-cache", + "config_key": "build_no_cache", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-build-no-cache"], + "env_var": "PANTS_DOCKER_BUILD_NO_CACHE", + "fromfile": false, + "help": "Do not use the Docker cache when building images.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-no-cache", + "--no-docker-build-no-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--build-no-cache", "--no-build-no-cache"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-build-verbose"], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "fromfile": false, + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--build-verbose", "--no-build-verbose"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "fromfile": false, + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--run-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dockerfile-parser-install-from-resolve="], + "env_var": "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `dockerfile-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.4.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-version="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "fromfile": false, + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.4.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-url-template="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Terraform processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-extra-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]download-terraform-tailor"], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "fromfile": false, + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to terraform, e.g. `--download-terraform-args='-auto-approve'`.\n\nAdditional arguments to pass to the Terraform command line.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "environments-preview": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "names", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_ENVIRONMENTS_PREVIEW_NAMES", + "fromfile": false, + "help": "A mapping of logical names to addresses to environment targets. For example:\n\n [environments-preview.names]\n linux_local = \"//:linux_env\"\n macos_local = \"//:macos_env\"\n centos6 = \"//:centos6_docker_env\"\n linux_ci = \"build-support:linux_ci_env\"\n macos_ci = \"build-support:macos_ci_env\"\n\nTo use an environment for a given target, specify the name in the `environment` field on that target. Pants will consume the environment target at the address mapped from that name.\n\nPants will ignore any environment targets that are not given a name via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--environments-preview-names"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A highly experimental subsystem to allow setting environment variables and executable search paths for different environments, e.g. macOS vs. Linux.", + "is_goal": false, + "provider": "", + "scope": "environments-preview" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]experimental-bsp-server"], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "fromfile": false, + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--server", "--no-server"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": ["PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-runner-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--runner-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["PATH"] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "fromfile": false, + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-groups-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--groups-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-bsp" + }, + "experimental-deploy": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Perform a deployment process.", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-deploy" + }, + "experimental-explorer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-address="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "fromfile": false, + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-port="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "fromfile": false, + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run the Pants Explorer Web UI server.", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-explorer" + }, + "export": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-py-editable-in-resolve=\"['', '', ...]\"", + "config_key": "py_editable_in_resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-editable-in-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE", + "fromfile": false, + "help": "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.\n\nIf a resolve name is not in this list, 'python_distribution' targets will not be installed in the virtualenv. This defaults to an empty list for backwards compatibility and to prevent unnecessary work to generate and install the PEP-660 editable wheels.\n\nThis only applies when '[python].enable_resolves' is true and when exporting a 'mutable_virtualenv' ('symlinked_immutable_virtualenv' exports are not \"full\" virtualenvs because they must not be edited, and do not include 'pip').\n\nNOTE: If you are using legacy exports (not using the '--resolve' option), then this option has no effect. Legacy exports will not include any editable installs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-editable-in-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--py-editable-in-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--export-resolve=\"['', '', ...]\""], + "env_var": "PANTS_EXPORT_RESOLVE", + "fromfile": false, + "help": "Export the specified resolve(s). The export format is backend-specific, e.g., Python resolves are exported as virtualenvs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["mutable_virtualenv", "symlinked_immutable_virtualenv"], + "comma_separated_choices": "mutable_virtualenv, symlinked_immutable_virtualenv", + "comma_separated_display_args": "--export-py-resolve-format=", + "config_key": "py_resolve_format", + "default": "mutable_virtualenv", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-resolve-format=" + ], + "env_var": "PANTS_EXPORT_PY_RESOLVE_FORMAT", + "fromfile": false, + "help": "Export Python resolves using this format. Options are:\n - `mutable_virtualenv`: Export a standalone mutable virtualenv that you can\n further modify.\n - `symlinked_immutable_virtualenv`: Export a symlink into a cached Python virtualenv.\n This virtualenv will have no pip binary, and will be immutable. Any attempt to\n modify it will corrupt the cache! It may, however, take significantly less time\n to export than a standalone, mutable virtualenv.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-resolve-format"], + "target_field_name": null, + "typ": "PythonResolveExportFormat", + "unscoped_cmd_line_args": ["--py-resolve-format"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mutable_virtualenv" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.core", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-output-file="], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-sep="], + "env_var": "PANTS_FILEDEPS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-absolute"], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "fromfile": false, + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--absolute", "--no-absolute"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-globs"], + "env_var": "PANTS_FILEDEPS_GLOBS", + "fromfile": false, + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-globs", "--no-filedeps-globs"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--globs", "--no-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-transitive"], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "fromfile": false, + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-output-file="], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-sep="], + "env_var": "PANTS_FILTER_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "fromfile": false, + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-target-type"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--target-type"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["all", "file", "BUILD"], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-granularity="], + "env_var": "PANTS_FILTER_GRANULARITY", + "fromfile": false, + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-granularity"], + "target_field_name": null, + "typ": "TargetGranularity", + "unscoped_cmd_line_args": ["--granularity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "fromfile": false, + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-address-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--address-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "fromfile": false, + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-tag-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "fix": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-batch-size="], + "env_var": "PANTS_FIX_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each fixer batch.\n\nFixer processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in fixer processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-only=\"['', '', ...]\""], + "env_var": "PANTS_FIX_ONLY", + "fromfile": false, + "help": "Only run these fixers and skip all others.\n\nThe fixer names are outputted at the final summary of running this goal, e.g. `autoflake` and `pyupgrade`. You can also run `fix --only=fake` to get a list of all activated fixers.\n\nYou can repeat this option, e.g. `fix --only=autoflake --only=pyupgrade` or `fix --only=['autoflake', 'pyupgrade']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fix-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]fix-skip-formatters"], + "env_var": "PANTS_FIX_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters.\n\nFYI: when running `scie-pants-linux-x86_64 fix fmt ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `fix` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-skip-formatters", + "--no-fix-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autofix source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fix" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-install-from-resolve="], + "env_var": "PANTS_FLAKE8_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `flake8` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-requirements=\"['', '', ...]\""], + "env_var": "PANTS_FLAKE8_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-console-script="], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-entry-point="], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-config="], + "env_var": "PANTS_FLAKE8_CONFIG", + "fromfile": false, + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "fromfile": false, + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-extra-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-config-discovery"], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add `'build-support/flake8'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.20/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside flake8 itself, as described in https://www.pantsbuild.org/v2.20/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-skip"], + "env_var": "PANTS_FLAKE8_SKIP", + "fromfile": false, + "help": "If true, don't use Flake8 when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-skip", "--no-flake8-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-args=\"[, , ...]\""], + "env_var": "PANTS_FLAKE8_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.flake8", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-batch-size="], + "env_var": "PANTS_FMT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-only=\"['', '', ...]\""], + "env_var": "PANTS_FMT_ONLY", + "fromfile": false, + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--generate-lockfiles-custom-command="], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "fromfile": false, + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-custom-command"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--custom-command"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "fromfile": false, + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from backend-specific configuration such as `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff", + "config_key": "diff", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF", + "fromfile": false, + "help": "Print a summary of changed distributions after generating the lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff", + "--no-generate-lockfiles-diff" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--diff", "--no-diff"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff-include-unchanged", + "config_key": "diff_include_unchanged", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff-include-unchanged"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED", + "fromfile": false, + "help": "Include unchanged distributions in the diff summary output. Implies `diff=true`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff-include-unchanged", + "--no-generate-lockfiles-diff-include-unchanged" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff-include-unchanged", + "--no-diff-include-unchanged" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "generate-snapshots": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate test snapshots.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-snapshots" + }, + "go-generate": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-generate-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-generate-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_GENERATE_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking generator programs. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-generate-env-vars"], + "target_field_name": "go_generate_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the `//go:generate` directives.\n\nSee https://go.dev/blog/generate for details.", + "is_goal": true, + "provider": "pants.backend.experimental.go", + "scope": "go-generate" + }, + "go-test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{target_spec}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-coverage-output-dir="], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Go coverage reports to. Must be relative to the build root.\n\nReplacements:\n\n - `{distdir}` is replaced with the Pants `distdir`.\n - `{target_spec}` is replaced with the address of the applicable `go_package` target with `/`\n characters replaced with dots (`.`).\n - `{import_path}` is replaced with the applicable package's import path. Subdirectories will be made\n for any path components separated by `/` characters.\n - `{import_path_escaped}` is replaced with the applicable package's import path but with\n slashes converted to underscores. This is deprecated and only exists to support behavior from\n earlier versions.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--coverage-output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{target_spec}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-output-test-binary", + "config_key": "output_test_binary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-output-test-binary"], + "env_var": "PANTS_GO_TEST_OUTPUT_TEST_BINARY", + "fromfile": false, + "help": "Write the test binary to the test extra output directory.\n\nThis is similar to the `go test -c` option, but will still run the underlying test.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-output-test-binary", + "--no-go-test-output-test-binary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--output-test-binary", + "--no-output-test-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["set", "count", "atomic"], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-cover-mode="], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "fromfile": false, + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via `--test-use-coverage`. Valid values are `set`, `count`, and `atomic`:\n\n * `set`: bool: does this statement run?\n * `count`: int: how many times does this statement run?\n * `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-cover-mode"], + "target_field_name": null, + "typ": "GoCoverMode", + "unscoped_cmd_line_args": ["--cover-mode"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-coverage-html", + "config_key": "coverage_html", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-coverage-html"], + "env_var": "PANTS_GO_TEST_COVERAGE_HTML", + "fromfile": false, + "help": "If true, then convert coverage reports to HTML format and write a `coverage.html` file next to the raw coverage data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-html", + "--no-go-test-coverage-html" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--coverage-html", "--no-coverage-html"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-packages=\"['', '', ...]\"", + "config_key": "coverage_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_PACKAGES", + "fromfile": false, + "help": "A list of \"import path patterns\" for determining which import paths will be instrumented for code coverage.\n\nFrom `go help packages`:\n\nAn import path is a pattern if it includes one or more \"...\" wildcards, each of which can match any string, including the empty string and strings containing slashes. Such a pattern expands to all package directories found in the GOPATH trees with names matching the patterns.\n\nTo make common patterns more convenient, there are two special cases. First, /... at the end of the pattern can match an empty string, so that net/... matches both net and packages in its subdirectories, like net/http. Second, any slash-separated pattern element containing a wildcard never participates in a match of the \"vendor\" element in the path of a vendored package, so that ./... does not match packages in subdirectories of ./vendor or ./mycode/vendor, but ./vendor/... and ./mycode/vendor/... do. Note, however, that a directory named vendor that itself contains code is not a vendored package: cmd/vendor would be a command named vendor, and the pattern cmd/... matches it. See golang.org/s/go15vendor for more about vendoring.\n\nThis option is similar to the `go test -coverpkg` option, but without support currently for reserved import path patterns like `std` and `all`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--coverage-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-skip"], + "env_var": "PANTS_GO_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Go test binary when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-skip", "--no-go-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-race", + "config_key": "force_race", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-race"], + "env_var": "PANTS_GO_TEST_FORCE_RACE", + "fromfile": false, + "help": "If true, then always enable the Go data race detector when running tests regardless of the test-by-test `test_race` field on the relevant `go_package` target.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-race", + "--no-go-test-force-race" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-race", "--no-force-race"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-msan", + "config_key": "force_msan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-msan"], + "env_var": "PANTS_GO_TEST_FORCE_MSAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"memory sanitizer\" when running tests regardless of the test-by-test `msan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-msan", + "--no-go-test-force-msan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-msan", "--no-force-msan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-asan", + "config_key": "force_asan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-asan"], + "env_var": "PANTS_GO_TEST_FORCE_ASAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"address sanitizer\" when running tests regardless of the test-by-test `asan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-asan", + "--no-go-test-force-asan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-asan", "--no-force-asan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-block-profile", + "config_key": "block_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-block-profile"], + "env_var": "PANTS_GO_TEST_BLOCK_PROFILE", + "fromfile": false, + "help": "Capture a goroutine blocking profile from the execution of the test runner. The profile will be written to the file `block.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-block-profile", + "--no-go-test-block-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--block-profile", "--no-block-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-cpu-profile", + "config_key": "cpu_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-cpu-profile"], + "env_var": "PANTS_GO_TEST_CPU_PROFILE", + "fromfile": false, + "help": "Capture a CPU profile from the execution of the test runner. The profile will be written to the file `cpu.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cpu-profile", + "--no-go-test-cpu-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cpu-profile", "--no-cpu-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mem-profile", + "config_key": "mem_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mem-profile"], + "env_var": "PANTS_GO_TEST_MEM_PROFILE", + "fromfile": false, + "help": "Capture an allocation profile from the execution of the test runner after tests have passed. The profile will be written to the file `mem.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mem-profile", + "--no-go-test-mem-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mem-profile", "--no-mem-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mutex-profile", + "config_key": "mutex_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mutex-profile"], + "env_var": "PANTS_GO_TEST_MUTEX_PROFILE", + "fromfile": false, + "help": "Capture a mutex contention profile from the execution of the test runner when all tests are complete. The profile will be written to the file `mutex.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mutex-profile", + "--no-go-test-mutex-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mutex-profile", "--no-mutex-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-trace", + "config_key": "trace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-trace"], + "env_var": "PANTS_GO_TEST_TRACE", + "fromfile": false, + "help": "Capture an execution trace from the execution of the test runner. The trace will be written to the file `trace.out` in the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-trace", "--no-go-test-trace"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--trace", "--no-trace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]gofmt-skip"], + "env_var": "PANTS_GOFMT_SKIP", + "fromfile": false, + "help": "If true, don't use gofmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-skip", "--no-gofmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--gofmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--gofmt-args=\"[, , ...]\""], + "env_var": "PANTS_GOFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to gofmt, e.g. `--gofmt-args='-s -e'`.\n\nOnly the following style related options are supported: `-e`, `-r`, `-s`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-go-mod-targets"], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "fromfile": false, + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-package-targets"], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "fromfile": false, + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-binary-targets"], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-tool-name="], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "fromfile": false, + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-tool-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-tool-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-bin-relpath="], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "fromfile": false, + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-bin-relpath"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-bin-relpath"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-subprocess-env-vars"], + "target_field_name": "golang_subprocess_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--subprocess-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gcc-binary-name=", + "config_key": "cgo_gcc_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gcc-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GCC_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gcc-binary-name"], + "target_field_name": "golang_cgo_gcc_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gcc-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gxx-binary-name=", + "config_key": "cgo_gxx_binary_name", + "default": "g++", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gxx-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GXX_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C++ code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gxx-binary-name"], + "target_field_name": "golang_cgo_gxx_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gxx-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "g++" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-binary-name=", + "config_key": "cgo_fortran_binary_name", + "default": "gfortran", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-fortran-binary-name="], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile fortran code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-binary-name"], + "target_field_name": "golang_cgo_fortran_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-fortran-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gfortran" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-external-linker-binary-name=", + "config_key": "external_linker_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-external-linker-binary-name="], + "env_var": "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use as the \"external linker\" when invoking `go tool link`. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-external-linker-binary-name"], + "target_field_name": "golang_external_linker_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--external-linker-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-c-flags=\"['', '', ...]\"", + "config_key": "cgo_c_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-c-flags=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_CGO_C_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C code when Cgo is enabled. Equivalent to setting the CGO_CFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-c-flags"], + "target_field_name": "golang_cgo_c_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-c-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-cxx-flags=\"['', '', ...]\"", + "config_key": "cgo_cxx_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-cxx-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_CXX_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C++ code when Cgo is enabled. Equivalent to setting the CGO_CXXFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-cxx-flags"], + "target_field_name": "golang_cgo_cxx_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-cxx-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-flags=\"['', '', ...]\"", + "config_key": "cgo_fortran_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling Fortran code when Cgo is enabled. Equivalent to setting the CGO_FFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-flags"], + "target_field_name": "golang_cgo_fortran_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-fortran-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-linker-flags=\"['', '', ...]\"", + "config_key": "cgo_linker_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-linker-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_LINKER_FLAGS", + "fromfile": false, + "help": "Compiler options used when linking native code when Cgo is enabled. Equivalent to setting the CGO_LDFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-linker-flags"], + "target_field_name": "golang_cgo_linker_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-linker-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-minimum-expected-version="], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "fromfile": false, + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-minimum-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--minimum-expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-cgo-enabled", + "config_key": "cgo_enabled", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-cgo-enabled"], + "env_var": "PANTS_GOLANG_CGO_ENABLED", + "fromfile": false, + "help": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-enabled", + "--no-golang-cgo-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cgo-enabled", "--no-cgo-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable\n* ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binary with the version in `BUILD_ROOT/.tool-versions`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-go-search-paths"], + "target_field_name": "golang_go_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--go-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-tool-search-paths=\"['', '', ...]\"", + "config_key": "cgo_tool_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-tool-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for tools needed by CGo (e.g., gcc, g++).\n\nSpecify absolute paths to directories with tools needed by CGo , e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-tool-search-paths"], + "target_field_name": "golang_cgo_tool_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-tool-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-version="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-lockfile="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-skip"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Google Java Format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-aosp"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "fromfile": false, + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--aosp", "--no-aosp"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-version="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "fromfile": false, + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-url-template="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-version="], + "env_var": "PANTS_HADOLINT_VERSION", + "fromfile": false, + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-url-template="], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-config="], + "env_var": "PANTS_HADOLINT_CONFIG", + "fromfile": false, + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-config-discovery"], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-skip"], + "env_var": "PANTS_HADOLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Hadolint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-skip", "--no-hadolint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.12.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-version="], + "env_var": "PANTS_HELM_VERSION", + "fromfile": false, + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.12.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-url-template="], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-extra-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-charts", + "config_key": "tailor_charts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-tailor-charts"], + "env_var": "PANTS_HELM_TAILOR_CHARTS", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-charts", + "--no-helm-tailor-charts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-charts", "--no-tailor-charts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-unittests", + "config_key": "tailor_unittests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-tailor-unittests"], + "env_var": "PANTS_HELM_TAILOR_UNITTESTS", + "fromfile": false, + "help": "If true, add `helm_unittest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-unittests", + "--no-helm-tailor-unittests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-unittests", + "--no-tailor-unittests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "fromfile": true, + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-lint-strict"], + "env_var": "PANTS_HELM_LINT_STRICT", + "fromfile": false, + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-strict", "--no-lint-strict"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-default-registry-repository="], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "fromfile": false, + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-default-registry-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-registry-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as follows:\n\n * --atomic\n * --cleanup-on-fail\n * --create-namespace\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n * --timeout\n\nBefore attempting to use passthrough arguments, check the reference of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "helm-k8s-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-k8s-parser-install-from-resolve="], + "env_var": "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-k8s-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Analyses K8S manifests rendered by Helm.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-k8s-parser" + }, + "helm-post-renderer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-post-renderer-install-from-resolve="], + "env_var": "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-post-renderer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-post-renderer" + }, + "helm-unittest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.3.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-version="], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "fromfile": false, + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.3.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-url-template="], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-color"], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "fromfile": false, + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--color", "--no-color"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["XUnit", "NUnit", "JUnit"], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "fromfile": false, + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-output-type"], + "target_field_name": null, + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": ["--output-type"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-skip"], + "env_var": "PANTS_HELM_UNITTEST_SKIP", + "fromfile": false, + "help": "If true, don't use helmunittestsubsystem when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-skip", + "--no-helm-unittest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/helm-unittest)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-unittest" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-install-from-resolve="], + "env_var": "PANTS_IPYTHON_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ipython` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-console-script="], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-entry-point="], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ipython-ignore-cwd"], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "fromfile": false, + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--ignore-cwd", "--no-ignore-cwd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-install-from-resolve="], + "env_var": "PANTS_ISORT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `isort` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-requirements=\"['', '', ...]\""], + "env_var": "PANTS_ISORT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-console-script="], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-entry-point="], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "fromfile": false, + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-config"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-config-discovery"], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-skip"], + "env_var": "PANTS_ISORT_SKIP", + "fromfile": false, + "help": "If true, don't use isort when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-skip", "--no-isort-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-args=\"[, , ...]\""], + "env_var": "PANTS_ISORT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "jarjar": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-version=", + "config_key": "version", + "default": "1.8.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-version="], + "env_var": "PANTS_JARJAR_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[jarjar].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.8.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[jarjar].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-lockfile="], + "env_var": "PANTS_JARJAR_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/jvm/shading/jarjar.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=jarjar`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `jarjar` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jarjar-skip-manifest", + "config_key": "skip_manifest", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jarjar-skip-manifest"], + "env_var": "PANTS_JARJAR_SKIP_MANIFEST", + "fromfile": false, + "help": "Skip the processing of the JAR manifest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-skip-manifest", + "--no-jarjar-skip-manifest" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-manifest", "--no-skip-manifest"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["fatal", "skip", "omit", "move"], + "comma_separated_choices": "fatal, skip, omit, move", + "comma_separated_display_args": "--jarjar-misplaced-class-strategy=", + "config_key": "misplaced_class_strategy", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-misplaced-class-strategy=" + ], + "env_var": "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY", + "fromfile": false, + "help": "The strategy to use when processing class files that are in the wrong package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-misplaced-class-strategy"], + "target_field_name": null, + "typ": "MisplacedClassStrategy", + "unscoped_cmd_line_args": ["--misplaced-class-strategy"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jarjar" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-imports"], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-consumed-types"], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "fromfile": false, + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--java-infer-third-party-import-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--third-party-import-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]javac-tailor-source-targets"], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--javac-args=\"[, , ...]\""], + "env_var": "PANTS_JAVAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--javac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-version="], + "env_var": "PANTS_JUNIT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-lockfile="], + "env_var": "PANTS_JUNIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]junit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]junit-skip"], + "env_var": "PANTS_JUNIT_SKIP", + "fromfile": false, + "help": "If true, don't use JUnit when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-skip", "--no-junit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-tool-jdk="], + "env_var": "PANTS_JVM_TOOL_JDK", + "fromfile": false, + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-tool-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--tool-jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-jdk="], + "env_var": "PANTS_JVM_JDK", + "fromfile": false, + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jvm-reproducible-jars"], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "fromfile": false, + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-nailgun-remote-cache-speculation-delay=" + ], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "fromfile": false, + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-nailgun-remote-cache-speculation-delay" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--nailgun-remote-cache-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-global-options=\"['', '', ...]\""], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-global-options"], + "target_field_name": "jvm_global_options", + "typ": "list", + "unscoped_cmd_line_args": ["--global-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "fromfile": false, + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-default-resolve="], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-debug-args=\"['', '', ...]\""], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "fromfile": false, + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like `['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-debug-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--debug-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "kotlin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-tailor-source-targets"], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlin-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin" + }, + "kotlin-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-imports"], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-consumed-types"], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Kotlin targets.", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin-infer" + }, + "kotlinc": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlinc" + }, + "ktlint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-version="], + "env_var": "PANTS_KTLINT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.pinterest:ktlint:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.pinterest:ktlint:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-lockfile="], + "env_var": "PANTS_KTLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ktlint-skip"], + "env_var": "PANTS_KTLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Ktlint when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-skip", "--no-ktlint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "scope": "ktlint" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-batch-size="], + "env_var": "PANTS_LINT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-only=\"['', '', ...]\""], + "env_var": "PANTS_LINT_ONLY", + "fromfile": false, + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-formatters"], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fmt lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-fixers", + "config_key": "skip_fixers", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-fixers"], + "env_var": "PANTS_LINT_SKIP_FIXERS", + "fromfile": false, + "help": "If true, skip running all fixers in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fix lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fix` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-fixers", + "--no-lint-skip-fixers" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-fixers", "--no-skip-fixers"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run linters/formatters/fixers in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-output-file="], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-sep="], + "env_var": "PANTS_LIST_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]list-documented"], + "env_var": "PANTS_LIST_DOCUMENTED", + "fromfile": false, + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-documented", "--no-list-documented"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--documented", "--no-documented"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-install-from-resolve="], + "env_var": "PANTS_MYPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-requirements=\"['', '', ...]\""], + "env_var": "PANTS_MYPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-console-script="], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-entry-point="], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-config="], + "env_var": "PANTS_MYPY_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-config-discovery"], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].install_from_resolve` to a resolve whose lockfile includes those plugins, and set the `plugins` option in `mypy.ini`. See https://www.pantsbuild.org/v2.20/docs/python-check-goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-skip"], + "env_var": "PANTS_MYPY_SKIP", + "fromfile": false, + "help": "If true, don't use MyPy when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-skip", "--no-mypy-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-args=\"[, , ...]\""], + "env_var": "PANTS_MYPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python.typecheck.mypy", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-protobuf-install-from-resolve="], + "env_var": "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy-protobuf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "nodejs": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-version=", + "config_key": "version", + "default": "v16.15.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-version="], + "env_var": "PANTS_NODEJS_VERSION", + "fromfile": false, + "help": "Use this version of nodejs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v16.15.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_NODEJS_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-template=", + "config_key": "url_template", + "default": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-url-template="], + "env_var": "PANTS_NODEJS_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_RESOLVES", + "fromfile": false, + "help": "A mapping of names to lockfile paths used in your project.\n\nSpecifying a resolve name is optional. If unspecified, the default resolve name is calculated by taking the path from the source root to the directory containing the lockfile and replacing '/' with '.' in that path.\n\nExample: An npm lockfile located at `src/js/package/package-lock.json' will result in a resolve named `js.package`, assuming src/ is a source root.\n\nRun `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find any tools required to run nodejs processes. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-executable-search-paths"], + "target_field_name": "nodejs_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Node.js distributions.\n\nThis option is only used if a templated url download specified via [nodejs].known_versions does not contain a version matching the configured [nodejs].version range.\n\nYou can specify absolute paths to binaries and/or to directories containing binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Node.js versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binaries with the version in `BUILD_ROOT/.tool-versions`\n* ``, all NodeJS versions under $NVM_DIR/versions/node\n* ``, the nvm installation with the version in BUILD_ROOT/.nvmrc\nNote that the version in the .nvmrc file has to be on the form \"vX.Y.Z\".", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-search-path"], + "target_field_name": "nodejs_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-corepack-env-vars=\"[, , ...]\"", + "config_key": "corepack_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-corepack-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_COREPACK_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `corepack` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nReview https://github.com/nodejs/corepack#environment-variables for available variables.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-corepack-env-vars"], + "target_field_name": "nodejs_corepack_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--corepack-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-manager=", + "config_key": "package_manager", + "default": "npm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-package-manager="], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGER", + "fromfile": false, + "help": "Default Node.js package manager to use.\n\nYou can either rely on this default together with the [nodejs].package_managers option, or specify the `package.json#packageManager` tool and version in the package.json of your project.\n\nSpecifying conflicting package manager versions within a multi-package workspace is an error.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-manager"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--package-manager"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "npm" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "package_managers", + "default": { + "npm": "8.5.5" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGERS", + "fromfile": false, + "help": "A mapping of package manager versions to semver releases.\n\nMany organizations only need a single version of a package manager, which is a good default and often the simplest thing to do.\n\nThe version download is managed by Corepack. This mapping corresponds to the https://github.com/nodejs/corepack#known-good-releases setting, using the `--activate` flag.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-managers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--package-managers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "npm": "8.5.5" + } + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Node.js Javascript runtime (including Corepack).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "nodejs" + }, + "nodejs-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]nodejs-infer-imports"], + "env_var": "PANTS_NODEJS_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `// pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-imports", + "--no-nodejs-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-package-json-entry-points", + "config_key": "package_json_entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]nodejs-infer-package-json-entry-points"], + "env_var": "PANTS_NODEJS_INFER_PACKAGE_JSON_ENTRY_POINTS", + "fromfile": false, + "help": "Infer a `package_json`'s dependencies by parsing entry point statements from the package.json file.\n\nTo ignore a false positive, you can put `!{bad_address}` in the `dependencies` field of the `package_json` target.\n\nSee https://nodejs.org/api/packages.html#package-entry-points and\n https://docs.npmjs.com/cli/v9/configuring-npm/package-json#browser.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-package-json-entry-points", + "--no-nodejs-infer-package-json-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-json-entry-points", + "--no-package-json-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for javascript targets.", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "nodejs-infer" + }, + "openapi": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-tailor-targets", + "config_key": "tailor_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]openapi-tailor-targets"], + "env_var": "PANTS_OPENAPI_TAILOR_TARGETS", + "fromfile": false, + "help": "If true, add `openapi_documents` and `openapi_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-tailor-targets", + "--no-openapi-tailor-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-targets", "--no-tailor-targets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The OpenAPI Specification (https://swagger.io/specification/).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi", + "scope": "openapi" + }, + "openapi-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-version=", + "config_key": "version", + "default": "openapi-format@1.13.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--openapi-format-version="], + "env_var": "PANTS_OPENAPI_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--openapi-format-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "openapi-format@1.13.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--openapi-format-install-from-resolve="], + "env_var": "PANTS_OPENAPI_FORMAT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--openapi-format-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]openapi-format-skip"], + "env_var": "PANTS_OPENAPI_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use openapi-format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-skip", + "--no-openapi-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--openapi-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_OPENAPI_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to openapi-format, e.g. `--openapi-format-args='--no-sort'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--openapi-format-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format an OpenAPI document by ordering, formatting and filtering fields (https://github.com/thim81/openapi-format).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "scope": "openapi-format" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-output-file="], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-from="], + "env_var": "PANTS_PATHS_FROM", + "fromfile": false, + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-from"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--from"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-to="], + "env_var": "PANTS_PATHS_TO", + "fromfile": false, + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-to"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses. Either address may represent a group of targets, e.g. `--from=src/app/main.py --to=src/library::`.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--peek-output-file="], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--peek-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-exclude-defaults"], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "fromfile": false, + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-include-dep-rules", + "config_key": "include_dep_rules", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-include-dep-rules"], + "env_var": "PANTS_PEEK_INCLUDE_DEP_RULES", + "fromfile": false, + "help": "Whether to include `_dependencies_rules`, `_dependents_rules` and `_applicable_dep_rules` that apply to the target and its dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-include-dep-rules", + "--no-peek-include-dep-rules" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--include-dep-rules", + "--no-include-dep-rules" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-verbosity="], + "env_var": "PANTS_PEX_VERBOSITY", + "fromfile": false, + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-verbosity"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--verbosity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-venv-use-symlinks"], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "fromfile": false, + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-executable-search-paths"], + "target_field_name": "pex_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-binary-defaults-emit-warnings"], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "fromfile": false, + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--emit-warnings", "--no-emit-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "fromfile": false, + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.152", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-version="], + "env_var": "PANTS_PEX_CLI_VERSION", + "fromfile": false, + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.135,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.152" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.152|macos_arm64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|macos_x86_64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|linux_x86_64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|linux_arm64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.152|macos_arm64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|macos_x86_64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|linux_x86_64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187", + "v2.1.152|linux_arm64|64640336f60ec06c52ffa174f1b59b39ae1e3894d475ea0ae0abc62c0dda9fac|4205187" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-url-template="], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.135,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "preamble": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]preamble-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]preamble-skip"], + "env_var": "PANTS_PREAMBLE_SKIP", + "fromfile": false, + "help": "If true, don't use preamble when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-skip", "--no-preamble-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "template_by_globs", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS", + "fromfile": true, + "help": "Which preamble template to use based on the path globs (relative to the build root).\n\nExample:\n\n {\n '*.rs': '// Copyright (c) $year\\n// Line 2\\n'\n '*.py:!__init__.py': '# Copyright (c) $year\\n# Line 2\\n',\n }\n\nIt might be helpful to load this config from a JSON or YAML file. To do that, set `[preamble].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-template-by-globs"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--template-by-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's `string.Template` substitutions): - $year: The current year (only used when actually writing the year to the file).", + "is_goal": false, + "provider": "pants.backend.tools.preamble", + "scope": "preamble" + }, + "protobuf-java-grpc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-version="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-lockfile="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.java", + "scope": "protobuf-java-grpc" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-version="], + "env_var": "PANTS_PROTOC_VERSION", + "fromfile": false, + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "24.4|linux_arm64 |83ac000ff540e242b6a2ff221a3ac88d2d8e55443801b7a28e9697e5f40e8937|2971447", + "24.4|linux_x86_64|5871398dfd6ac954a6adebf41f1ae3a4de915a36a6ab2fd3e8f2c00d45b50dec|3005774", + "24.4|macos_arm64 |d80544480397fe8a05d966fba291cf1233ad0db0ebc24ec72d7bd077d6e7ac59|2088802", + "24.4|macos_x86_64|6c3b6bf4038d733b6d31f1cc4516a656570b5b5aafb966b650f8182afd0b98cf|2121366", + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "24.4|linux_arm64 |83ac000ff540e242b6a2ff221a3ac88d2d8e55443801b7a28e9697e5f40e8937|2971447", + "24.4|linux_x86_64|5871398dfd6ac954a6adebf41f1ae3a4de915a36a6ab2fd3e8f2c00d45b50dec|3005774", + "24.4|macos_arm64 |d80544480397fe8a05d966fba291cf1233ad0db0ebc24ec72d7bd077d6e7ac59|2088802", + "24.4|macos_x86_64|6c3b6bf4038d733b6d31f1cc4516a656570b5b5aafb966b650f8182afd0b98cf|2121366", + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-url-template="], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-tailor"], + "env_var": "PANTS_PROTOC_TAILOR", + "fromfile": false, + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-tailor", "--no-protoc-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-dependency-inference"], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--publish-output="], + "env_var": "PANTS_PUBLISH_OUTPUT", + "fromfile": false, + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--publish-output"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--py-constraints-output-file="], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--py-constraints-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]py-constraints-summary"], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "fromfile": false, + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependents`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependents` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependents).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--summary", "--no-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pydocstyle": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-install-from-resolve="], + "env_var": "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pydocstyle` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-console-script=", + "config_key": "console_script", + "default": "pydocstyle", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-console-script="], + "env_var": "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-entry-point="], + "env_var": "PANTS_PYDOCSTYLE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-config="], + "env_var": "PANTS_PYDOCSTYLE_CONFIG", + "fromfile": false, + "help": "Path to a Pydocstyle config file (http://www.pydocstyle.org/en/stable/usage.html#configuration-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-config-discovery"], + "env_var": "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`setup.cfg`, `tox.ini`, `.pydocstyle`, `.pydocstyle.ini`, `.pydocstylerc`, `.pydocstylerc.ini`, and `pyproject.toml`) searching for the configuration file in this particular order.\n\nPlease note that even though `pydocstyle` keeps looking for a configuration file up the directory tree until one is found, Pants will only search for the config files in the repository root (from where you would normally run the `` command).\n\nUse `[pydocstyle].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config-discovery", + "--no-pydocstyle-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-skip"], + "env_var": "PANTS_PYDOCSTYLE_SKIP", + "fromfile": false, + "help": "If true, don't use Pydocstyle when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-skip", "--no-pydocstyle-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pydocstyle, e.g. `--pydocstyle-args='--select=D101,D102'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pydocstyle", + "scope": "pydocstyle" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-install-from-resolve="], + "env_var": "PANTS_PYLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pylint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-console-script="], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-entry-point="], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-config="], + "env_var": "PANTS_PYLINT_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-config-discovery"], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add `'build-support/pylint'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.20/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside pylint itself, as described in https://www.pantsbuild.org/v2.20/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-skip"], + "env_var": "PANTS_PYLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Pylint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-skip", "--no-pylint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-args=\"[, , ...]\""], + "env_var": "PANTS_PYLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pylint", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-install-from-resolve="], + "env_var": "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyoxidizer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.8,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.8,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-console-script="], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-entry-point="], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-install-from-resolve="], + "env_var": "PANTS_PYTEST_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytest` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYTEST_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-console-script="], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-entry-point="], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-junit-family="], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "fromfile": false, + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-junit-family"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--junit-family"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-execution-slot-var="], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "fromfile": false, + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-execution-slot-var"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--execution-slot-var"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-config="], + "env_var": "PANTS_PYTEST_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-config-discovery"], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-xdist-enabled"], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "fromfile": false, + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--xdist-enabled", "--no-xdist-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-skip"], + "env_var": "PANTS_PYTEST_SKIP", + "fromfile": false, + "help": "If true, don't use Pytest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-skip", "--no-pytest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. `'CPython>=2.7,<3'` (A CPython interpreter with version >=2.7 AND version <3) or `'PyPy'` (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "fromfile": false, + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.20/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. `'2.7'` or `'3.10'`. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-versions-universe"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-versions-universe"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-resolves"], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "fromfile": false, + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "fromfile": false, + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.20/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-default-resolve="], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-pip-version=", + "config_key": "pip_version", + "default": "23.1.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-pip-version="], + "env_var": "PANTS_PYTHON_PIP_VERSION", + "fromfile": false, + "help": "Use this version of Pip for resolving requirements and generating lockfiles.\n\nThe value used here must be one of the Pip versions supported by the underlying PEX version. See https://www.pantsbuild.org/v2.20/docs/pex for details.\n\nN.B.: The `latest` value selects the latest of the choices listed by PEX which is not necessarily the latest Pip version released on PyPI.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-pip-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pip-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "23.1.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python].interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use `['==3.9.*']` via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to `['==3.7.*']`, then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "fromfile": false, + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-constraints-file"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-constraints-file"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve, you can also use the value `:all:` to disable all binary packages: `{'data-science': [':all:']}`.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-no-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-no-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve you can use the value `:all:` to disable all source packages: `{'data-science': [':all:']}`.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-only-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-only-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": ["error", "ignore", "warn"], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "fromfile": false, + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-invalid-lockfile-behavior"], + "target_field_name": null, + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": ["--invalid-lockfile-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-resolves-generate-lockfiles"], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "fromfile": false, + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-run-against-entire-lockfile"], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "fromfile": false, + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile\n changes, rather than just those that depend on the changed requirement.\n2) Requirements unneeded by a test/run/repl will be present on the sys.path, which\n might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-resolver-manylinux="], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "fromfile": false, + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g. `'manylinux2010'`, or else the string `'no'` to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolver-manylinux"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--resolver-manylinux"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-source-targets"], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-ignore-empty-init-files"], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "fromfile": false, + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-requirements-targets"], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "fromfile": false, + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-pex-binary-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-py-typed-targets", + "config_key": "tailor_py_typed_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-py-typed-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS", + "fromfile": false, + "help": "If true, add `resource` targets for marker files named `py.typed` with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-py-typed-targets", + "--no-python-tailor-py-typed-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-py-typed-targets", + "--no-tailor-py-typed-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-macos-big-sur-compatibility"], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "fromfile": false, + "help": "If set, and if running on macOS Big Sur, use `macosx_10_16` as the platform when building wheels. Otherwise, the default of `macosx_11_0` will be used. This may be required for `pip` to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-lockfile-targets", + "config_key": "enable_lockfile_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-lockfile-targets"], + "env_var": "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS", + "fromfile": false, + "help": "Create targets for all Python lockfiles defined in `[python].resolves`.\n\nThe lockfile targets will then be used as dependencies to the `python_requirement` targets that use them, invalidating source targets per resolve when the lockfile changes.\n\nIf another targets address is in conflict with the created lockfile target, it will shadow the lockfile target and it will not be available as a dependency for any `python_requirement` targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-lockfile-targets", + "--no-python-enable-lockfile-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-lockfile-targets", + "--no-enable-lockfile-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-default-run-goal-use-sandbox"], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "fromfile": false, + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-repl-history", + "config_key": "repl_history", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-repl-history"], + "env_var": "PANTS_PYTHON_REPL_HISTORY", + "fromfile": false, + "help": "Whether to use the standard Python command history file when running a repl.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repl-history", + "--no-python-repl-history" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--repl-history", "--no-repl-history"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-requirement-constraints="], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "fromfile": false, + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-requirement-constraints"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--requirement-constraints"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]python-resolve-all-constraints"], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "fromfile": false, + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "internal_python_build_standalone_info", + "default": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO", + "fromfile": false, + "help": "A map from platform to the information needed to download Python Build Standalone.\n\nPython Build Standalone is used to run Python-implemented Pants tools/scripts in docker environments (so that Python doesn't need to be installed).\n\nThe version of Python provided should match the default value's version, which is the highest Python Major/Minor version compatible with the Pants package's interpreter constraints. Additionally, the downloaded file should be extractable by `tar` using `-xvf` (most likely a `.tar.gz` file).\n\nThe schema is `: (, , )` for each possible platform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-internal-python-build-standalone-info" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--internal-python-build-standalone-info"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": ["", "", ""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Python interpreters.\n\nWhich interpreters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in `BUILD_ROOT/.tool-versions`\n* ``, all Python versions under `$(pyenv root)/versions`\n* ``, the Pyenv interpreter with the version in `BUILD_ROOT/.python-version`\n* ``, paths in the `PEX_PYTHON_PATH` variable in `/etc/pexrc` or `~/.pexrc`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-search-path"], + "target_field_name": "python_bootstrap_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["", "", ""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": ["python", "python3"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "fromfile": false, + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-names"], + "target_field_name": "python_bootstrap_names", + "typ": "list", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["python", "python3"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-dump-source-analysis": { + "advanced": [], + "basic": [ + { + "choices": ["raw_dependency_inference", "dependency_inference"], + "comma_separated_choices": "raw_dependency_inference, dependency_inference", + "comma_separated_display_args": "--python-dump-source-analysis-analysis-flavor=", + "config_key": "analysis_flavor", + "default": "dependency_inference", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-dump-source-analysis-analysis-flavor=" + ], + "env_var": "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR", + "fromfile": false, + "help": "The type of information that should be returned.\n\n* `dependency_inference`: The results of dependency inference, for every detected import in every file.\n\n* `raw_dependency_inference`: The raw intermediate results of the dependency inference process,\nat every stage they're available. Potentially useful for debugging the dependency inference process.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-dump-source-analysis-analysis-flavor" + ], + "target_field_name": null, + "typ": "AnalysisFlavor", + "unscoped_cmd_line_args": ["--analysis-flavor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dependency_inference" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Dump source analysis for python_source targets.", + "is_goal": true, + "provider": "pants.backend.experimental.python", + "scope": "python-dump-source-analysis" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-imports"], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-string-imports"], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings or pytest plugins listed in the `pytest_plugins` variable in a test module or a conftest file.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--string-imports", "--no-string-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-string-imports-min-dots="], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "fromfile": false, + "help": "If `--string-imports` is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-string-imports-min-dots"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--string-imports-min-dots"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-assets"], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "fromfile": false, + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--assets", "--no-assets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-assets-min-slashes="], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "fromfile": false, + "help": "If `--assets` is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-assets-min-slashes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--assets-min-slashes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": ["always", "content_only", "never"], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-init-files="], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "fromfile": false, + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-init-files"], + "target_field_name": null, + "typ": "InitFilesInference", + "unscoped_cmd_line_args": ["--init-files"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-conftests"], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "fromfile": false, + "help": "Infer a test target's dependencies on any `conftest.py` files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--conftests", "--no-conftests"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-entry-points"], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "fromfile": false, + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_aws_lambda_function`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--entry-points", "--no-entry-points"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["error", "warning", "ignore"], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "fromfile": false, + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "target_field_name": null, + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": ["--unowned-dependency-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + }, + { + "choices": ["none", "by_source_root"], + "comma_separated_choices": "none, by_source_root", + "comma_separated_display_args": "--python-infer-ambiguity-resolution=", + "config_key": "ambiguity_resolution", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ambiguity-resolution=" + ], + "env_var": "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION", + "fromfile": false, + "help": "When multiple sources provide the same symbol, how to choose the provider to use.\n\n`none`: Do not attempt to resolve this ambiguity. No dependency will be inferred, and warnings will be logged.\n\n`by_source_root`: Choose the provider with the closest common ancestor to the consumer's source root. If the provider is under the same source root then this will be the source root itself. This is useful when multiple projects in different source roots provide the same symbols (because of repeated first-party module paths or overlapping requirements.txt) and you want to resolve the ambiguity locally in each project.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ambiguity-resolution"], + "target_field_name": null, + "typ": "AmbiguityResolution", + "unscoped_cmd_line_args": ["--ambiguity-resolution"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-ignored-unowned-imports=\"['', '', ...]\"", + "config_key": "ignored_unowned_imports", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ignored-unowned-imports=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS", + "fromfile": false, + "help": "Unowned imports that should be ignored.\n\nIf there are any unowned import statements and adding the `# pants: no-infer-dep` to the lines of the import is impractical, you can instead provide a list of imports that Pants should ignore. You can declare a specific import or a path to a package if you would like any of the package imports to be ignored.\n\nFor example, you could ignore all the following imports of the code\n\n import src.generated.app\n from src.generated.app import load\n from src.generated.app import start\n from src.generated.client import connect\n\nby setting `ignored-unowned-imports=[\"src.generated.app\", \"src.generated.client.connect\"]`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ignored-unowned-imports"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignored-unowned-imports"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-use-rust-parser", + "config_key": "use_rust_parser", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-use-rust-parser"], + "env_var": "PANTS_PYTHON_INFER_USE_RUST_PARSER", + "fromfile": false, + "help": "Use the new Rust-based, multithreaded, in-process dependency parser.\n\nPants 2.17 introduced a new paradigm to dependency parsing for Python by leveraging a Rust-based parser that's called in the same process as Pants itself, instead of farming out to one-python-process-per-file.\n\nAs a result of the switch, cold-cache performance improved by a factor of about 12x, while hot-cache had no difference. Additionally, Pants can now infer dependencies from Python scripts with syntax errors.\n\nAfter leaving this defaulted to disabled for a release cycle, Pants 2.18 started defaulting to enabling this.\n\nIf you think the new behaviour is causing problems, it is recommended that you run `scie-pants-linux-x86_64 peek :: > before.json` and then `scie-pants-linux-x86_64 --python-infer-use-rust-parser=False peek :: > after.json` and compare the two results.\n\nIf you think there is a bug and need to disable it, please file an issue: https://github.com/pantsbuild/pants/issues/new/choose.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-use-rust-parser", + "--no-python-infer-use-rust-parser" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-rust-parser", + "--no-use-rust-parser" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "fromfile": false, + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `CPPFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-cpp-flags"], + "target_field_name": "python_native_code_cpp_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cpp-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "fromfile": false, + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `LDFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-ld-flags"], + "target_field_name": "python_native_code_ld_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--ld-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-mypy-plugin"], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "fromfile": false, + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate `.pyi` type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mypy-plugin", "--no-mypy-plugin"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.20/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": ["https://pypi.org/simple/"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "fromfile": false, + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-indexes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--indexes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["https://pypi.org/simple/"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "fromfile": false, + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what `WHEELS_DIR` points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.20/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.20/docs/options#pantsrc-file.\n\nNote: Only takes effect if using Pex lockfiles, i.e. using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-path-mappings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--path-mappings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-find-links=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "fromfile": false, + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-find-links"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--find-links"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-repos-repos=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "fromfile": false, + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-repos-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-thrift-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "fromfile": false, + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-thrift-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pytype": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-install-from-resolve="], + "env_var": "PANTS_PYTYPE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytype` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYTYPE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTYPE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-console-script=", + "config_key": "console_script", + "default": "pytype", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-console-script="], + "env_var": "PANTS_PYTYPE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytype" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-entry-point="], + "env_var": "PANTS_PYTYPE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytype-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytype-skip"], + "env_var": "PANTS_PYTYPE_SKIP", + "fromfile": false, + "help": "If true, don't use Pytype when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-skip", "--no-pytype-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-args=\"[, , ...]\""], + "env_var": "PANTS_PYTYPE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytype, e.g. `--pytype-args='--version'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-config="], + "env_var": "PANTS_PYTYPE_CONFIG", + "fromfile": false, + "help": "Path to an toml config file understood by Pytype (https://github.com/google/pytype#config-file).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pytype utility for typechecking Python code (https://github.com/google/pytype).", + "is_goal": false, + "provider": "pants.backend.experimental.python.typecheck.pytype", + "scope": "pytype" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-install-from-resolve="], + "env_var": "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyupgrade` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-console-script="], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-entry-point="], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pyupgrade-skip"], + "env_var": "PANTS_PYUPGRADE_SKIP", + "fromfile": false, + "help": "If true, don't use pyupgrade when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-skip", "--no-pyupgrade-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]regex-lint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]regex-lint-skip"], + "env_var": "PANTS_REGEX_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use regex-lint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-skip", "--no-regex-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "fromfile": true, + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-config"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": ["none", "summary", "nonmatching", "names", "all"], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--regex-lint-detail-level="], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "fromfile": false, + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-detail-level"], + "target_field_name": null, + "typ": "DetailLevel", + "unscoped_cmd_line_args": ["--detail-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--repl-shell="], + "env_var": "PANTS_REPL_SHELL", + "fromfile": false, + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-shell"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shell"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_REPL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the repl program, e.g. `--repl-args='-i helloworld/main.py'`.\n\nCurrently supported only for the ipython shell.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]repl-restartable"], + "env_var": "PANTS_REPL_RESTARTABLE", + "fromfile": false, + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--restartable", "--no-restartable"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-output-file="], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-sep="], + "env_var": "PANTS_ROOTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "ruff": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-install-from-resolve="], + "env_var": "PANTS_RUFF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ruff` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-requirements=\"['', '', ...]\""], + "env_var": "PANTS_RUFF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-console-script=", + "config_key": "console_script", + "default": "ruff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-console-script="], + "env_var": "PANTS_RUFF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-entry-point="], + "env_var": "PANTS_RUFF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-config="], + "env_var": "PANTS_RUFF_CONFIG", + "fromfile": false, + "help": "Path to the `pyproject.toml` or `ruff.toml` file to use for configuration (https://github.com/astral-sh/ruff#configuration).\n\nSetting this option will disable `[ruff].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-config-discovery"], + "env_var": "PANTS_RUFF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`pyproject.toml`, and `ruff.toml`).\n\nUse `[ruff].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config-discovery", + "--no-ruff-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-skip"], + "env_var": "PANTS_RUFF_SKIP", + "fromfile": false, + "help": "If true, don't use Ruff when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 fix` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-skip", "--no-ruff-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-args=\"[, , ...]\""], + "env_var": "PANTS_RUFF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Ruff, e.g. `--ruff-args='--exclude=foo --ignore=E501'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Ruff Python formatter (https://github.com/astral-sh/ruff).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.ruff", + "scope": "ruff" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]run-debug-adapter"], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-debug-adapter", + "--no-run-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-tailor-source-targets"], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scala-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-imports"], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-consumed-types"], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-package-objects"], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "fromfile": false, + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-objects", + "--no-package-objects" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-force-add-siblings-as-dependencies" + ], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "fromfile": false, + "help": "If true, add a dependency on all `scala_source` targets generated by the same `scala_sources` target generator. If false, the dependencies will only be added if `[scala-infer].imports` is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalac-args=\"[, , ...]\""], + "env_var": "PANTS_SCALAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-version="], + "env_var": "PANTS_SCALAFMT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalameta:scalafmt-cli_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalameta:scalafmt-cli_2.13:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-lockfile="], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalafmt-skip"], + "env_var": "PANTS_SCALAFMT_SKIP", + "fromfile": false, + "help": "If true, don't use scalafmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-skip", "--no-scalafmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-version="], + "env_var": "PANTS_SCALAPB_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.thesamet.scalapb:scalapbc_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.thesamet.scalapb:scalapbc_2.13:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-lockfile="], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-plugins=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "fromfile": false, + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set `--scalapb-runtime-dependencies` appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-version="], + "env_var": "PANTS_SCALATEST_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalatest:scalatest_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalatest:scalatest_2.13:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-lockfile="], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.20.0.dev2/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalatest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalatest-skip"], + "env_var": "PANTS_SCALATEST_SKIP", + "fromfile": false, + "help": "If true, don't use Scalatest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-skip", "--no-scalatest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-version="], + "env_var": "PANTS_SCC_VERSION", + "fromfile": false, + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-url-template="], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "semgrep": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--semgrep-install-from-resolve="], + "env_var": "PANTS_SEMGREP_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `semgrep` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SEMGREP_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SEMGREP_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-console-script=", + "config_key": "console_script", + "default": "semgrep", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--semgrep-console-script="], + "env_var": "PANTS_SEMGREP_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "semgrep" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--semgrep-entry-point="], + "env_var": "PANTS_SEMGREP_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]semgrep-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]semgrep-force"], + "env_var": "PANTS_SEMGREP_FORCE", + "fromfile": false, + "help": "If true, semgrep is always run, even if the input files haven't changed. This can be used to run cloud rulesets like `pants lint --semgrep-force --semgrep-args='--config=p/python' ::`. Without `--semgrep-force`, using the cloud rulesets may give inconsistent results on different machines, due to caching, because the rulesets may change.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-force", "--no-semgrep-force"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force", "--no-force"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-args=\"[, , ...]\"", + "config_key": "args", + "default": ["--quiet"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SEMGREP_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Semgrep, e.g. `--semgrep-args='--verbose'`.\n\nThis includes --quiet by default to reduce the volume of output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["--quiet"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]semgrep-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]semgrep-skip"], + "env_var": "PANTS_SEMGREP_SKIP", + "fromfile": false, + "help": "If true, don't use Semgrep when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--semgrep-skip", "--no-semgrep-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lightweight static analysis for many languages. Find bug variants with patterns that look like source code. (https://semgrep.dev/)\n\nPants automatically finds config files (`.semgrep.yml`, `.semgrep.yaml`, and `.yml` or `.yaml` files within `.semgrep/` directories), and runs semgrep against all _targets_ known to Pants.", + "is_goal": false, + "provider": "pants.backend.experimental.tools.semgrep", + "scope": "semgrep" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]setup-py-generation-generate-setup-default"], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "fromfile": false, + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (`setup.py`, `setup.cfg` and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["exact", "compatible", "any"], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "fromfile": false, + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "target_field_name": null, + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": ["--first-party-dependency-version-scheme"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "setuptools-scm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools-scm` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-console-script="], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-entry-point="], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "setuptools-scm" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-dependency-inference"], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-tailor"], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "fromfile": false, + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-setup-executable-search-paths"], + "target_field_name": "shell_setup_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shell-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-test-skip"], + "env_var": "PANTS_SHELL_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Test with shell scripts when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-test-skip", "--no-shell-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants' Shell test support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-test" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-version="], + "env_var": "PANTS_SHELLCHECK_VERSION", + "fromfile": false, + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-url-template="], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-config-discovery"], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-skip"], + "env_var": "PANTS_SHELLCHECK_SKIP", + "fromfile": false, + "help": "If true, don't use Shellcheck when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-skip", "--no-shellcheck-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-version="], + "env_var": "PANTS_SHFMT_VERSION", + "fromfile": false, + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-url-template="], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-config-discovery"], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-skip"], + "env_var": "PANTS_SHFMT_SKIP", + "fromfile": false, + "help": "If true, don't use shfmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-skip", "--no-shfmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-args=\"[, , ...]\""], + "env_var": "PANTS_SHFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "shunit2": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-version=", + "config_key": "version", + "default": "b9102bb763cc603b3115ed30a5648bf950548097", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-version="], + "env_var": "PANTS_SHUNIT2_VERSION", + "fromfile": false, + "help": "Use this version of shunit2.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "b9102bb763cc603b3115ed30a5648bf950548097" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHUNIT2_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-template=", + "config_key": "url_template", + "default": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-url-template="], + "env_var": "PANTS_SHUNIT2_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.20/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHUNIT2_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shunit2-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-use-unsupported-version=" + ], + "env_var": "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shunit2 is not supported.\n\nSupported shunit2 versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shunit2-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shunit2-skip"], + "env_var": "PANTS_SHUNIT2_SKIP", + "fromfile": false, + "help": "If true, don't use shunit2 when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-skip", "--no-shunit2-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shunit2" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "fromfile": false, + "help": "A list of source root suffixes.\n\nA directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc.\n\nPrepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`.\n\nA `*` wildcard will match a single path segment, E.g., `src/*` will match `/src/python` and `/src/rust`.\n\nUse `/` to signify that the buildroot itself is a source root.\n\nSee https://www.pantsbuild.org/v2.20/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-root-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--root-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "fromfile": false, + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-marker-filenames"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--marker-filenames"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "spectral": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-version=", + "config_key": "version", + "default": "@stoplight/spectral-cli@6.5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-version="], + "env_var": "PANTS_SPECTRAL_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "@stoplight/spectral-cli@6.5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-install-from-resolve="], + "env_var": "PANTS_SPECTRAL_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]spectral-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]spectral-skip"], + "env_var": "PANTS_SPECTRAL_SKIP", + "fromfile": false, + "help": "If true, don't use Spectral when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-skip", "--no-spectral-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SPECTRAL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Spectral, e.g. `--spectral-args='--fail-severity=warn'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "spectral" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-log"], + "env_var": "PANTS_STATS_LOG", + "fromfile": false, + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-log", "--no-stats-log"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--log", "--no-log"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-memory-summary"], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "fromfile": false, + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--memory-summary", "--no-memory-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.20/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subprocess-environment-env-vars"], + "target_field_name": "subprocess_environment_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "system-binaries": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--system-binaries-system-binary-paths=\"['', '', ...]\"", + "config_key": "system_binary_paths", + "default": [ + "/usr/bin", + "/bin", + "/usr/local/bin", + "/opt/homebrew/bin" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--system-binaries-system-binary-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_SYSTEM_BINARIES_SYSTEM_BINARY_PATHS", + "fromfile": false, + "help": "The PATH value that will searched for executables.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--system-binaries-system-binary-paths"], + "target_field_name": "system_binaries_system_binary_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--system-binary-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/usr/bin", + "/bin", + "/usr/local/bin", + "/opt/homebrew/bin" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "System binaries related settings.", + "is_goal": false, + "provider": "pants.core", + "scope": "system-binaries" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-name="], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "fromfile": false, + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-header="], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "fromfile": false, + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-header"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-header"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-indent="], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "fromfile": false, + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-indent"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-indent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "fromfile": false, + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.20/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-alias-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-ignore-paths=\"['', '', ...]\""], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "fromfile": false, + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-paths"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "fromfile": false, + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-adding-targets"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-adding-targets"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]tailor-check"], + "env_var": "PANTS_TAILOR_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-check", "--no-tailor-check"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-fmt-skip"], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform fmt` when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-install-from-resolve=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `terraform-hcl2-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--terraform-hcl2-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-validate-skip"], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform validate` when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-report"], + "env_var": "PANTS_TEST_REPORT", + "fromfile": false, + "help": "Write test reports to `--report-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report", "--no-test-report"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--report", "--no-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-report-dir="], + "env_var": "PANTS_TEST_REPORT_DIR", + "fromfile": false, + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--report-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-default="], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "fromfile": false, + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-default"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-default"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-maximum="], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "fromfile": false, + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-maximum"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-maximum"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-batch-size="], + "env_var": "PANTS_TEST_BATCH_SIZE", + "fromfile": false, + "help": "The target maximum number of files to be included in each run of batch-enabled test runners.\n\nSome test runners can execute tests from multiple files in a single run. Test implementations will return all tests that _can_ run together as a single group - and then this may be further divided into smaller batches, based on this option. This is done:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch\n 3. to allow for parallelism in test runners which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" max batch size (rather than an exact value).\n\nNOTE: This parameter has no effect on test runners/plugins that do not implement support for batched testing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug"], + "env_var": "PANTS_TEST_DEBUG", + "fromfile": false, + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-debug", "--no-test-debug"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug", "--no-debug"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug-adapter"], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies `--debug`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-force"], + "env_var": "PANTS_TEST_FORCE", + "fromfile": false, + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-force", "--no-test-force"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force", "--no-force"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["all", "failed", "none"], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-output="], + "env_var": "PANTS_TEST_OUTPUT", + "fromfile": false, + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-output"], + "target_field_name": null, + "typ": "ShowOutput", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-use-coverage"], + "env_var": "PANTS_TEST_USE_COVERAGE", + "fromfile": false, + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--use-coverage", "--no-use-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-open-coverage"], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "fromfile": false, + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--open-coverage", "--no-open-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-shard="], + "env_var": "PANTS_TEST_SHARD", + "fromfile": false, + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with `--shard=0/3`, `--shard=1/3`, `--shard=2/3`.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-shard"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shard"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-timeouts"], + "env_var": "PANTS_TEST_TIMEOUTS", + "fromfile": false, + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeouts", "--no-test-timeouts"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--timeouts", "--no-timeouts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-attempts-default=", + "config_key": "attempts_default", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-attempts-default="], + "env_var": "PANTS_TEST_ATTEMPTS_DEFAULT", + "fromfile": false, + "help": "The number of attempts to run tests, in case of a test failure. Tests that were retried will include the number of attempts in the summary output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-attempts-default"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--attempts-default"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-extra-env-vars"], + "target_field_name": "test_extra_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-tailor"], + "env_var": "PANTS_THRIFT_TAILOR", + "fromfile": false, + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--thrift-tailor", "--no-thrift-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-dependency-inference"], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-install-from-resolve="], + "env_var": "PANTS_TWINE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `twine` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-requirements=\"['', '', ...]\""], + "env_var": "PANTS_TWINE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-console-script="], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-entry-point="], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-config="], + "env_var": "PANTS_TWINE_CONFIG", + "fromfile": false, + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-config-discovery"], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-ca-certs-path="], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use any certificates.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.20/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-skip"], + "env_var": "PANTS_TWINE_SKIP", + "fromfile": false, + "help": "If true, don't use Twine when running `scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-skip", "--no-twine-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-args=\"[, , ...]\""], + "env_var": "PANTS_TWINE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-check"], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fmt"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "fromfile": false, + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--fmt", "--no-fmt"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["yapf", "black"], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--update-build-files-formatter="], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "fromfile": false, + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--update-build-files-formatter"], + "target_field_name": null, + "typ": "Formatter", + "unscoped_cmd_line_args": ["--formatter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fix-safe-deprecations"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "fromfile": false, + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.20/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "workunit-logger": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]workunit-logger-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]workunit-logger-enabled"], + "env_var": "PANTS_WORKUNIT_LOGGER_ENABLED", + "fromfile": false, + "help": "Whether to enable workunit logging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--workunit-logger-enabled", + "--no-workunit-logger-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--workunit-logger-logdir=", + "config_key": "logdir", + "default": ".pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--workunit-logger-logdir="], + "env_var": "PANTS_WORKUNIT_LOGGER_LOGDIR", + "fromfile": false, + "help": "Where to write the log to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--workunit-logger-logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".pants.d" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Workunit Logger subsystem. Useful for debugging pants itself.", + "is_goal": false, + "provider": "pants.backend.experimental.tools.workunit_logger", + "scope": "workunit-logger" + }, + "yamllint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-install-from-resolve="], + "env_var": "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yamllint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-console-script=", + "config_key": "console_script", + "default": "yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-console-script="], + "env_var": "PANTS_YAMLLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-entry-point="], + "env_var": "PANTS_YAMLLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-config-file-name=", + "config_key": "config_file_name", + "default": ".yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-config-file-name="], + "env_var": "PANTS_YAMLLINT_CONFIG_FILE_NAME", + "fromfile": false, + "help": "Name of a config file understood by yamllint (https://yamllint.readthedocs.io/en/stable/configuration.html). The plugin will search the ancestors of each directory in which YAML files are found for a config file of this name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-config-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--config-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".yamllint" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-include=\"['', '', ...]\"", + "config_key": "include", + "default": ["**/*.yml", "**/*.yaml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-include=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_INCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to lint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-include"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--include"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["**/*.yml", "**/*.yaml"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-exclude=\"['', '', ...]\"", + "config_key": "exclude", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-exclude=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_EXCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to exclude from linting.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-exclude"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--exclude"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAMLLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Yamllint, e.g. `--yamllint-args='-d relaxed'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yamllint-skip"], + "env_var": "PANTS_YAMLLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Yamllint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-skip", "--no-yamllint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for YAML files (https://yamllint.readthedocs.io)", + "is_goal": false, + "provider": "pants.backend.experimental.tools.yamllint", + "scope": "yamllint" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-install-from-resolve="], + "env_var": "PANTS_YAPF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.20/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yapf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-requirements=\"['', '', ...]\""], + "env_var": "PANTS_YAPF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-console-script="], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-entry-point="], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-config="], + "env_var": "PANTS_YAPF_CONFIG", + "fromfile": false, + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-config-discovery"], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-skip"], + "env_var": "PANTS_YAPF_SKIP", + "fromfile": false, + "help": "If true, don't use yapf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-skip", "--no-yapf-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-args=\"[, , ...]\""], + "env_var": "PANTS_YAPF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/reference_codegen/generate.js b/reference_codegen/generate.js index b6c43f8e6..7dd8ca41e 100644 --- a/reference_codegen/generate.js +++ b/reference_codegen/generate.js @@ -3,7 +3,10 @@ const fs = require("fs"); const path = require("path"); const he = require("he"); -const helpAll = JSON.parse(fs.readFileSync(process.argv[3], "utf8")); +const reference_dir = path.join(process.argv[2], "reference"); +const helpAll = JSON.parse( + fs.readFileSync(path.join(reference_dir, "help-all.json"), "utf8") +); const subsystemTemplate = fs.readFileSync( "reference_codegen/subsystem.mdx.mustache", "utf8" @@ -137,7 +140,6 @@ Object.entries(helpAll.name_to_target_type_info).forEach(([name, info]) => { }); }); -const reference_dir = path.join(process.argv[2], "reference"); fs.mkdirSync(reference_dir); process.chdir(reference_dir); fs.mkdirSync("goals"); diff --git a/versioned_docs/version-2.0.x/reference/help-all.json b/versioned_docs/version-2.0.x/reference/help-all.json new file mode 100644 index 000000000..45fe64755 --- /dev/null +++ b/versioned_docs/version-2.0.x/reference/help-all.json @@ -0,0 +1,10456 @@ +{ + "name_to_goal_info": { + "awslambda": { + "consumed_scopes": [ + "", + "awslambda", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Deprecated in favor of the `package` goal.", + "is_implemented": true, + "name": "awslambda" + }, + "binary": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment" + ], + "description": "Deprecated in favor of the `package` goal.", + "is_implemented": true, + "name": "binary" + }, + "count-loc": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "scc", + "source", + "subprocess-environment" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "filedeps": { + "consumed_scopes": [ + "", + "download-pex-bin", + "filedeps", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": ["", "filter"], + "description": "Filter the input targets based on various criteria.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "black", + "docformatter", + "download-pex-bin", + "fmt", + "grpc_python_plugin", + "isort", + "pex", + "protoc", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "lint": { + "consumed_scopes": [ + "", + "bandit", + "black", + "docformatter", + "download-pex-bin", + "flake8", + "grpc_python_plugin", + "isort", + "lint", + "pex", + "protoc", + "pylint", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": ["", "list"], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "repl": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "ipython", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "repl", + "source", + "subprocess-environment" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": ["roots", "source"], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "run", + "source", + "subprocess-environment" + ], + "description": "Runs a binary target.", + "is_implemented": true, + "name": "run" + }, + "setup-py": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment" + ], + "description": "Deprecated in favor of the `package` goal.", + "is_implemented": true, + "name": "setup-py" + }, + "test": { + "consumed_scopes": [ + "", + "coverage-py", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "pytest", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "mypy", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run type checkers.", + "is_implemented": true, + "name": "typecheck" + }, + "validate": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "sourcefile-validation", + "subprocess-environment", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located. If undefined, this will use the path to the the BUILD, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`. When running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`). Warning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`. Pants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`). You can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `files` or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`. This is useful to include any loose files, like data files, image assets, or config files. This will ignore any targets that are not `files` or `relocated_files` targets. If you instead want those files included in any packages specified in the `packages` field for this target, then use a `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "files": { + "alias": "files", + "description": "Loose files that live outside code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM\nJARs. The sources of a `files` target are accessed via filesystem APIs, such as Python's\n`open()`, via paths relative to the repo root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Loose files that live outside code packages." + }, + "mypy_source_plugin": { + "alias": "mypy_source_plugin", + "description": "A MyPy plugin loaded through source code.\n\nTo load a source plugin:\n\n 1. Write your plugin. See https://mypy.readthedocs.io/en/stable/extending_mypy.html.\n 2. Define a `mypy_source_plugin` target with the plugin's Python file(s) included in the\n `sources` field.\n 3. Add `plugins = path.to.module` to your MyPy config file, using the name of the module\n without source roots. For example, if your Python file is called\n `pants-plugins/mypy_plugins/custom_plugin.py`, and you set `pants-plugins` as a source root,\n then set `plugins = mypy_plugins.custom_plugin`. Set the `config`\n option in the `[mypy]` scope to point to your MyPy config file.\n 4. Set the option `source_plugins` in the `[mypy]` scope to include this target's\n address, e.g. `source_plugins = [\"pants-plugins/mypy_plugins:plugin\"]`.\n\nTo instead load a third-party plugin, set the option `extra_requirements` in the `[mypy]`\nscope (see https://www.pantsbuild.org/v2.0/docs/python-typecheck-goal). Set `plugins` in\nyour config file, like you'd do with a source plugin.\n\nThis target type is treated similarly to a `python_library` target. For example, Python linters\nand formatters will run on this target.\n\nYou can depend on other targets and Pants's dependency inference will add them to the `dependencies` field,\nincluding any third-party requirements and `python_library` targets (even if their source files live in a different\ndirectory).\n\nOther targets can depend on this target. This allows you to write a `python_tests` target for\nthis code or a `python_distribution` target to distribute the plugin externally.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatibility", + "default": null, + "description": "A string for Python interpreter constraints on this target. This should be written in Requirement-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. As a shortcut, you can leave off `CPython`, e.g. `>=2.7` will be expanded to `CPython>=2.7`. If this is left off, this will default to the option `interpreter_constraints` in the [python-setup] scope. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "str | Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "A MyPy plugin loaded through source code." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable\nof running the target. For more information, see https://www.pantsbuild.org/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatibility", + "default": null, + "description": "A string for Python interpreter constraints on this target. This should be written in Requirement-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. As a shortcut, you can leave off `CPython`, e.g. `>=2.7` will be expanded to `CPython>=2.7`. If this is left off, this will default to the option `interpreter_constraints` in the [python-setup] scope. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "str | Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located. If undefined, this will use the path to the the BUILD, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`. When running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`). Warning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A single file containing the executable, such as ['app.py']. You can leave this off if you include the executable file in one of this target's `dependencies` and explicitly set this target's `entry_point`. This must have 0 or 1 files, but no more. If you depend on more files, put them in a `python_library` target and include that target in the `dependencies` field.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "The entry point for the binary. If omitted, Pants will use the module name from the `sources` field, e.g. `project/app.py` will become the entry point `project.app` .", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with. This defaults to the current platform, but can be overridden to different platforms. You can give a list of multiple platforms to create a multiplatform PEX. To use wheels for specific interpreter/platform tags, you can append them to the platform with hyphens like: PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"). PLATFORM is the host platform e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\", etc\". IMPL is the Python implementation abbreviation (e.g. \"cp\", \"pp\", \"jp\"). PYVER is a two-digit string representing the python version (e.g. \"27\", \"36\"). ABI is the ABI tag (e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\").", + "required": false, + "type_hint": "str | Iterable[str] | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` of the environment that the binary runs in. Use `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "zip_safe", + "default": "True", + "description": "Whether or not this binary is safe to run in compacted (zip-file) form. If the PEX is not zip safe, it will be written to disk prior to execution. You may need to mark `zip_safe=False` if you're having issues loading your code.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "always_write_cache", + "default": "False", + "description": "Whether PEX should always write the .deps cache of the .pex file to disk or not. This can use less memory in RAM constrained environments.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should we ignore when PEX cannot resolve dependencies?", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints. This influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime. The default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_library": { + "alias": "protobuf_library", + "description": "Protobuf files used to generate various languages.\n\nSee https://www.pantsbuild.org/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "python_compatibility", + "default": null, + "description": "A string for Python interpreter constraints on this target. This should be written in Requirement-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. As a shortcut, you can leave off `CPython`, e.g. `>=2.7` will be expanded to `CPython>=2.7`. If this is left off, this will default to the option `interpreter_constraints` in the [python-setup] scope. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "str | Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under. If unspecified, the source root the protobuf_library is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Protobuf files used to generate various languages." + }, + "pylint_source_plugin": { + "alias": "pylint_source_plugin", + "description": "A Pylint plugin loaded through source code.\n\nTo load a source plugin:\n\n 1. Write your plugin. See http://pylint.pycqa.org/en/latest/how_tos/plugins.html.\n 2. Define a `pylint_source_plugin` target with the plugin's Python file(s) included in the\n `sources` field.\n 3. Add the parent directory of your target to the `root_patterns` option in the `[source]`\n scope. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add\n 'build-support/pylint'. This is necessary for Pants to know how to tell Pylint to\n discover your plugin. See https://www.pantsbuild.org/docs/source-roots.\n 4. Add `load-plugins=$module_name` to your Pylint config file. For example, if your Python\n file is called `custom_plugin.py`, set `load-plugins=custom_plugin`. Set the `config`\n option in the `[pylint]` scope to point to your Pylint config file.\n 5. Set the option `source_plugins` in the `[pylint]` scope to include this target's\n address, e.g. `source_plugins = [\"build-support/pylint:plugin\"]`.\n\nTo instead load a third-party plugin, set the option `extra_requirements` in the `[pylint]`\nscope (see https://www.pantsbuild.org/docs/python-linters-and-formatters). Set `load-plugins` in\nyour config file, like you'd do with a source plugin.\n\nThis target type is treated similarly to a `python_library` target. For example, Python linters\nand formatters will run on this target.\n\nYou can include other targets in the `dependencies` field, so long as those targets are\nthird-party dependencies or are located in the same directory or a subdirectory.\n\nOther targets can depend on this target. This allows you to write a `python_tests` target for\nthis code or a `python_distribution` target to distribute the plugin externally.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatibility", + "default": null, + "description": "A string for Python interpreter constraints on this target. This should be written in Requirement-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. As a shortcut, you can leave off `CPython`, e.g. `>=2.7` will be expanded to `CPython>=2.7`. If this is left off, this will default to the option `interpreter_constraints` in the [python-setup] scope. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "str | Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this plugin depends on. Due to restrictions with Pylint plugins, these targets must either be third-party Python dependencies (https://www.pantsbuild.org/docs/python-third-party-dependencies) or be located within this target's same directory or a subdirectory.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "A Pylint plugin loaded through source code." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compatibility", + "default": null, + "description": "A string for Python interpreter constraints on this target. This should be written in Requirement-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. As a shortcut, you can leave off `CPython`, e.g. `>=2.7` will be expanded to `CPython>=2.7`. If this is left off, this will default to the option `interpreter_constraints` in the [python-setup] scope. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "str | Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located. If undefined, this will use the path to the the BUILD, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`. When running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`). Warning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "AWS Lambda handler entrypoint (module.dotted.name:handler_func).", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target. See https://www.pantsbuild.org/docs/python-setup-py-goal.", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "setup_py_commands", + "default": null, + "description": "The runtime commands to invoke setup.py with to create the distribution. E.g., [\"bdist_wheel\", \"--python-tag=py36.py37\", \"sdist\"] If empty or unspecified, will just create a chroot with a setup() function. See https://www.pantsbuild.org/docs/python-setup-py-goal.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_library": { + "alias": "python_library", + "description": "Python source code.\n\nA `python_library` does not necessarily correspond to a distribution you publish (see\n`python_distribution` and `pex_binary` for that); multiple `python_library` targets may be\npackaged into a distribution or binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatibility", + "default": null, + "description": "A string for Python interpreter constraints on this target. This should be written in Requirement-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. As a shortcut, you can leave off `CPython`, e.g. `>=2.7` will be expanded to `CPython>=2.7`. If this is left off, this will default to the option `interpreter_constraints` in the [python-setup] scope. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "str | Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Python source code." + }, + "python_requirement_library": { + "alias": "python_requirement_library", + "description": "Python requirements installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If\nyou have a `requirements.txt` file already, you can instead use the macro\n`python_requirements()` to convert each requirement into a `python_requirement_library()` target\nautomatically.\n\nSee https://www.pantsbuild.org/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A sequence of pip-style requirement strings, e.g. ['foo==1.8', 'bar<=3 ; python_version<'3'].", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "module_mapping", + "default": null, + "description": "A mapping of requirement names to a list of the modules they provide. For example, `{\"ansicolors\": [\"colors\"]}`. Any unspecified requirements will use the requirement name as the default module, e.g. \"Django\" will default to [\"django\"]`. This is used for Pants to be able to infer dependencies in BUILD files.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + } + ], + "summary": "Python requirements installable by pip." + }, + "python_tests": { + "alias": "python_tests", + "description": "Python tests.\n\nThese may be written in either Pytest-style or unittest style.\n\nAll test util code, other than `conftest.py`, should go into a dedicated `python_library()`\ntarget and then be included in the `dependencies` field.\n\nSee https://www.pantsbuild.org/docs/python-test-goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatibility", + "default": null, + "description": "A string for Python interpreter constraints on this target. This should be written in Requirement-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. As a shortcut, you can leave off `CPython`, e.g. `>=2.7` will be expanded to `CPython>=2.7`. If this is left off, this will default to the option `interpreter_constraints` in the [python-setup] scope. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "str | Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py', 'conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting assets should be included in the test run. Pants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`). You can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) which covers the total runtime of all tests in this target. This only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + } + ], + "summary": "Python tests." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than\ntheir actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be\n`resources/data.json`. Your other target types can then add this target to their\n`dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n file_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `files()` targets that you want to relocate, such as `['//:json_files']`. Every target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`. You can set this field to `\"\"` to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`. You can set this field to `\"\"` to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resources": { + "alias": "resources", + "description": "Data emebdded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a\n`resources` target are accessed via language-specific resource APIs, such as Python's pkgutil or\nJVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Data emebdded in a code package and accessed in a location-independent manner." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different\ntargets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "display_args": ["--backend-packages=\"['', '', ...]\""], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--backend-packages"], + "typ": "list", + "unscoped_cmd_line_args": ["--backend-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.pylint", + "pants.backend.codegen.protobuf.python", + "pants.backend.awslambda.python" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "display_args": ["--plugins=\"['', '', ...]\""], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--plugins"], + "typ": "list", + "unscoped_cmd_line_args": ["--plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]plugins-force-resolve"], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugin-cache-dir=", + "config_key": "plugin_cache_dir", + "default": "/home/josh/.cache/pants/plugins", + "deprecated_message": null, + "display_args": ["--plugin-cache-dir="], + "env_var": "PANTS_PLUGIN_CACHE_DIR", + "help": "Cache resolved plugin requirements here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--plugin-cache-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--plugin-cache-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/plugins" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]show-log-target"], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--show-log-target", "--no-show-log-target"], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--log-levels-by-target"], + "typ": "dict", + "unscoped_cmd_line_args": ["--log-levels-by-target"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]log-show-rust-3rdparty"], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-pants-warnings=\"['', '', ...]\"", + "config_key": "ignore_pants_warnings", + "default": [], + "deprecated_message": null, + "display_args": [ + "--ignore-pants-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_PANTS_WARNINGS", + "help": "Regexps matching warning strings to ignore, e.g. [\"DEPRECATED: the option `--my-opt` will be removed\"]. The regex patterns will be matched from the start of the warning string, and are case-insensitive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ignore-pants-warnings"], + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-pants-warnings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.0.2", + "deprecated_message": null, + "display_args": ["--pants-version="], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--pants-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.0.2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.0.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "display_args": ["--pants-bin-name="], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-bin-name"], + "typ": "str", + "unscoped_cmd_line_args": ["--pants-bin-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bootstrapdir=", + "config_key": "pants_bootstrapdir", + "default": "/home/josh/.cache/pants", + "deprecated_message": null, + "display_args": ["--pants-bootstrapdir="], + "env_var": "PANTS_BOOTSTRAPDIR", + "help": "Unused. Will be deprecated in 2.1.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-bootstrapdir"], + "typ": "str", + "unscoped_cmd_line_args": ["--pants-bootstrapdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/home/josh/.cache/pants" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-configdir=", + "config_key": "pants_configdir", + "default": "/home/josh/.config/pants", + "deprecated_message": null, + "display_args": ["--pants-configdir="], + "env_var": "PANTS_CONFIGDIR", + "help": "Unused. Will be deprecated in 2.1.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-configdir"], + "typ": "str", + "unscoped_cmd_line_args": ["--pants-configdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.config/pants" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/home/josh/.config/pants" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "display_args": ["--pants-workdir="], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-workdir"], + "typ": "str", + "unscoped_cmd_line_args": ["--pants-workdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "display_args": ["--pants-physical-workdir-base="], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-physical-workdir-base"], + "typ": "str", + "unscoped_cmd_line_args": ["--pants-physical-workdir-base"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-supportdir=", + "config_key": "pants_supportdir", + "default": "/tmp/tmp.MpwSc5OGVo/build-support", + "deprecated_message": null, + "display_args": ["--pants-supportdir="], + "env_var": "PANTS_SUPPORTDIR", + "help": "Unused. Will be deprecated in 2.1.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-supportdir"], + "typ": "str", + "unscoped_cmd_line_args": ["--pants-supportdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "display_args": ["--pants-distdir="], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-distdir"], + "typ": "str", + "unscoped_cmd_line_args": ["--pants-distdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-distdir-legacy-paths", + "config_key": "pants_distdir_legacy_paths", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]pants-distdir-legacy-paths"], + "env_var": "PANTS_DISTDIR_LEGACY_PATHS", + "help": "Whether to write binaries to the pre-2.0 paths under distdir. These legacy paths are not qualified by target address, so may be ambiguous. This option is a temporary mechanism for easing transition to 2.0. We recommemd switching to the new, unambiguous paths ASAP, by setting this option to true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir-legacy-paths", + "--no-pants-distdir-legacy-paths" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-distdir-legacy-paths", + "--no-pants-distdir-legacy-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "display_args": ["--pants-subprocessdir="], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-subprocessdir"], + "typ": "str", + "unscoped_cmd_line_args": ["--pants-subprocessdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": ["/tmp/tmp.MpwSc5OGVo/pants.toml"], + "deprecated_message": null, + "display_args": ["--pants-config-files=\"['', '', ...]\""], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-config-files"], + "typ": "list", + "unscoped_cmd_line_args": ["--pants-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/tmp/tmp.MpwSc5OGVo/pants.toml"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]pantsrc"], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": ["/etc/pantsrc", "~/.pants.rc"], + "deprecated_message": null, + "display_args": ["--pantsrc-files=\"[, , ...]\""], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc-files"], + "typ": "list", + "unscoped_cmd_line_args": ["--pantsrc-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/etc/pantsrc", "~/.pants.rc"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "display_args": ["--pythonpath=\"['', '', ...]\""], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pythonpath"], + "typ": "list", + "unscoped_cmd_line_args": ["--pythonpath"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]verify-config"], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "typ": "bool", + "unscoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [".*/", "/dist/"], + "deprecated_message": null, + "display_args": ["--pants-ignore=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-ignore"], + "typ": "list", + "unscoped_cmd_line_args": ["--pants-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [".*/", "/dist/"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]pants-ignore-use-gitignore"], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "display_args": ["-d=", "--logdir="], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["-d", "--logdir"], + "typ": "str", + "unscoped_cmd_line_args": ["-d", "--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]pantsd"], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]concurrent"], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "typ": "bool", + "unscoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": 1073741824, + "deprecated_message": null, + "display_args": ["--pantsd-max-memory-usage="], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of a pantsd process (in bytes). There is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "typ": "int", + "unscoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]print-stacktrace"], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--native-engine-visualize-to=", + "config_key": "native_engine_visualize_to", + "default": null, + "deprecated_message": null, + "display_args": ["--native-engine-visualize-to="], + "env_var": "PANTS_NATIVE_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--native-engine-visualize-to"], + "typ": "dir_option", + "unscoped_cmd_line_args": ["--native-engine-visualize-to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "display_args": ["--pantsd-pailgun-port="], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-pailgun-port"], + "typ": "int", + "unscoped_cmd_line_args": ["--pantsd-pailgun-port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-quit-timeout=", + "config_key": "pantsd_pailgun_quit_timeout", + "default": 5.0, + "deprecated_message": null, + "display_args": ["--pantsd-pailgun-quit-timeout="], + "env_var": "PANTS_PANTSD_PAILGUN_QUIT_TIMEOUT", + "help": "The length of time (in seconds) to wait for further output after sending a signal to the remote pantsd process before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-pailgun-quit-timeout"], + "typ": "float", + "unscoped_cmd_line_args": ["--pantsd-pailgun-quit-timeout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "typ": "list", + "unscoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "display_args": ["--local-store-dir="], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--local-store-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "display_args": ["--named-caches-dir="], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--named-caches-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--named-caches-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "display_args": ["--local-execution-root-dir="], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-execution-root-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--local-execution-root-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-use-local-cache", + "config_key": "process_execution_use_local_cache", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]process-execution-use-local-cache"], + "env_var": "PANTS_PROCESS_EXECUTION_USE_LOCAL_CACHE", + "help": "Whether to keep process executions in a local cache persisted to disk.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-cleanup-local-dirs", + "config_key": "process_execution_cleanup_local_dirs", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]process-execution-cleanup-local-dirs"], + "env_var": "PANTS_PROCESS_EXECUTION_CLEANUP_LOCAL_DIRS", + "help": "Whether or not to cleanup directories used for local process execution (primarily useful for e.g. debugging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "display_args": ["--ca-certs-path="], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ca-certs-path"], + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": 64, + "deprecated_message": null, + "display_args": ["--process-execution-local-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-local-parallelism"], + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-local-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "display_args": ["--process-execution-remote-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-speculation-delay=", + "config_key": "process_execution_speculation_delay", + "default": 1.0, + "deprecated_message": null, + "display_args": ["--process-execution-speculation-delay="], + "env_var": "PANTS_PROCESS_EXECUTION_SPECULATION_DELAY", + "help": "Number of seconds to wait before speculating a second request for a slow process. see `--process-execution-speculation-strategy`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-speculation-delay"], + "typ": "float", + "unscoped_cmd_line_args": ["--process-execution-speculation-delay"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": ["remote_first", "local_first", "none"], + "comma_separated_choices": "remote_first, local_first, none", + "comma_separated_display_args": "--process-execution-speculation-strategy=", + "config_key": "process_execution_speculation_strategy", + "default": "none", + "deprecated_message": null, + "display_args": ["--process-execution-speculation-strategy="], + "env_var": "PANTS_PROCESS_EXECUTION_SPECULATION_STRATEGY", + "help": "Speculate a second request for an underlying process if the first one does not complete within `--process-execution-speculation-delay` seconds.\n`local_first` (default): Try to run the process locally first, and fall back to remote execution if available.\n`remote_first`: Run the process on the remote execution backend if available, and fall back to the local host if remote calls take longer than the speculation timeout.\n`none`: Do not speculate about long running processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-speculation-strategy"], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-speculation-strategy" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]process-execution-local-enable-nailgun"], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run the requests that are marked as nailgunnable.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]remote-execution"], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-server=\"['', '', ...]\"", + "config_key": "remote_store_server", + "default": [], + "deprecated_message": null, + "display_args": ["--remote-store-server=\"['', '', ...]\""], + "env_var": "PANTS_REMOTE_STORE_SERVER", + "help": "host:port of grpc server to use as remote execution file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-server"], + "typ": "list", + "unscoped_cmd_line_args": ["--remote-store-server"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-thread-count=", + "config_key": "remote_store_thread_count", + "default": 1, + "deprecated_message": null, + "display_args": ["--remote-store-thread-count="], + "env_var": "PANTS_REMOTE_STORE_THREAD_COUNT", + "help": "Thread count to use for the pool that interacts with the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-thread-count"], + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-thread-count"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-server=", + "config_key": "remote_execution_server", + "default": null, + "deprecated_message": null, + "display_args": ["--remote-execution-server="], + "env_var": "PANTS_REMOTE_EXECUTION_SERVER", + "help": "host:port of grpc server to use as remote execution scheduler.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-server"], + "typ": "str", + "unscoped_cmd_line_args": ["--remote-execution-server"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "display_args": ["--remote-store-chunk-bytes="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "display_args": ["--remote-store-chunk-upload-timeout-seconds="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "display_args": ["--remote-store-rpc-retries="], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-retries"], + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-retries"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-connection-limit=", + "config_key": "remote_store_connection_limit", + "default": 5, + "deprecated_message": null, + "display_args": ["--remote-store-connection-limit="], + "env_var": "PANTS_REMOTE_STORE_CONNECTION_LIMIT", + "help": "Number of remote stores to concurrently allow connections to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-connection-limit"], + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-connection-limit"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-process-cache-namespace=", + "config_key": "remote_execution_process_cache_namespace", + "default": null, + "deprecated_message": null, + "display_args": ["--remote-execution-process-cache-namespace="], + "env_var": "PANTS_REMOTE_EXECUTION_PROCESS_CACHE_NAMESPACE", + "help": "The cache namespace for remote process execution. Bump this to invalidate every artifact's remote execution. This is the remote execution equivalent of the legacy cache-key-gen-version flag.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-process-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-process-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "display_args": ["--remote-instance-name="], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote execution instance to use. Used for routing within --remote-execution-server and --remote-store-server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-instance-name"], + "typ": "str", + "unscoped_cmd_line_args": ["--remote-instance-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "display_args": ["--remote-ca-certs-path="], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to --remote-execution-server and --remote-store-server. If not specified, TLS will not be used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-ca-certs-path"], + "typ": "str", + "unscoped_cmd_line_args": ["--remote-ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "display_args": ["--remote-oauth-bearer-token-path="], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for grpc connections to --remote-execution-server and --remote-store-server. If not specified, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "typ": "str", + "unscoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": {}, + "deprecated_message": null, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants itself may add additional headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-headers"], + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-execution-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "display_args": ["--remote-execution-overall-deadline-secs="], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-overall-deadline-secs"], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": ["warn", "error"], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--files-not-found-behavior"], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": ["--files-not-found-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--owners-not-found-behavior"], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": ["--owners-not-found-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": ["BUILD", "BUILD.*"], + "deprecated_message": null, + "display_args": ["--build-patterns=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets. This only sets the naming scheme, not the directory paths to look for. To add ignorepatterns, use the option `--build-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-patterns"], + "typ": "list", + "unscoped_cmd_line_args": ["--build-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["BUILD", "BUILD.*"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "display_args": ["--build-ignore=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files. This does not affect any other filesystem operations; use `--pants-ignore` for that instead. Patterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-ignore"], + "typ": "list", + "unscoped_cmd_line_args": ["--build-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-file-prelude-globs"], + "typ": "list", + "unscoped_cmd_line_args": ["--build-file-prelude-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "display_args": ["--subproject-roots=\"['', '', ...]\""], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subproject-roots"], + "typ": "list", + "unscoped_cmd_line_args": ["--subproject-roots"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "display_args": ["--loop-max="], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop-max"], + "typ": "int", + "unscoped_cmd_line_args": ["--loop-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 10.0, + "deprecated_message": null, + "display_args": ["--streaming-workunits-report-interval="], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "typ": "float", + "unscoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 10.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-handlers=\"['', '', ...]\"", + "config_key": "streaming_workunits_handlers", + "default": [], + "deprecated_message": null, + "display_args": [ + "--streaming-workunits-handlers=\"['', '', ...]\"" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_HANDLERS", + "help": "Use this option to name Subsystems which will receive streaming workunit events. For instance, `--streaming-workunits-handlers=\"['pants.reporting.workunit.Workunits']\"` will register a Subsystem called Workunits defined in the module \"pants.reporting.workunit\".", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-handlers"], + "typ": "list", + "unscoped_cmd_line_args": ["--streaming-workunits-handlers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "display_args": ["-l=", "--level="], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["-l", "--level"], + "typ": "LogLevel", + "unscoped_cmd_line_args": ["-l", "--level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]colors"], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants run use color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--colors", "--no-colors"], + "typ": "bool", + "unscoped_cmd_line_args": ["--colors", "--no-colors"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "display_args": ["--spec-files=\"['', '', ...]\""], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line,from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spec-files"], + "typ": "list", + "unscoped_cmd_line_args": ["--spec-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]dynamic-ui"], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "typ": "bool", + "unscoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tag"], + "typ": "list", + "unscoped_cmd_line_args": ["--tag"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--exclude-target-regexp"], + "typ": "list", + "unscoped_cmd_line_args": ["--exclude-target-regexp"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]loop"], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected. Alpha feature.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop", "--no-loop"], + "typ": "bool", + "unscoped_cmd_line_args": ["--loop", "--no-loop"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages2=\"['', '', ...]\"", + "config_key": "backend_packages2", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--backend-packages2=\"['', '', ...]\""], + "env_var": "PANTS_BACKEND_PACKAGES2", + "help": "Register rules from these backends. The backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": "Use --backend-packages instead.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--backend-packages2"], + "typ": "list", + "unscoped_cmd_line_args": ["--backend-packages2"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins2=\"['', '', ...]\"", + "config_key": "plugins2", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--plugins2=\"['', '', ...]\""], + "env_var": "PANTS_PLUGINS2", + "help": "Allow backends to be loaded from these plugins. The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in --backend-packages.", + "removal_hint": "Use --plugins instead.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--plugins2"], + "typ": "list", + "unscoped_cmd_line_args": ["--plugins2"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]v1", + "config_key": "v1", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]v1"], + "env_var": "PANTS_V1", + "help": "Enables execution of v1 Tasks.", + "removal_hint": "The v1 engine no longer exists. This option does nothing.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--v1", "--no-v1"], + "typ": "bool", + "unscoped_cmd_line_args": ["--v1", "--no-v1"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]v2", + "config_key": "v2", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]v2"], + "env_var": "PANTS_V2", + "help": "Enables execution of v2 @goal_rules.", + "removal_hint": "The v2 engine is the only one available. This option does nothing.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--v2", "--no-v2"], + "typ": "bool", + "unscoped_cmd_line_args": ["--v2", "--no-v2"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--option-name-check-distance=", + "config_key": "option_name_check_distance", + "default": 2, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--option-name-check-distance="], + "env_var": "PANTS_OPTION_NAME_CHECK_DISTANCE", + "help": "The maximum Levenshtein distance to use when offering suggestions for invalid option names.", + "removal_hint": "The option `--option-name-check-distance` no longer does anything, as Pants now uses a different method to compute suggestions.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--option-name-check-distance"], + "typ": "int", + "unscoped_cmd_line_args": ["--option-name-check-distance"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-file=\"['', '', ...]\"", + "config_key": "spec_file", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--spec-file=\"['', '', ...]\""], + "env_var": "PANTS_SPEC_FILE", + "help": "Read additional specs from this file (e.g. target addresses or file names). Each spec should be one per line.", + "removal_hint": "Use --spec-files", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--spec-file"], + "typ": "list", + "unscoped_cmd_line_args": ["--spec-file"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-exception-stacktrace", + "config_key": "print_exception_stacktrace", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]print-exception-stacktrace"], + "env_var": "PANTS_PRINT_EXCEPTION_STACKTRACE", + "help": "Print to console the full exception stack trace if encountered.", + "removal_hint": "Use `--print-stacktrace` instead of `--print-exception-stacktrace`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--print-exception-stacktrace", + "--no-print-exception-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-exception-stacktrace", + "--no-print-exception-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--binaries-baseurls=\"['', '', ...]\"", + "config_key": "binaries_baseurls", + "default": ["https://binaries.pantsbuild.org"], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--binaries-baseurls=\"['', '', ...]\""], + "env_var": "PANTS_BINARIES_BASEURLS", + "help": "List of URLs from which binary tools are downloaded. URLs are searched in order until the requested path is found.", + "removal_hint": "This option has no effect", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--binaries-baseurls"], + "typ": "list", + "unscoped_cmd_line_args": ["--binaries-baseurls"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["https://binaries.pantsbuild.org"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--binaries-fetch-timeout-secs=", + "config_key": "binaries_fetch_timeout_secs", + "default": 30, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--binaries-fetch-timeout-secs="], + "env_var": "PANTS_BINARIES_FETCH_TIMEOUT_SECS", + "help": "Timeout in seconds for URL reads when fetching binary tools from the repos specified by --baseurls.", + "removal_hint": "This option has no effect", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--binaries-fetch-timeout-secs"], + "typ": "int", + "unscoped_cmd_line_args": ["--binaries-fetch-timeout-secs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 30 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--binaries-path-by-id=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "binaries_path_by_id", + "default": {}, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--binaries-path-by-id=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BINARIES_PATH_BY_ID", + "help": "Maps output of uname for a machine to a binary search path: (sysname, id) -> (os, arch), e.g. {('darwin', '15'): ('mac', '10.11'), ('linux', 'arm32'): ('linux', 'arm32')}.", + "removal_hint": "This option has no effect", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--binaries-path-by-id"], + "typ": "dict", + "unscoped_cmd_line_args": ["--binaries-path-by-id"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]allow-external-binary-tool-downloads", + "config_key": "allow_external_binary_tool_downloads", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]allow-external-binary-tool-downloads"], + "env_var": "PANTS_ALLOW_EXTERNAL_BINARY_TOOL_DOWNLOADS", + "help": "If False, require BinaryTool subclasses to download their contents from urls generated from --binaries-baseurls, even if the tool has an external url generator. This can be necessary if using Pants in an environment which cannot contact the wider Internet.", + "removal_hint": "This option has no effect", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--allow-external-binary-tool-downloads", + "--no-allow-external-binary-tool-downloads" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--allow-external-binary-tool-downloads", + "--no-allow-external-binary-tool-downloads" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-log-dir=", + "config_key": "pantsd_log_dir", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--pantsd-log-dir="], + "env_var": "PANTS_PANTSD_LOG_DIR", + "help": "The directory to log pantsd output to.", + "removal_hint": "The global option `pantsd_log_dir` does not do anything.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--pantsd-log-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--pantsd-log-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution-enable-streaming", + "config_key": "remote_execution_enable_streaming", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]remote-execution-enable-streaming"], + "env_var": "PANTS_REMOTE_EXECUTION_ENABLE_STREAMING", + "help": "This option no longer does anything. (It used to enable the streaming remote execution client which is now the only remote execution client.)", + "removal_hint": "This option is no longer applicable.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--remote-execution-enable-streaming", + "--no-remote-execution-enable-streaming" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution-enable-streaming", + "--no-remote-execution-enable-streaming" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependency-inference", + "config_key": "dependency_inference", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]dependency-inference"], + "env_var": "PANTS_DEPENDENCY_INFERENCE", + "help": "Enable dependency inference, meaning that Pants will read your source code to infer the `dependencies` field for you in BUILD files. You can check what Pants inferred by running `./pants dependencies` on your target. You may still need to explicitly provide some `dependencies` that cannot be inferred.", + "removal_hint": "This option is now a noop: individual inference providers can be independently enabled or disabled on their relevant subsystems. For Python, see `./pants help python-infer`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lock", + "config_key": "lock", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]lock"], + "env_var": "PANTS_LOCK", + "help": "Use a global lock to exclude other versions of Pants from running during critical operations.", + "removal_hint": "The global option `lock` does not do anything.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--lock", "--no-lock"], + "typ": "bool", + "unscoped_cmd_line_args": ["--lock", "--no-lock"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "awslambda": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--awslambda-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": ["--awslambda-output-file="], + "env_var": "PANTS_AWSLAMBDA_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--awslambda-output-file"], + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--awslambda-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": ["--awslambda-sep="], + "env_var": "PANTS_AWSLAMBDA_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--awslambda-sep"], + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "Deprecated in favor of the `package` goal.", + "is_goal": true, + "scope": "awslambda" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.6.2,<1.7", + "deprecated_message": null, + "display_args": ["--bandit-version="], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.6.2,<1.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["setuptools<45", "stevedore<3"], + "deprecated_message": null, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["setuptools<45", "stevedore<3"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": "bandit", + "deprecated_message": null, + "display_args": ["--bandit-entry-point="], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": ["--bandit-config="], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-config"], + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]bandit-skip"], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-skip", "--no-bandit-skip"], + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": ["--bandit-args=\"[, , ...]\""], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--bandit-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": "This option no longer does anything, as Pants auto-configures the interpreter constraints for bandit based on your code's interpreter constraints.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--bandit-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "basicauth": { + "advanced": [], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--basicauth-providers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "providers", + "default": {}, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--basicauth-providers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BASICAUTH_PROVIDERS", + "help": "Map from provider name to config dict. This dict contains the following items: {provider_name: }. For example, `{'prod': 'https://app.pantsbuild.org/auth'}`.", + "removal_hint": "The option `--basicauth-provides` does not do anything and the `[basicauth]` subsystem will be removed.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--basicauth-providers"], + "typ": "dict", + "unscoped_cmd_line_args": ["--providers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]basicauth-allow-insecure-urls", + "config_key": "allow_insecure_urls", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]basicauth-allow-insecure-urls"], + "env_var": "PANTS_BASICAUTH_ALLOW_INSECURE_URLS", + "help": "Allow auth against non-HTTPS urls. Must only be set when testing!", + "removal_hint": "The option `--basicauth-allow-insecure-urls` does not do anything and the `[basicauth]` subsystem will be removed.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--basicauth-allow-insecure-urls", + "--no-basicauth-allow-insecure-urls" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--allow-insecure-urls", + "--no-allow-insecure-urls" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "description": "Support for HTTP basicauth.", + "is_goal": false, + "scope": "basicauth" + }, + "binary": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Deprecated in favor of the `package` goal.", + "is_goal": true, + "scope": "binary" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==20.8b1", + "deprecated_message": null, + "display_args": ["--black-version="], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==20.8b1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["setuptools"], + "deprecated_message": null, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["setuptools"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": "black:patched_main", + "deprecated_message": null, + "display_args": ["--black-entry-point="], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black:patched_main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.6"], + "deprecated_message": null, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.6"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": ["--black-config="], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to Black's pyproject.toml config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-config"], + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]black-skip"], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-skip", "--no-black-skip"], + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": ["--black-args=\"[, , ...]\""], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "display_args": ["--changed-since="], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-since"], + "typ": "str", + "unscoped_cmd_line_args": ["--since"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "display_args": ["--changed-diffspec="], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-diffspec"], + "typ": "str", + "unscoped_cmd_line_args": ["--diffspec"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "display_args": ["--changed-dependees="], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-dependees"], + "typ": "DependeesOption", + "unscoped_cmd_line_args": ["--dependees"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-changes-since=, --changed-parent=", + "config_key": "changes_since", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--changed-changes-since=", + "--changed-parent=" + ], + "env_var": "PANTS_CHANGED_CHANGES_SINCE", + "help": "Calculate changes since this tree-ish/scm ref.", + "removal_hint": "Use `--changed-since` instead of `--changed-parent` or `--changed-changes-since`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--changed-changes-since", + "--changed-parent" + ], + "typ": "str", + "unscoped_cmd_line_args": ["--changes-since", "--parent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-include-dependees=", + "config_key": "include_dependees", + "default": "none", + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--changed-include-dependees="], + "env_var": "PANTS_CHANGED_INCLUDE_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": "Use `--changed-dependees` instead of `--changed-include-dependees`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--changed-include-dependees"], + "typ": "DependeesOption", + "unscoped_cmd_line_args": ["--include-dependees"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]changed-fast", + "config_key": "fast", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]changed-fast"], + "env_var": "PANTS_CHANGED_FAST", + "help": "Stop searching for owners once a source is mapped to at least one owning target.", + "removal_hint": "The option `--changed-fast` no longer does anything.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--changed-fast", "--no-changed-fast"], + "typ": "bool", + "unscoped_cmd_line_args": ["--fast", "--no-fast"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "description": "Tell Pants to detect what files and targets have changed from Git.", + "is_goal": false, + "scope": "changed" + }, + "cookies": { + "advanced": [], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cookies-path=", + "config_key": "path", + "default": "/home/josh/.cache/pants/auth/cookies", + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--cookies-path="], + "env_var": "PANTS_COOKIES_PATH", + "help": "Path to file that stores persistent cookies. Defaults to /auth/cookies.", + "removal_hint": "The option `--cookies-path` does not do anything and the `[cookies]` subsystem will be removed.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--cookies-path"], + "typ": "str", + "unscoped_cmd_line_args": ["--path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/auth/cookies" + } + ] + } + } + ], + "description": "Manages HTTP cookies.", + "is_goal": false, + "scope": "cookies" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage>=5.0.3,<5.1", + "deprecated_message": null, + "display_args": ["--coverage-py-version="], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage>=5.0.3,<5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": "coverage", + "deprecated_message": null, + "display_args": ["--coverage-py-entry-point="], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.6"], + "deprecated_message": null, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.6"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "display_args": ["--coverage-py-output-dir="], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-output-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": ["--coverage-py-config="], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to `.coveragerc` or alternative coverage config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-config"], + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "display_args": ["--coverage-py-filter=\"['', '', ...]\""], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules to use in the coverage report, e.g. `['helloworld_test', 'helloworld.util.dirutil']. The modules are recursive: any submodules will be included. If you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-filter"], + "typ": "list", + "unscoped_cmd_line_args": ["--filter"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": ["console", "xml", "html", "raw", "json"], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": ["console"], + "deprecated_message": null, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-report"], + "typ": "list", + "unscoped_cmd_line_args": ["--report"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["console"] + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": ["--dependees-output-file="], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-output-file"], + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": ["--dependees-sep="], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-sep"], + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]dependees-transitive"], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees, instead of only direct dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]dependees-closed"], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["text", "json"], + "comma_separated_choices": "text, json", + "comma_separated_display_args": "--dependees-output-format=", + "config_key": "output_format", + "default": "text", + "deprecated_message": null, + "display_args": ["--dependees-output-format="], + "env_var": "PANTS_DEPENDEES_OUTPUT_FORMAT", + "help": "Use `text` for a flattened list of target addresses; use `json` for each key to be the address of one of the specified targets, with its value being a list of that target's dependees, e.g. `{':example': [':dep1', ':dep2']}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-output-format"], + "typ": "DependeesOutputFormat", + "unscoped_cmd_line_args": ["--output-format"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "text" + } + ] + } + } + ], + "deprecated": [], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": ["--dependencies-output-file="], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-output-file"], + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": ["--dependencies-sep="], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-sep"], + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]dependencies-transitive"], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["source", "3rdparty", "source-and-3rdparty"], + "comma_separated_choices": "source, 3rdparty, source-and-3rdparty", + "comma_separated_display_args": "--dependencies-type=", + "config_key": "type", + "default": "source", + "deprecated_message": null, + "display_args": ["--dependencies-type="], + "env_var": "PANTS_DEPENDENCIES_TYPE", + "help": "Which types of dependencies to list, where `source` means source code dependencies and `3rdparty` means third-party requirement strings.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-type"], + "typ": "DependencyType", + "unscoped_cmd_line_args": ["--type"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "source" + } + ] + } + } + ], + "deprecated": [], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.3.1,<1.4", + "deprecated_message": null, + "display_args": ["--docformatter-version="], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.3.1,<1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": "docformatter:main", + "deprecated_message": null, + "display_args": ["--docformatter-entry-point="], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter:main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython==2.7.*", "CPython>=3.4,<3.9"], + "deprecated_message": null, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython==2.7.*", "CPython>=3.4,<3.9"] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]docformatter-skip"], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.24", + "deprecated_message": null, + "display_args": ["--download-pex-bin-version="], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-pex-bin-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.24" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.24|darwin|561da5a7c76a8a88567a306fa60dfcb5c6924bb71c18b892080d5c2b3eea7133|2936466", + "v2.1.24|linux|561da5a7c76a8a88567a306fa60dfcb5c6924bb71c18b892080d5c2b3eea7133|2936466" + ], + "deprecated_message": null, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-pex-bin-known-versions"], + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.24|darwin|561da5a7c76a8a88567a306fa60dfcb5c6924bb71c18b892080d5c2b3eea7133|2936466", + "v2.1.24|linux|561da5a7c76a8a88567a306fa60dfcb5c6924bb71c18b892080d5c2b3eea7133|2936466" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "display_args": ["--download-pex-bin-url-template="], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies. Use `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-pex-bin-url-template"], + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool. In --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary. For example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-pex-bin-url-platform-mapping"], + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": ["--filedeps-output-file="], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-output-file"], + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": ["--filedeps-sep="], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-sep"], + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]filedeps-absolute"], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--absolute", "--no-absolute"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]filedeps-globs"], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-globs", "--no-filedeps-globs"], + "typ": "bool", + "unscoped_cmd_line_args": ["--globs", "--no-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]filedeps-transitive"], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": ["--filter-output-file="], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-output-file"], + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": ["--filter-sep="], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-sep"], + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_library`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-target-type"], + "typ": "list", + "unscoped_cmd_line_args": ["--target-type"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-address-regex"], + "typ": "list", + "unscoped_cmd_line_args": ["--address-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-tag-regex"], + "typ": "list", + "unscoped_cmd_line_args": ["--tag-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "type", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--filter-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_library`.", + "removal_hint": "Use `--target-type` instead of `--type`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--filter-type"], + "typ": "list", + "unscoped_cmd_line_args": ["--type"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "regex", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--filter-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": "Use `--address-regex` instead of `--regex`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--filter-regex"], + "typ": "list", + "unscoped_cmd_line_args": ["--regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target=\"[[+-]spec1,spec2,..., [+-]spec1,spec2,..., ...]\"", + "config_key": "target", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--filter-target=\"[[+-]spec1,spec2,..., [+-]spec1,spec2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET", + "help": "Filter on these target addresses.", + "removal_hint": "`--filter-target` was removed because it is similar to `--filter-address-regex`. If you still need this feature, please message us on Slack (https://www.pantsbuild.org/docs/community).", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--filter-target"], + "typ": "list", + "unscoped_cmd_line_args": ["--target"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-ancestor=\"[[+-]spec1,spec2,..., [+-]spec1,spec2,..., ...]\"", + "config_key": "ancestor", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--filter-ancestor=\"[[+-]spec1,spec2,..., [+-]spec1,spec2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ANCESTOR", + "help": "Filter on targets that these targets depend on.", + "removal_hint": "`--filter-ancestor` was removed because it is not trivial to implement. If you still need this feature, please message us on Slack (https://www.pantsbuild.org/docs/community).", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--filter-ancestor"], + "typ": "list", + "unscoped_cmd_line_args": ["--ancestor"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "description": "Filter the input targets based on various criteria.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.7.9,<3.9", + "deprecated_message": null, + "display_args": ["--flake8-version="], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.7.9,<3.9" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["setuptools<45"], + "deprecated_message": null, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["setuptools<45"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": "flake8", + "deprecated_message": null, + "display_args": ["--flake8-entry-point="], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": ["--flake8-config="], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to `.flake8` or alternative Flake8 config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-config"], + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]flake8-skip"], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-skip", "--no-flake8-skip"], + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": ["--flake8-args=\"[, , ...]\""], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--flake8-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": "This option no longer does anything, as Pants auto-configures the interpreter constraints for flake8 based on your code's interpreter constraints.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--flake8-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]fmt-per-file-caching"], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-target-caching", + "config_key": "per_target_caching", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]fmt-per-target-caching"], + "env_var": "PANTS_FMT_PER_TARGET_CACHING", + "help": "See `--per-file-caching`.", + "removal_hint": "Use the renamed `--per-file-caching` option instead. If this option is set, Pants will now run per every file, rather than per target.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--fmt-per-target-caching", + "--no-fmt-per-target-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-target-caching", + "--no-per-target-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "grpc_python_plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "display_args": ["--grpc_python_plugin-version="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc_python_plugin-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "display_args": [ + "--grpc_python_plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc_python_plugin-known-versions"], + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin", + "deprecated_message": null, + "display_args": ["--grpc_python_plugin-url-template="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies. Use `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc_python_plugin-url-template"], + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "macos", + "linux": "linux" + }, + "deprecated_message": null, + "display_args": [ + "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool. In --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary. For example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc_python_plugin-url-platform-mapping"], + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "macos", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The grpc protobuf plugin for python.", + "is_goal": false, + "scope": "grpc_python_plugin" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "display_args": ["--ipython-version="], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": "IPython:start_ipython", + "deprecated_message": null, + "display_args": ["--ipython-entry-point="], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "IPython:start_ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]ipython-ignore-cwd"], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path. Normally you want this to be True, so that imports come from the hermetic environment Pants creates. However IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--ignore-cwd", "--no-ignore-cwd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--ipython-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": "This option no longer does anything, as Pants auto-configures the interpreter constraints for ipython based on your code's interpreter constraints.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--ipython-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject]>=5.5.1,<5.6", + "deprecated_message": null, + "display_args": ["--isort-version="], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject]>=5.5.1,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["setuptools"], + "deprecated_message": null, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["setuptools"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": "isort.main", + "deprecated_message": null, + "display_args": ["--isort-entry-point="], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort.main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.6"], + "deprecated_message": null, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.6"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to `isort.cfg` or alternative isort config file(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-config"], + "typ": "list", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]isort-skip"], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-skip", "--no-isort-skip"], + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": ["--isort-args=\"[, , ...]\""], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://timothycrosley.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.3", + "deprecated_message": null, + "display_args": ["--lambdex-version="], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["setuptools>=50.3.0,<50.4"], + "deprecated_message": null, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["setuptools>=50.3.0,<50.4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": "lambdex.bin.lambdex", + "deprecated_message": null, + "display_args": ["--lambdex-entry-point="], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex.bin.lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.5"], + "deprecated_message": null, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.5"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into AWS Lambdas (https://github.com/wickman/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]lint-per-file-caching"], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process. Why do this? You'll get many more cache hits. Why not do this? Linters 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-reports-dir=", + "config_key": "reports_dir", + "default": null, + "deprecated_message": null, + "display_args": ["--lint-reports-dir="], + "env_var": "PANTS_LINT_REPORTS_DIR", + "help": "Specifying a directory causes linters that support writing report files to write into this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-reports-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--reports-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-target-caching", + "config_key": "per_target_caching", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]lint-per-target-caching"], + "env_var": "PANTS_LINT_PER_TARGET_CACHING", + "help": "See `--per-file-caching`.", + "removal_hint": "Use the renamed `--per-file-caching` option instead. If this option is set, Pants will now run per every file, rather than per target.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--lint-per-target-caching", + "--no-lint-per-target-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-target-caching", + "--no-per-target-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": ["--list-output-file="], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-output-file"], + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": ["--list-sep="], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-sep"], + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-provides", + "config_key": "provides", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]list-provides"], + "env_var": "PANTS_LIST_PROVIDES", + "help": "List only targets that provide an artifact, displaying the columns specified by --provides-columns.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-provides", "--no-list-provides"], + "typ": "bool", + "unscoped_cmd_line_args": ["--provides", "--no-provides"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]list-documented"], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-documented", "--no-list-documented"], + "typ": "bool", + "unscoped_cmd_line_args": ["--documented", "--no-documented"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-provides-columns=", + "config_key": "provides_columns", + "default": "address,artifact_id", + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--list-provides-columns="], + "env_var": "PANTS_LIST_PROVIDES_COLUMNS", + "help": "Display these columns when --provides is specified. Available columns are: address, artifact_id, repo_name, repo_url, push_db_basedir", + "removal_hint": "The option `--provides-columns` no longer does anything. It was specific to the JVM backend, so no longer makes sense with Pants 2.0 initially only supporting Python.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--list-provides-columns"], + "typ": "str", + "unscoped_cmd_line_args": ["--provides-columns"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "address,artifact_id" + } + ] + } + } + ], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.782", + "deprecated_message": null, + "display_args": ["--mypy-version="], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.782" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": "mypy", + "deprecated_message": null, + "display_args": ["--mypy-entry-point="], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.6"], + "deprecated_message": null, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.6"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": ["--mypy-config="], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to `mypy.ini` or alternative MyPy config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-config"], + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `mypy_source_plugin` target addresses. This allows you to load custom plugins defined in source code. Run `./pants help mypy_source_plugin` for instructions, including how to load third-party plugins.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-source-plugins"], + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]mypy-skip"], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-skip", "--no-mypy-skip"], + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": ["--mypy-args=\"[, , ...]\""], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns. The special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-executable-search-paths"], + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": ["python", "python3", "python2"], + "deprecated_message": null, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with. This does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python-setup]` to influence where interpreters are searched for.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-bootstrap-interpreter-names"], + "typ": "list", + "unscoped_cmd_line_args": ["--bootstrap-interpreter-names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["python", "python3", "python2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "display_args": ["--pex-verbosity="], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-verbosity"], + "typ": "int", + "unscoped_cmd_line_args": ["--verbosity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]pex-binary-defaults-emit-warnings"], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default. Can be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--emit-warnings", "--no-emit-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-pex-emit-warnings", + "config_key": "pex_emit_warnings", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]pex-binary-defaults-pex-emit-warnings"], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_PEX_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit pex warnings at runtime by default. Can be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": "Use `emit_warnings` rather than `pex_emit_warnings`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--pex-binary-defaults-pex-emit-warnings", + "--no-pex-binary-defaults-pex-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pex-emit-warnings", + "--no-pex-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "display_args": ["--protoc-version="], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ], + "deprecated_message": null, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-known-versions"], + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip", + "deprecated_message": null, + "display_args": ["--protoc-url-template="], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies. Use `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-template"], + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "osx", + "linux": "linux" + }, + "deprecated_message": null, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool. In --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary. For example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-platform-mapping"], + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "osx", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-runtime-targets=\"[, , ...]\"", + "config_key": "runtime_targets", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--protoc-runtime-targets=\"[, , ...]\"" + ], + "env_var": "PANTS_PROTOC_RUNTIME_TARGETS", + "help": "A list of addresses to targets for Protobuf runtime libraries. For example, a `python_requirement_library` for the `protobuf` Python library. These targets will be automatically injected into the `dependencies` field of every `protobuf_library`.", + "removal_hint": "Use the option `runtime_dependencies` in the new `[python-protobuf]` scope, which behaves identically.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--protoc-runtime-targets"], + "typ": "list", + "unscoped_cmd_line_args": ["--runtime-targets"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.4.4,<2.5", + "deprecated_message": null, + "display_args": ["--pylint-version="], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.4.4,<2.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": "pylint", + "deprecated_message": null, + "display_args": ["--pylint-entry-point="], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": ["--pylint-config="], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to `pylintrc` or alternative Pylint config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-config"], + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `pylint_source_plugin` target addresses. This allows you to load custom plugins defined in source code. Run `./pants help pylint_source_plugin` for instructions, including how to load third-party plugins.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-source-plugins"], + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]pylint-skip"], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-skip", "--no-pylint-skip"], + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": ["--pylint-args=\"[, , ...]\""], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--pylint-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": "This option no longer does anything, as Pants auto-configures the interpreter constraints for pylint based on your code's interpreter constraints.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--pylint-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "description": "The PyLint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.0.1,<6.1", + "deprecated_message": null, + "display_args": ["--pytest-version="], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for Pytest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.0.1,<6.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-pytest-plugins=\"['', '', ...]\"", + "config_key": "pytest_plugins", + "default": ["pytest-cov>=2.10.1,<2.11", "zipp==2.1.0"], + "deprecated_message": null, + "display_args": [ + "--pytest-pytest-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_PYTEST_PLUGINS", + "help": "Requirement strings for any plugins or additional requirements you'd like to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-pytest-plugins"], + "typ": "list", + "unscoped_cmd_line_args": ["--pytest-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["pytest-cov>=2.10.1,<2.11", "zipp==2.1.0"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "display_args": ["--pytest-timeout-default="], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-timeout-default"], + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-default"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "display_args": ["--pytest-timeout-maximum="], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-timeout-maximum"], + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-maximum"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-xml-dir=", + "config_key": "junit_xml_dir", + "default": null, + "deprecated_message": null, + "display_args": ["--pytest-junit-xml-dir="], + "env_var": "PANTS_PYTEST_JUNIT_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-junit-xml-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--junit-xml-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "display_args": ["--pytest-junit-family="], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of the generated XML file. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-junit-family"], + "typ": "str", + "unscoped_cmd_line_args": ["--junit-family"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "display_args": ["--pytest-execution-slot-var="], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-execution-slot-var"], + "typ": "str", + "unscoped_cmd_line_args": ["--execution-slot-var"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]pytest-timeouts"], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-timeouts", "--no-pytest-timeouts"], + "typ": "bool", + "unscoped_cmd_line_args": ["--timeouts", "--no-timeouts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python-binary": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-binary-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]python-binary-emit-warnings"], + "env_var": "PANTS_PYTHON_BINARY_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default. Can be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-binary-emit-warnings", + "--no-python-binary-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--emit-warnings", "--no-emit-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-binary-pex-emit-warnings", + "config_key": "pex_emit_warnings", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]python-binary-pex-emit-warnings"], + "env_var": "PANTS_PYTHON_BINARY_PEX_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit pex warnings at runtime by default. Can be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": "Use `emit_warnings` rather than `pex_emit_warnings`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--python-binary-pex-emit-warnings", + "--no-python-binary-pex-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pex-emit-warnings", + "--no-pex-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "python-binary" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]python-infer-imports"], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]python-infer-string-imports"], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--string-imports", "--no-string-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]python-infer-inits"], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any __init__.py files existing for the packages it is located in (recursively upward in the directory structure). Even if this is disabled, Pants will still include any ancestor __init__.py files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used. If you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--inits", "--no-inits"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "display_args": ["--[no-]python-infer-conftests"], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--conftests", "--no-conftests"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-cpp-flags"], + "typ": "list", + "unscoped_cmd_line_args": ["--cpp-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-ld-flags"], + "typ": "list", + "unscoped_cmd_line_args": ["--ld-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-version=", + "config_key": "mypy_plugin_version", + "default": "mypy-protobuf==1.23", + "deprecated_message": null, + "display_args": ["--python-protobuf-mypy-plugin-version="], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_VERSION", + "help": "The pip-style requirement string for `mypy-protobuf`. You must still set `--mypy-plugin` for this option to be used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-protobuf-mypy-plugin-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--mypy-plugin-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==1.23" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-protobuf-runtime-dependencies"], + "typ": "list", + "unscoped_cmd_line_args": ["--runtime-dependencies"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]python-protobuf-mypy-plugin"], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--mypy-plugin", "--no-mypy-plugin"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "display_args": ["--python-repos-repos=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-repos"], + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": ["https://pypi.org/simple/"], + "deprecated_message": null, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-indexes"], + "typ": "list", + "unscoped_cmd_line_args": ["--indexes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["https://pypi.org/simple/"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.6"], + "deprecated_message": null, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "Constrain the selected Python interpreter. Specify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3)or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together. These constraints are used as the default value for the `compatibility` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-setup-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.6"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements, use this constraints file to determine which versions to use. See https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-setup-requirement-constraints"], + "typ": "file_option", + "unscoped_cmd_line_args": ["--requirement-constraints"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": ["never", "nondeployables", "always"], + "comma_separated_choices": "never, nondeployables, always", + "comma_separated_display_args": "--python-setup-resolve-all-constraints=", + "config_key": "resolve_all_constraints", + "default": "nondeployables", + "deprecated_message": null, + "display_args": [ + "--python-setup-resolve-all-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If set, and the requirements of the code being operated on are a subset of the constraints file, then the entire constraints file will be used instead of the subset. If unset, or any requirement of the code being operated on is not in the constraints file, each subset will be independently resolved as needed, which is more correct - work is only invalidated if a requirement it actually depends on changes - but also a lot slower, due to the extra resolving. \n\n* `never` will always use proper subsets, regardless of the goal being run.\n* `nondeployables` will use proper subsets for `./pants package`, but otherwise attempt to use a single resolve.\n* `always` will always attempt to use a single resolve.\n\nRequires [python-setup].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-setup-resolve-all-constraints"], + "typ": "ResolveAllConstraintsOption", + "unscoped_cmd_line_args": ["--resolve-all-constraints"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nondeployables" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": ["", ""], + "deprecated_message": null, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints. You can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter. The following special strings are supported:\n\n* \"\", the contents of the PATH env var\n* \"\", all Python versions under $(pyenv root)/versions\n* \"\", the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* \"\", paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-setup-interpreter-search-paths"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["", ""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "display_args": ["--python-setup-resolver-manylinux="], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-setup-resolver-manylinux"], + "typ": "str", + "unscoped_cmd_line_args": ["--resolver-manylinux"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": 32, + "deprecated_message": null, + "display_args": ["--python-setup-resolver-jobs="], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with. Because Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-setup-resolver-jobs`. Setting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-setup-resolver-jobs"], + "typ": "int", + "unscoped_cmd_line_args": ["--resolver-jobs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-http-cache-ttl=", + "config_key": "resolver_http_cache_ttl", + "default": 3600, + "deprecated_message": null, + "display_args": ["--python-setup-resolver-http-cache-ttl="], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_HTTP_CACHE_TTL", + "help": "The maximum time (in seconds) for items in the HTTP cache. When the cache expires,the PEX resolver will make network requests to see if new versions of your requirements are available.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-setup-resolver-http-cache-ttl"], + "typ": "int", + "unscoped_cmd_line_args": ["--resolver-http-cache-ttl"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-platforms=\"[, , ...]\"", + "config_key": "platforms", + "default": ["current"], + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--python-setup-platforms=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_PLATFORMS", + "help": "A list of platforms to be supported by this Python environment. Each platformis a string, as returned by pkg_resources.get_supported_platform().", + "removal_hint": "The option `--python-setup-platforms` does not do anything anymore. Instead, explicitly set the `platforms` field on each `pex_binary` target.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--python-setup-platforms"], + "typ": "list", + "unscoped_cmd_line_args": ["--platforms"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["current"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-cache-dir=", + "config_key": "interpreter_cache_dir", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--python-setup-interpreter-cache-dir="], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CACHE_DIR", + "help": "The parent directory for the interpreter cache. If unspecified, a standard path under the workdir is used.", + "removal_hint": "The option `--python-setup-interpreter-cache-dir` does not do anything anymore.Instead, use the global option `--named-caches-dir`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--python-setup-interpreter-cache-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--interpreter-cache-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-cache-dir=", + "config_key": "resolver_cache_dir", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--python-setup-resolver-cache-dir="], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_CACHE_DIR", + "help": "The parent directory for the requirement resolver cache. If unspecified, a standard path under the workdir is used.", + "removal_hint": "The option `--python-setup-resolver-cache-dir` does not do anything anymore. Instead, use the global option `--named-caches-dir`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--python-setup-resolver-cache-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--resolver-cache-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-resolver-allow-prereleases", + "config_key": "resolver_allow_prereleases", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--[no-]python-setup-resolver-allow-prereleases"], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_ALLOW_PRERELEASES", + "help": "Whether to include pre-releases when resolving requirements.", + "removal_hint": "The option `--python-setup-resolver-allow-prereleases` does not no anything. To use a pre-release, explicitly use that pre-release version in your requirement string, e.g. `my_dist==99.0.dev0`.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": [ + "--python-setup-resolver-allow-prereleases", + "--no-python-setup-resolver-allow-prereleases" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolver-allow-prereleases", + "--no-resolver-allow-prereleases" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "description": "A Python environment.", + "is_goal": false, + "scope": "python-setup" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "display_args": ["--repl-shell="], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-shell"], + "typ": "str", + "unscoped_cmd_line_args": ["--shell"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "reporting": { + "advanced": [], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--reporting-reports-dir=", + "config_key": "reports_dir", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--reporting-reports-dir="], + "env_var": "PANTS_REPORTING_REPORTS_DIR", + "help": "DEPRECATED: This option is no longer applicable.", + "removal_hint": "This option is no longer applicable. The `[reporting]` subsystem will be removed.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--reporting-reports-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--reports-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--reporting-template-dir=", + "config_key": "template_dir", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--reporting-template-dir="], + "env_var": "PANTS_REPORTING_TEMPLATE_DIR", + "help": "DEPRECATED: This option is no longer applicable.", + "removal_hint": "This option is no longer applicable. The `[reporting]` subsystem will be removed.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--reporting-template-dir"], + "typ": "str", + "unscoped_cmd_line_args": ["--template-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--reporting-console-label-format=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "console_label_format", + "default": {}, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--reporting-console-label-format=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REPORTING_CONSOLE_LABEL_FORMAT", + "help": "DEPRECATED: This option is no longer applicable.", + "removal_hint": "This option is no longer applicable. The `[reporting]` subsystem will be removed.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--reporting-console-label-format"], + "typ": "dict", + "unscoped_cmd_line_args": ["--console-label-format"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--reporting-console-tool-output-format=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "console_tool_output_format", + "default": {}, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--reporting-console-tool-output-format=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REPORTING_CONSOLE_TOOL_OUTPUT_FORMAT", + "help": "DEPRECATED: This option is no longer applicable.", + "removal_hint": "This option is no longer applicable. The `[reporting]` subsystem will be removed.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--reporting-console-tool-output-format"], + "typ": "dict", + "unscoped_cmd_line_args": ["--console-tool-output-format"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "description": "V1 reporting config.", + "is_goal": false, + "scope": "reporting" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": ["--roots-output-file="], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-output-file"], + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": ["--roots-sep="], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-sep"], + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--run-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.", + "is_goal": true, + "scope": "run" + }, + "run-tracker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-stats-local-json-file=", + "config_key": "stats_local_json_file", + "default": null, + "deprecated_message": null, + "display_args": ["--run-tracker-stats-local-json-file="], + "env_var": "PANTS_RUN_TRACKER_STATS_LOCAL_JSON_FILE", + "help": "Write stats to this local json file on run completion.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--run-tracker-stats-local-json-file"], + "typ": "str", + "unscoped_cmd_line_args": ["--stats-local-json-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-stats-option-scopes-to-record=\"['', '', ...]\"", + "config_key": "stats_option_scopes_to_record", + "default": [], + "deprecated_message": null, + "display_args": [ + "--run-tracker-stats-option-scopes-to-record=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUN_TRACKER_STATS_OPTION_SCOPES_TO_RECORD", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-tracker-stats-option-scopes-to-record" + ], + "typ": "list", + "unscoped_cmd_line_args": ["--stats-option-scopes-to-record"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-stats-upload-urls=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "stats_upload_urls", + "default": {}, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": [ + "--run-tracker-stats-upload-urls=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_RUN_TRACKER_STATS_UPLOAD_URLS", + "help": "Upload stats to these URLs on run completion. Value is a map from URL to the name of the auth provider the user must auth against in order to upload stats to that URL, or None/empty string if no auth is required. Currently the auth provider name is only used to provide a more helpful error message.", + "removal_hint": "RunTracker no longer directly supports uploading run stats to urls.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--run-tracker-stats-upload-urls"], + "typ": "dict", + "unscoped_cmd_line_args": ["--stats-upload-urls"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-stats-upload-timeout=", + "config_key": "stats_upload_timeout", + "default": 2, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--run-tracker-stats-upload-timeout="], + "env_var": "PANTS_RUN_TRACKER_STATS_UPLOAD_TIMEOUT", + "help": "Wait at most this many seconds for the stats upload to complete.", + "removal_hint": "RunTracker no longer directly supports uploading run stats to urls.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--run-tracker-stats-upload-timeout"], + "typ": "int", + "unscoped_cmd_line_args": ["--stats-upload-timeout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": ["1", "2"], + "comma_separated_choices": "1, 2", + "comma_separated_display_args": "--run-tracker-stats-version=", + "config_key": "stats_version", + "default": 1, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--run-tracker-stats-version="], + "env_var": "PANTS_RUN_TRACKER_STATS_VERSION", + "help": "Format of stats JSON for uploads and local json file.", + "removal_hint": "RunTracker no longer directly supports uploading run stats to urls.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--run-tracker-stats-version"], + "typ": "int", + "unscoped_cmd_line_args": ["--stats-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-num-foreground-workers=", + "config_key": "num_foreground_workers", + "default": 64, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--run-tracker-num-foreground-workers="], + "env_var": "PANTS_RUN_TRACKER_NUM_FOREGROUND_WORKERS", + "help": "Number of threads for foreground work.", + "removal_hint": "RunTracker no longer uses foreground workers.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--run-tracker-num-foreground-workers"], + "typ": "int", + "unscoped_cmd_line_args": ["--num-foreground-workers"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-num-background-workers=", + "config_key": "num_background_workers", + "default": 64, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--run-tracker-num-background-workers="], + "env_var": "PANTS_RUN_TRACKER_NUM_BACKGROUND_WORKERS", + "help": "Number of threads for background work.", + "removal_hint": "RunTracker no longer uses background workers.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--run-tracker-num-background-workers"], + "typ": "int", + "unscoped_cmd_line_args": ["--num-background-workers"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + } + ], + "description": "Tracks and times the execution of a pants run.", + "is_goal": false, + "scope": "run-tracker" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "2.12.0", + "deprecated_message": null, + "display_args": ["--scc-version="], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.12.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ], + "deprecated_message": null, + "display_args": ["--scc-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-known-versions"], + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip", + "deprecated_message": null, + "display_args": ["--scc-url-template="], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies. Use `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-template"], + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + }, + "deprecated_message": null, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool. In --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary. For example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-platform-mapping"], + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setup-py-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--setup-py-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SETUP_PY_ARGS", + "help": "Arguments to pass directly to setup.py, e.g. `--setup-py-args='bdist_wheel --python-tag py36.py37'`. If unspecified, Pants will dump the setup.py chroot.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setup-py-args"], + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]setup-py-transitive"], + "env_var": "PANTS_SETUP_PY_TRANSITIVE", + "help": "If specified, will run the setup.py command recursively on all exported targets that the specified targets depend on, in dependency order.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-transitive", + "--no-setup-py-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Deprecated in favor of the `package` goal.", + "is_goal": true, + "scope": "setup-py" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": ["exact", "compatible", "any"], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": ["--first-party-dependency-version-scheme"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<50.4", + "deprecated_message": null, + "display_args": ["--setuptools-version="], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-version"], + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<50.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["wheel==0.35.1"], + "deprecated_message": null, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-extra-requirements"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["wheel==0.35.1"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "display_args": ["--setuptools-entry-point="], + "env_var": "PANTS_SETUPTOOLS_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-entry-point"], + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.5"], + "deprecated_message": null, + "display_args": [ + "--setuptools-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-interpreter-constraints"], + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.5"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The Python setuptools library (https://github.com/pypa/setuptools).", + "is_goal": false, + "scope": "setuptools" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": ["/", "src", "src/python", "src/py"], + "deprecated_message": null, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-root-patterns"], + "typ": "list", + "unscoped_cmd_line_args": ["--root-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/", "src", "src/python", "src/py"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-marker-filenames"], + "typ": "list", + "unscoped_cmd_line_args": ["--marker-filenames"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": ["create", "fail"], + "comma_separated_choices": "create, fail", + "comma_separated_display_args": "--source-unmatched=", + "config_key": "unmatched", + "default": "create", + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--source-unmatched="], + "env_var": "PANTS_SOURCE_UNMATCHED", + "help": "Configures the behavior when sources are defined outside of any configured source root. `create` will cause a source root to be implicitly created at the definition location of the sources; `fail` will trigger an error.", + "removal_hint": "The option `--source-unmatched` does not do anything. Pants will always fail if the source root does not exist.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--source-unmatched"], + "typ": "str", + "unscoped_cmd_line_args": ["--unmatched"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "create" + } + ] + } + } + ], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "\nConfig schema is as follows:\n\n{\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ],\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n }\n}\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--sourcefile-validation-config"], + "typ": "dict", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL"], + "deprecated_message": null, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nEach ENV_VAR must be one of `LANG`, `LC_CTYPE`, `LC_ALL`, `http_proxy`, `https_proxy`, `ftp_proxy`, `all_proxy`, `no_proxy`, `HTTP_PROXY`, `HTTPS_PROXY`, `FTP_PROXY`, `ALL_PROXY`, `NO_PROXY`, `REQUESTS_CA_BUNDLE`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subprocess-environment-env-vars"], + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL"] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-lang=", + "config_key": "lang", + "default": "en_US.UTF-8", + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--subprocess-environment-lang="], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_LANG", + "help": "Override the `LANG` environment variable for any forked subprocesses.", + "removal_hint": "Use the env_vars option in this scope instead.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--subprocess-environment-lang"], + "typ": "str", + "unscoped_cmd_line_args": ["--lang"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "en_US.UTF-8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-lc-all=", + "config_key": "lc_all", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.1.0.dev0", + "display_args": ["--subprocess-environment-lc-all="], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_LC_ALL", + "help": "Override the `LC_ALL` environment variable for any forked subprocesses.", + "removal_hint": "Use the env_vars option in this scope instead.", + "removal_version": "2.1.0.dev0", + "scoped_cmd_line_args": ["--subprocess-environment-lc-all"], + "typ": "str", + "unscoped_cmd_line_args": ["--lc-all"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]test-debug"], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-debug", "--no-test-debug"], + "typ": "bool", + "unscoped_cmd_line_args": ["--debug", "--no-debug"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]test-force"], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-force", "--no-test-force"], + "typ": "bool", + "unscoped_cmd_line_args": ["--force", "--no-force"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["all", "failed", "none"], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "display_args": ["--test-output="], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-output"], + "typ": "ShowOutput", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]test-use-coverage"], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--use-coverage", "--no-use-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "display_args": ["--[no-]test-open-coverage"], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": ["--open-coverage", "--no-open-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "display_args": ["--test-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-extra-env-vars"], + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checkers.", + "is_goal": true, + "scope": "typecheck" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": ["none", "summary", "nonmatching", "names", "all"], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "display_args": ["--validate-detail-level="], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--validate-detail-level"], + "typ": "DetailLevel", + "unscoped_cmd_line_args": ["--detail-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + } + } +} diff --git a/versioned_docs/version-2.1.x/reference/help-all.json b/versioned_docs/version-2.1.x/reference/help-all.json new file mode 100644 index 000000000..17a22c14e --- /dev/null +++ b/versioned_docs/version-2.1.x/reference/help-all.json @@ -0,0 +1,10335 @@ +{ + "name_to_goal_info": { + "count-loc": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "scc", + "source", + "subprocess-environment" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen" + }, + "filedeps": { + "consumed_scopes": [ + "", + "download-pex-bin", + "filedeps", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "black", + "docformatter", + "download-pex-bin", + "fmt", + "grpc_python_plugin", + "isort", + "pex", + "protoc", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "lint": { + "consumed_scopes": [ + "", + "bandit", + "black", + "docformatter", + "download-pex-bin", + "flake8", + "grpc_python_plugin", + "isort", + "lint", + "pex", + "protoc", + "pylint", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "repl": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "ipython", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "repl", + "source", + "subprocess-environment" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "run", + "source", + "subprocess-environment" + ], + "description": "Runs a binary target.", + "is_implemented": true, + "name": "run" + }, + "test": { + "consumed_scopes": [ + "", + "coverage-py", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "pytest", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "mypy", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run type checkers.", + "is_implemented": true, + "name": "typecheck" + }, + "validate": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "sourcefile-validation", + "subprocess-environment", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located. If undefined, this will use the path to the the BUILD, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`. When running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`). Warning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`. Pants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`). You can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `files` or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`. This is useful to include any loose files, like data files, image assets, or config files. This will ignore any targets that are not `files` or `relocated_files` targets. If you instead want those files included in any packages specified in the `packages` field for this target, then use a `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "files": { + "alias": "files", + "description": "Loose files that live outside code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM\nJARs. The sources of a `files` target are accessed via filesystem APIs, such as Python's\n`open()`, via paths relative to the repo root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Loose files that live outside code packages." + }, + "mypy_source_plugin": { + "alias": "mypy_source_plugin", + "description": "A MyPy plugin loaded through source code.\n\nTo load a source plugin:\n\n 1. Write your plugin. See https://mypy.readthedocs.io/en/stable/extending_mypy.html.\n 2. Define a `mypy_source_plugin` target with the plugin's Python file(s) included in the\n `sources` field.\n 3. Add `plugins = path.to.module` to your MyPy config file, using the name of the module\n without source roots. For example, if your Python file is called\n `pants-plugins/mypy_plugins/custom_plugin.py`, and you set `pants-plugins` as a source root,\n then set `plugins = mypy_plugins.custom_plugin`. Set the `config`\n option in the `[mypy]` scope to point to your MyPy config file.\n 4. Set the option `source_plugins` in the `[mypy]` scope to include this target's\n address, e.g. `source_plugins = [\"pants-plugins/mypy_plugins:plugin\"]`.\n\nTo instead load a third-party plugin, set the option `extra_requirements` in the `[mypy]`\nscope (see https://www.pantsbuild.org/v2.0/docs/python-typecheck-goal). Set `plugins` in\nyour config file, like you'd do with a source plugin.\n\nThis target type is treated similarly to a `python_library` target. For example, Python linters\nand formatters will run on this target.\n\nYou can depend on other targets and Pants's dependency inference will add them to the `dependencies` field,\nincluding any third-party requirements and `python_library` targets (even if their source files live in a different\ndirectory).\n\nOther targets can depend on this target. This allows you to write a `python_tests` target for\nthis code or a `python_distribution` target to distribute the plugin externally.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with. Each element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'. Specify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7. If the field is not set, it will default to the option `[python-setup].interpreter_constraints]`. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "A MyPy plugin loaded through source code." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable\nof running the target. For more information, see https://www.pantsbuild.org/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with. Each element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'. Specify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7. If the field is not set, it will default to the option `[python-setup].interpreter_constraints]`. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located. If undefined, this will use the path to the the BUILD, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`. When running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`). Warning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A single file containing the executable, such as ['app.py']. You can leave this off if you include the executable file in one of this target's `dependencies` and explicitly set this target's `entry_point`. This must have 0 or 1 files, but no more. If you depend on more files, put them in a `python_library` target and include that target in the `dependencies` field.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "The entry point for the binary. If omitted, Pants will use the module name from the `sources` field, e.g. `project/app.py` will become the entry point `project.app` .", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with. This defaults to the current platform, but can be overridden to different platforms. You can give a list of multiple platforms to create a multiplatform PEX. To use wheels for specific interpreter/platform tags, you can append them to the platform with hyphens like: PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"). PLATFORM is the host platform e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\", etc\". IMPL is the Python implementation abbreviation (e.g. \"cp\", \"pp\", \"jp\"). PYVER is a two-digit string representing the python version (e.g. \"27\", \"36\"). ABI is the ABI tag (e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\").", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` of the environment that the binary runs in. Use `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "zip_safe", + "default": "True", + "description": "Whether or not this binary is safe to run in compacted (zip-file) form. If the PEX is not zip safe, it will be written to disk prior to execution. You may need to mark `zip_safe=False` if you're having issues loading your code.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "always_write_cache", + "default": "False", + "description": "Whether PEX should always write the .deps cache of the .pex file to disk or not. This can use less memory in RAM constrained environments.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should we ignore when PEX cannot resolve dependencies?", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints. This influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime. The default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_library": { + "alias": "protobuf_library", + "description": "Protobuf files used to generate various languages.\n\nSee https://www.pantsbuild.org/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with. Each element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'. Specify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7. If the field is not set, it will default to the option `[python-setup].interpreter_constraints]`. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under. If unspecified, the source root the protobuf_library is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Protobuf files used to generate various languages." + }, + "pylint_source_plugin": { + "alias": "pylint_source_plugin", + "description": "A Pylint plugin loaded through source code.\n\nTo load a source plugin:\n\n 1. Write your plugin. See http://pylint.pycqa.org/en/latest/how_tos/plugins.html.\n 2. Define a `pylint_source_plugin` target with the plugin's Python file(s) included in the\n `sources` field.\n 3. Add the parent directory of your target to the `root_patterns` option in the `[source]`\n scope. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add\n 'build-support/pylint'. This is necessary for Pants to know how to tell Pylint to\n discover your plugin. See https://www.pantsbuild.org/docs/source-roots.\n 4. Add `load-plugins=$module_name` to your Pylint config file. For example, if your Python\n file is called `custom_plugin.py`, set `load-plugins=custom_plugin`. Set the `config`\n option in the `[pylint]` scope to point to your Pylint config file.\n 5. Set the option `source_plugins` in the `[pylint]` scope to include this target's\n address, e.g. `source_plugins = [\"build-support/pylint:plugin\"]`.\n\nTo instead load a third-party plugin, set the option `extra_requirements` in the `[pylint]`\nscope (see https://www.pantsbuild.org/docs/python-linters-and-formatters). Set `load-plugins` in\nyour config file, like you'd do with a source plugin.\n\nThis target type is treated similarly to a `python_library` target. For example, Python linters\nand formatters will run on this target.\n\nYou can include other targets in the `dependencies` field, so long as those targets are\nthird-party dependencies or are located in the same directory or a subdirectory.\n\nOther targets can depend on this target. This allows you to write a `python_tests` target for\nthis code or a `python_distribution` target to distribute the plugin externally.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with. Each element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'. Specify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7. If the field is not set, it will default to the option `[python-setup].interpreter_constraints]`. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this plugin depends on. Due to restrictions with Pylint plugins, these targets must either be third-party Python dependencies (https://www.pantsbuild.org/docs/python-third-party-dependencies) or be located within this target's same directory or a subdirectory.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "A Pylint plugin loaded through source code." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with. Each element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'. Specify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7. If the field is not set, it will default to the option `[python-setup].interpreter_constraints]`. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located. If undefined, this will use the path to the the BUILD, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`. When running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`). Warning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "AWS Lambda handler entrypoint (module.dotted.name:handler_func).", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target. See https://www.pantsbuild.org/docs/python-setup-py-goal.", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "setup_py_commands", + "default": null, + "description": "The runtime commands to invoke setup.py with to create the distribution. E.g., [\"bdist_wheel\", \"--python-tag=py36.py37\", \"sdist\"] If empty or unspecified, will just create a chroot with a setup() function. See https://www.pantsbuild.org/docs/python-setup-py-goal.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_library": { + "alias": "python_library", + "description": "Python source code.\n\nA `python_library` does not necessarily correspond to a distribution you publish (see\n`python_distribution` and `pex_binary` for that); multiple `python_library` targets may be\npackaged into a distribution or binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with. Each element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'. Specify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7. If the field is not set, it will default to the option `[python-setup].interpreter_constraints]`. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Python source code." + }, + "python_requirement_library": { + "alias": "python_requirement_library", + "description": "Python requirements installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If\nyou have a `requirements.txt` file already, you can instead use the macro\n`python_requirements()` to convert each requirement into a `python_requirement_library()` target\nautomatically.\n\nSee https://www.pantsbuild.org/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A sequence of pip-style requirement strings, e.g. ['foo==1.8', 'bar<=3 ; python_version<'3'].", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "module_mapping", + "default": null, + "description": "A mapping of requirement names to a list of the modules they provide. For example, `{\"ansicolors\": [\"colors\"]}`. Any unspecified requirements will use the requirement name as the default module, e.g. \"Django\" will default to [\"django\"]`. This is used for Pants to be able to infer dependencies in BUILD files.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + } + ], + "summary": "Python requirements installable by pip." + }, + "python_tests": { + "alias": "python_tests", + "description": "Python tests.\n\nThese may be written in either Pytest-style or unittest style.\n\nAll test util code, other than `conftest.py`, should go into a dedicated `python_library()`\ntarget and then be included in the `dependencies` field.\n\nSee https://www.pantsbuild.org/docs/python-test-goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with. Each element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'. Specify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7. If the field is not set, it will default to the option `[python-setup].interpreter_constraints]`. See https://www.pantsbuild.org/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py', 'conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting assets should be included in the test run. Pants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`). You can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) which covers the total runtime of all tests in this target. This only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + } + ], + "summary": "Python tests." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than\ntheir actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be\n`resources/data.json`. Your other target types can then add this target to their\n`dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n file_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `files()` targets that you want to relocate, such as `['//:json_files']`. Every target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`. You can set this field to `\"\"` to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`. You can set this field to `\"\"` to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resources": { + "alias": "resources", + "description": "Data emebdded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a\n`resources` target are accessed via language-specific resource APIs, such as Python's pkgutil or\nJVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target. Paths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`. Example: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Data emebdded in a code package and accessed in a location-independent manner." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different\ntargets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings that you can use to describe a target. For example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target. Use `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib']. Alternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json']. You may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.pylint", + "pants.backend.codegen.protobuf.python", + "pants.backend.awslambda.python" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugin-cache-dir=", + "config_key": "plugin_cache_dir", + "default": "/home/josh/.cache/pants/plugins", + "deprecated_message": null, + "display_args": [ + "--plugin-cache-dir=" + ], + "env_var": "PANTS_PLUGIN_CACHE_DIR", + "help": "Cache resolved plugin requirements here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugin-cache-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--plugin-cache-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/plugins" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-pants-warnings=\"['', '', ...]\"", + "config_key": "ignore_pants_warnings", + "default": [], + "deprecated_message": null, + "display_args": [ + "--ignore-pants-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_PANTS_WARNINGS", + "help": "Regexps matching warning strings to ignore, e.g. [\"DEPRECATED: the option `--my-opt` will be removed\"]. The regex patterns will be matched from the start of the warning string, and are case-insensitive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.1.2", + "deprecated_message": null, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.1.2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.1.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bootstrapdir=", + "config_key": "pants_bootstrapdir", + "default": "/home/josh/.cache/pants", + "deprecated_message": null, + "display_args": [ + "--pants-bootstrapdir=" + ], + "env_var": "PANTS_BOOTSTRAPDIR", + "help": "Unused. Will be deprecated in 2.2.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bootstrapdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bootstrapdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/home/josh/.cache/pants" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-configdir=", + "config_key": "pants_configdir", + "default": "/home/josh/.config/pants", + "deprecated_message": null, + "display_args": [ + "--pants-configdir=" + ], + "env_var": "PANTS_CONFIGDIR", + "help": "Unused. Will be deprecated in 2.2.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-configdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-configdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.config/pants" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/home/josh/.config/pants" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-supportdir=", + "config_key": "pants_supportdir", + "default": "/tmp/tmp.MpwSc5OGVo/build-support", + "deprecated_message": null, + "display_args": [ + "--pants-supportdir=" + ], + "env_var": "PANTS_SUPPORTDIR", + "help": "Unused. Will be deprecated in 2.2.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-supportdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-supportdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc" + ], + "deprecated_message": null, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": 1073741824, + "deprecated_message": null, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of a pantsd process (in bytes). There is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--native-engine-visualize-to=", + "config_key": "native_engine_visualize_to", + "default": null, + "deprecated_message": null, + "display_args": [ + "--native-engine-visualize-to=" + ], + "env_var": "PANTS_NATIVE_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-quit-timeout=", + "config_key": "pantsd_pailgun_quit_timeout", + "default": 5.0, + "deprecated_message": null, + "display_args": [ + "--pantsd-pailgun-quit-timeout=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_QUIT_TIMEOUT", + "help": "The length of time (in seconds) to wait for further output after sending a signal to the remote pantsd process before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-quit-timeout" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-quit-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-use-local-cache", + "config_key": "process_execution_use_local_cache", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]process-execution-use-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_USE_LOCAL_CACHE", + "help": "Whether to keep process executions in a local cache persisted to disk.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-cleanup-local-dirs", + "config_key": "process_execution_cleanup_local_dirs", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]process-execution-cleanup-local-dirs" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CLEANUP_LOCAL_DIRS", + "help": "Whether or not to cleanup directories used for local process execution (primarily useful for e.g. debugging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": 64, + "deprecated_message": null, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": "", + "deprecated_message": null, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-speculation-delay=", + "config_key": "process_execution_speculation_delay", + "default": 1.0, + "deprecated_message": null, + "display_args": [ + "--process-execution-speculation-delay=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_SPECULATION_DELAY", + "help": "Number of seconds to wait before speculating a second request for a slow process. see `--process-execution-speculation-strategy`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-speculation-delay" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--process-execution-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "remote_first", + "local_first", + "none" + ], + "comma_separated_choices": "remote_first, local_first, none", + "comma_separated_display_args": "--process-execution-speculation-strategy=", + "config_key": "process_execution_speculation_strategy", + "default": "none", + "deprecated_message": null, + "display_args": [ + "--process-execution-speculation-strategy=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_SPECULATION_STRATEGY", + "help": "Speculate a second request for an underlying process if the first one does not complete within `--process-execution-speculation-delay` seconds.\n`local_first` (default): Try to run the process locally first, and fall back to remote execution if available.\n`remote_first`: Run the process on the remote execution backend if available, and fall back to the local host if remote calls take longer than the speculation timeout.\n`none`: Do not speculate about long running processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-speculation-strategy" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-speculation-strategy" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run the requests that are marked as nailgunnable.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-server=\"['', '', ...]\"", + "config_key": "remote_store_server", + "default": [], + "deprecated_message": null, + "display_args": [ + "--remote-store-server=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_STORE_SERVER", + "help": "host:port of grpc server to use as remote execution file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-server" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-store-server" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-thread-count=", + "config_key": "remote_store_thread_count", + "default": 1, + "deprecated_message": null, + "display_args": [ + "--remote-store-thread-count=" + ], + "env_var": "PANTS_REMOTE_STORE_THREAD_COUNT", + "help": "Thread count to use for the pool that interacts with the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-thread-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-thread-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-server=", + "config_key": "remote_execution_server", + "default": null, + "deprecated_message": null, + "display_args": [ + "--remote-execution-server=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_SERVER", + "help": "host:port of grpc server to use as remote execution scheduler.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-server" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-connection-limit=", + "config_key": "remote_store_connection_limit", + "default": 5, + "deprecated_message": null, + "display_args": [ + "--remote-store-connection-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_CONNECTION_LIMIT", + "help": "Number of remote stores to concurrently allow connections to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-connection-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-connection-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-initial-timeout=", + "config_key": "remote_store_initial_timeout", + "default": 10, + "deprecated_message": null, + "display_args": [ + "--remote-store-initial-timeout=" + ], + "env_var": "PANTS_REMOTE_STORE_INITIAL_TIMEOUT", + "help": "Initial timeout (in milliseconds) when there is a failure in accessing a remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-initial-timeout" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-initial-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 10 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-timeout-multiplier=", + "config_key": "remote_store_timeout_multiplier", + "default": 2.0, + "deprecated_message": null, + "display_args": [ + "--remote-store-timeout-multiplier=" + ], + "env_var": "PANTS_REMOTE_STORE_TIMEOUT_MULTIPLIER", + "help": "Multiplier used to increase the timeout (starting with value of --remote-store-initial-timeout) between retry attempts in accessing a remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-timeout-multiplier" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--remote-store-timeout-multiplier" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-maximum-timeout=", + "config_key": "remote_store_maximum_timeout", + "default": 10, + "deprecated_message": null, + "display_args": [ + "--remote-store-maximum-timeout=" + ], + "env_var": "PANTS_REMOTE_STORE_MAXIMUM_TIMEOUT", + "help": "Maximum timeout (in millseconds) to allow between retry attempts in accessing a remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-maximum-timeout" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-maximum-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 10 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote execution instance to use. Used for routing within --remote-execution-server and --remote-store-server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to --remote-execution-server and --remote-store-server. If not specified, TLS will not be used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for grpc connections to --remote-execution-server and --remote-store-server. If not specified, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": {}, + "deprecated_message": null, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants itself may add additional headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets. This only sets the naming scheme, not the directory paths to look for. To add ignorepatterns, use the option `--build-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files. This does not affect any other filesystem operations; use `--pants-ignore` for that instead. Patterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 10.0, + "deprecated_message": null, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 10.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-handlers=\"['', '', ...]\"", + "config_key": "streaming_workunits_handlers", + "default": [], + "deprecated_message": null, + "display_args": [ + "--streaming-workunits-handlers=\"['', '', ...]\"" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_HANDLERS", + "help": "Use this option to name Subsystems which will receive streaming workunit events. For instance, `--streaming-workunits-handlers=\"['pants.reporting.workunit.Workunits']\"` will register a Subsystem called Workunits defined in the module \"pants.reporting.workunit\".", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-handlers" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--streaming-workunits-handlers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants run use color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line,from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected. Alpha feature.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-distdir-legacy-paths", + "config_key": "pants_distdir_legacy_paths", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.2.0.dev0", + "display_args": [ + "--[no-]pants-distdir-legacy-paths" + ], + "env_var": "PANTS_DISTDIR_LEGACY_PATHS", + "help": "If true, will write paths for artifacts built with `./pants package` using only the target name, which may be ambiguous and result in overwriting unrelated artifacts. Otherwise, will use the target's address, e.g. `src.python.project/app.pex`, rather than `app.pex`. Use the field `output_path` to override these default values.", + "removal_hint": "The pre-2.0 naming scheme for artifacts built with `./pants package` is being removed because it often resulted in ambiguity and overwriting other artifacts. Use the field `output_path` on each `pex_binary`, `python_awslambda`, and `archive` target where you would like to avoid the default.", + "removal_version": "2.2.0.dev0", + "scoped_cmd_line_args": [ + "--pants-distdir-legacy-paths", + "--no-pants-distdir-legacy-paths" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-distdir-legacy-paths", + "--no-pants-distdir-legacy-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-process-cache-namespace=", + "config_key": "remote_execution_process_cache_namespace", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.2.0.dev0", + "display_args": [ + "--remote-execution-process-cache-namespace=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_PROCESS_CACHE_NAMESPACE", + "help": "The cache namespace for remote process execution. Bump this to invalidate every artifact's remote execution. This is the remote execution equivalent of the legacy cache-key-gen-version flag.", + "removal_hint": "Use the `--process-execution-cache-namespace` option instead.", + "removal_version": "2.2.0.dev0", + "scoped_cmd_line_args": [ + "--remote-execution-process-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-process-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.6.2,<1.7", + "deprecated_message": null, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.6.2,<1.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45", + "stevedore<3" + ], + "deprecated_message": null, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45", + "stevedore<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": "bandit", + "deprecated_message": null, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==20.8b1", + "deprecated_message": null, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==20.8b1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": "black:patched_main", + "deprecated_message": null, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black:patched_main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to Black's pyproject.toml config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "description": "Tell Pants to detect what files and targets have changed from Git.", + "is_goal": false, + "scope": "changed" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage>=5.0.3,<5.1", + "deprecated_message": null, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage>=5.0.3,<5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": "coverage", + "deprecated_message": null, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to `.coveragerc` or alternative coverage config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules to use in the coverage report, e.g. `['helloworld_test', 'helloworld.util.dirutil']. The modules are recursive: any submodules will be included. If you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees, instead of only direct dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "text", + "json" + ], + "comma_separated_choices": "text, json", + "comma_separated_display_args": "--dependees-output-format=", + "config_key": "output_format", + "default": "text", + "deprecated_message": null, + "display_args": [ + "--dependees-output-format=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FORMAT", + "help": "Use `text` for a flattened list of target addresses; use `json` for each key to be the address of one of the specified targets, with its value being a list of that target's dependees, e.g. `{':example': [':dep1', ':dep2']}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-format" + ], + "typ": "DependeesOutputFormat", + "unscoped_cmd_line_args": [ + "--output-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "text" + } + ] + } + } + ], + "deprecated": [], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "source", + "3rdparty", + "source-and-3rdparty" + ], + "comma_separated_choices": "source, 3rdparty, source-and-3rdparty", + "comma_separated_display_args": "--dependencies-type=", + "config_key": "type", + "default": "source", + "deprecated_message": null, + "display_args": [ + "--dependencies-type=" + ], + "env_var": "PANTS_DEPENDENCIES_TYPE", + "help": "Which types of dependencies to list, where `source` means source code dependencies and `3rdparty` means third-party requirement strings.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-type" + ], + "typ": "DependencyType", + "unscoped_cmd_line_args": [ + "--type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "source" + } + ] + } + } + ], + "deprecated": [], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.3.1,<1.4", + "deprecated_message": null, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.3.1,<1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": "docformatter:main", + "deprecated_message": null, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter:main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython==2.7.*", + "CPython>=3.4,<3.9" + ], + "deprecated_message": null, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython==2.7.*", + "CPython>=3.4,<3.9" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.24", + "deprecated_message": null, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.24" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.24|darwin|561da5a7c76a8a88567a306fa60dfcb5c6924bb71c18b892080d5c2b3eea7133|2936466", + "v2.1.24|linux|561da5a7c76a8a88567a306fa60dfcb5c6924bb71c18b892080d5c2b3eea7133|2936466" + ], + "deprecated_message": null, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.24|darwin|561da5a7c76a8a88567a306fa60dfcb5c6924bb71c18b892080d5c2b3eea7133|2936466", + "v2.1.24|linux|561da5a7c76a8a88567a306fa60dfcb5c6924bb71c18b892080d5c2b3eea7133|2936466" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies. Use `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool. In --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary. For example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_library`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Filter the input targets based on various criteria.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.7.9,<3.9", + "deprecated_message": null, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.7.9,<3.9" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45" + ], + "deprecated_message": null, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": "flake8", + "deprecated_message": null, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to `.flake8` or alternative Flake8 config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "grpc_python_plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "display_args": [ + "--grpc_python_plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "display_args": [ + "--grpc_python_plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin", + "deprecated_message": null, + "display_args": [ + "--grpc_python_plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies. Use `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "macos", + "linux": "linux" + }, + "deprecated_message": null, + "display_args": [ + "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool. In --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary. For example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "macos", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The grpc protobuf plugin for python.", + "is_goal": false, + "scope": "grpc_python_plugin" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": "IPython:start_ipython", + "deprecated_message": null, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "IPython:start_ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path. Normally you want this to be True, so that imports come from the hermetic environment Pants creates. However IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject]>=5.5.1,<5.6", + "deprecated_message": null, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject]>=5.5.1,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": "isort.main", + "deprecated_message": null, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort.main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to `isort.cfg` or alternative isort config file(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://timothycrosley.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.3", + "deprecated_message": null, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools>=50.3.0,<50.4" + ], + "deprecated_message": null, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools>=50.3.0,<50.4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": "lambdex.bin.lambdex", + "deprecated_message": null, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex.bin.lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.5" + ], + "deprecated_message": null, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.5" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into AWS Lambdas (https://github.com/wickman/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process. Why do this? You'll get many more cache hits. Why not do this? Linters 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-reports-dir=", + "config_key": "reports_dir", + "default": null, + "deprecated_message": null, + "display_args": [ + "--lint-reports-dir=" + ], + "env_var": "PANTS_LINT_REPORTS_DIR", + "help": "Specifying a directory causes linters that support writing report files to write into this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-reports-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--reports-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-provides", + "config_key": "provides", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]list-provides" + ], + "env_var": "PANTS_LIST_PROVIDES", + "help": "List only targets that provide an artifact, displaying the columns specified by --provides-columns.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-provides", + "--no-list-provides" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--provides", + "--no-provides" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.782", + "deprecated_message": null, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.782" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": "mypy", + "deprecated_message": null, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to `mypy.ini` or alternative MyPy config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `mypy_source_plugin` target addresses. This allows you to load custom plugins defined in source code. Run `./pants help mypy_source_plugin` for instructions, including how to load third-party plugins.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns. The special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": [ + "python", + "python3", + "python2" + ], + "deprecated_message": null, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with. This does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python-setup]` to influence where interpreters are searched for.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-bootstrap-interpreter-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--bootstrap-interpreter-names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3", + "python2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default. Can be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ], + "deprecated_message": null, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip", + "deprecated_message": null, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies. Use `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "osx", + "linux": "linux" + }, + "deprecated_message": null, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool. In --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary. For example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "osx", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.4.4,<2.5", + "deprecated_message": null, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.4.4,<2.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": "pylint", + "deprecated_message": null, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to `pylintrc` or alternative Pylint config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `pylint_source_plugin` target addresses. This allows you to load custom plugins defined in source code. Run `./pants help pylint_source_plugin` for instructions, including how to load third-party plugins.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The PyLint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.0.1,<6.1", + "deprecated_message": null, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for Pytest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.0.1,<6.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-pytest-plugins=\"['', '', ...]\"", + "config_key": "pytest_plugins", + "default": [ + "pytest-cov>=2.10.1,<2.11", + "zipp==2.1.0" + ], + "deprecated_message": null, + "display_args": [ + "--pytest-pytest-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_PYTEST_PLUGINS", + "help": "Requirement strings for any plugins or additional requirements you'd like to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-pytest-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pytest-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.10.1,<2.11", + "zipp==2.1.0" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-xml-dir=", + "config_key": "junit_xml_dir", + "default": null, + "deprecated_message": null, + "display_args": [ + "--pytest-junit-xml-dir=" + ], + "env_var": "PANTS_PYTEST_JUNIT_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of the generated XML file. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any __init__.py files existing for the packages it is located in (recursively upward in the directory structure). Even if this is disabled, Pants will still include any ancestor __init__.py files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used. If you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-version=", + "config_key": "mypy_plugin_version", + "default": "mypy-protobuf==1.23", + "deprecated_message": null, + "display_args": [ + "--python-protobuf-mypy-plugin-version=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_VERSION", + "help": "The pip-style requirement string for `mypy-protobuf`. You must still set `--mypy-plugin` for this option to be used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--mypy-plugin-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==1.23" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with. Specify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together. These constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements, use this constraints file to determine which versions to use. See https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "never", + "nondeployables", + "always" + ], + "comma_separated_choices": "never, nondeployables, always", + "comma_separated_display_args": "--python-setup-resolve-all-constraints=", + "config_key": "resolve_all_constraints", + "default": "nondeployables", + "deprecated_message": null, + "display_args": [ + "--python-setup-resolve-all-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If set, and the requirements of the code being operated on are a subset of the constraints file, then the entire constraints file will be used instead of the subset. If unset, or any requirement of the code being operated on is not in the constraints file, each subset will be independently resolved as needed, which is more correct - work is only invalidated if a requirement it actually depends on changes - but also a lot slower, due to the extra resolving. \n\n* `never` will always use proper subsets, regardless of the goal being run.\n* `nondeployables` will use proper subsets for `./pants package`, but otherwise attempt to use a single resolve.\n* `always` will always attempt to use a single resolve.\n\nRequires [python-setup].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolve-all-constraints" + ], + "typ": "ResolveAllConstraintsOption", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nondeployables" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": null, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints. You can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter. The following special strings are supported:\n\n* \"\", the contents of the PATH env var\n* \"\", all Python versions under $(pyenv root)/versions\n* \"\", the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* \"\", paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "display_args": [ + "--python-setup-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": 32, + "deprecated_message": null, + "display_args": [ + "--python-setup-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with. Because Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-setup-resolver-jobs`. Setting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-http-cache-ttl=", + "config_key": "resolver_http_cache_ttl", + "default": 3600, + "deprecated_message": null, + "display_args": [ + "--python-setup-resolver-http-cache-ttl=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_HTTP_CACHE_TTL", + "help": "The maximum time (in seconds) for items in the HTTP cache. When the cache expires,the PEX resolver will make network requests to see if new versions of your requirements are available.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-http-cache-ttl" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-http-cache-ttl" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A Python environment.", + "is_goal": false, + "scope": "python-setup" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.", + "is_goal": true, + "scope": "run" + }, + "run-tracker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-stats-local-json-file=", + "config_key": "stats_local_json_file", + "default": null, + "deprecated_message": null, + "display_args": [ + "--run-tracker-stats-local-json-file=" + ], + "env_var": "PANTS_RUN_TRACKER_STATS_LOCAL_JSON_FILE", + "help": "Write stats to this local json file on run completion.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-tracker-stats-local-json-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--stats-local-json-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-stats-option-scopes-to-record=\"['', '', ...]\"", + "config_key": "stats_option_scopes_to_record", + "default": [], + "deprecated_message": null, + "display_args": [ + "--run-tracker-stats-option-scopes-to-record=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUN_TRACKER_STATS_OPTION_SCOPES_TO_RECORD", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-tracker-stats-option-scopes-to-record" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-option-scopes-to-record" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Tracks and times the execution of a pants run.", + "is_goal": false, + "scope": "run-tracker" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "2.12.0", + "deprecated_message": null, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.12.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ], + "deprecated_message": null, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip", + "deprecated_message": null, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies. Use `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + }, + "deprecated_message": null, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool. In --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary. For example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<50.4", + "deprecated_message": null, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<50.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel==0.35.1" + ], + "deprecated_message": null, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel==0.35.1" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "display_args": [ + "--setuptools-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.5" + ], + "deprecated_message": null, + "display_args": [ + "--setuptools-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.5" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The Python setuptools library (https://github.com/pypa/setuptools).", + "is_goal": false, + "scope": "setuptools" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py" + ], + "deprecated_message": null, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "\nConfig schema is as follows:\n\n{\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ],\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n }\n}\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nEach ENV_VAR must be one of `LANG`, `LC_CTYPE`, `LC_ALL`, `http_proxy`, `https_proxy`, `ftp_proxy`, `all_proxy`, `no_proxy`, `HTTP_PROXY`, `HTTPS_PROXY`, `FTP_PROXY`, `ALL_PROXY`, `NO_PROXY`, `REQUESTS_CA_BUNDLE`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checkers.", + "is_goal": true, + "scope": "typecheck" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + } + } +} diff --git a/versioned_docs/version-2.10.x/reference/help-all.json b/versioned_docs/version-2.10.x/reference/help-all.json new file mode 100644 index 000000000..c4f73aa7a --- /dev/null +++ b/versioned_docs/version-2.10.x/reference/help-all.json @@ -0,0 +1,31534 @@ +{ + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "", + "check" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Run server for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": [ + "" + ], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": [ + "" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.backend.docker" + }, + "filedeps": { + "consumed_scopes": [ + "", + "filedeps" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter", + "provider": "pants.backend.project_info" + }, + "fmt": { + "consumed_scopes": [ + "", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "generate-lockfiles" + ], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "generate-user-lockfile": { + "consumed_scopes": [], + "description": "Deprecated: use the option `[python].resolves` and the `generate-lockfiles` goal instead", + "is_implemented": true, + "name": "generate-user-lockfile", + "provider": "pants.backend.experimental.python" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": [ + "", + "lint" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": [ + "" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": [ + "", + "paths" + ], + "description": "List the paths between two addresses.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": [ + "", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": [ + "", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": [ + "", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.10/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "validate": { + "consumed_scopes": [ + "", + "regex-lint", + "validate" + ], + "description": "Deprecated: to use, set `[regex-lint].config` and run with the `lint` goal", + "is_implemented": true, + "name": "validate", + "provider": "pants.backend.project_info" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )\n", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "Any tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.10/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [docker].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. \"/\".\n\nIt uses the `[docker].default_repository` by default.\n\nrepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory` and `parent_directory`.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nlabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )\n", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: default|[=|[,]])\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this image to registries when running `./pants publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_run_shell_command": { + "alias": "experimental_run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n experimental_run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `experimental_shell_command`, in addition to `workdir` you only have the `command` and `dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the current working directory of the command, relative to the project root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "experimental_shell_command": { + "alias": "experimental_shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n experimental_shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n dependencies=[\":scripts\"],\n outputs=[\"results/\", \"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output from the command logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "outputs", + "default": null, + "description": "Specify the shell command output files and directories.\n\nUse a trailing slash on directory names, i.e. `my_dir/`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": null, + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `file` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go', '*.s')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) when running this package's tests.\n\nIf this field is not set, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": true, + "type_hint": "str" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The set of resolves from `[jvm].resolves` that this target is compatible with.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The set of resolves from `[jvm].resolves` that this target is compatible with.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `compatible_resolves` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The resolves from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` then declare which resolve(s) they use via the `resolve` and `compatible_resolves` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve(s) used by that code.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants. The generated targets will have the correct version based on the `version` in your `pants.toml`, and they will work with dependency inference.\n\nBecause the Plugin API is not yet stable, the version is set automatically for you to improve stability. If you're currently using a dev release, the version will be set to that exact dev release. If you're using a release candidate (rc) or stable release, the version will allow any non-dev-release release within the release series, e.g. `>=2.10.0rc0,<2.11`.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g.,\"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n}\n```\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same entry_point in multiple keys, so long as you don't override the same field more than one time for the entry_point.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.10/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g.,\"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee https://www.pantsbuild.org/v2.10/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `protobuf_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.proto\": {\"grpc\": True]},\n \"bar.proto\": {\"description\": \"our user model\"]},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.10/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the `name` of the `pyoxidizer_target`. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by $ or surrounded with ${ }.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted entry_point passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or []).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets filesystem_resources.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.10/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.10/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: 'path.to.module'.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.10/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the Pex. This is most useful with Lambda Layers to make code uploads smaller when deps are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.10/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\nExample:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n ./pants dependencies \n\n", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.10/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing setup.py, setup.cfg, pyproject.toml files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-google-cloud-function.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'cloud_function.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.", + "provider": "", + "required": false, + "type_hint": "'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be 'event' or 'http'. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to --trigger-http.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style file.\n\nThis works with pip-style requirements files: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nInstead of pip-style VCS requirements, use direct references from PEP 440: https://www.python.org/dev/peps/pep-0440/#direct-references.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style file." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.10/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.py\": {\"timeout\": 120]},\n \"bar_test.py\": {\"timeout\": 200]},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `resource` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The set of resolves from `[jvm].resolves` that this target is compatible with.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The set of resolves from `[jvm].resolves` that this target is compatible with.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala')).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala'))." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shell_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shunit2_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.sh\": {\"timeout\": 120]},\n \"bar_test.sh\": {\"timeout\": 200]},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee https://www.pantsbuild.org/v2.10/docs/thrift.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.10/docs/targets#target-addresses and https://www.pantsbuild.org/v2.10/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `thrift_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + } + }, + "rule_output_type_to_rule_infos": { + "AddressToDependees": [ + { + "description": "Map all targets to their dependees", + "help": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.project_info.dependees.map_addresses_to_dependees", + "output_desc": "AddressToDependees(mapping: pants.util.frozendict.FrozenDict[pants.build_graph.address.Address, pants.util.ordered_set.FrozenOrderedSet[pants.build_graph.address.Address]])", + "output_type": "AddressToDependees", + "provider": "pants.backend.project_info" + } + ], + "AllGoTargets": [ + { + "description": "Find all Go targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.find_all_go_targets", + "output_desc": null, + "output_type": "AllGoTargets", + "provider": "pants.backend.experimental.go" + } + ], + "AllJavaTargets": [ + { + "description": "Find all Java targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_desc": null, + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + } + ], + "AllJvmArtifactTargets": [ + { + "description": "Find all jvm_artifact targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_desc": null, + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + } + ], + "AllJvmTypeProvidingTargets": [ + { + "description": "Find all targets with experimental_provides fields in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_desc": null, + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + } + ], + "AllOwnedSources": [ + { + "description": "Determine all files already owned by targets", + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_desc": "All files in the project already owned by targets.", + "output_type": "AllOwnedSources", + "provider": "pants.core" + } + ], + "AllProtobufTargets": [ + { + "description": "Find all Protobuf targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_desc": null, + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "AllPytestPluginSetups": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": [ + "AllPytestPluginSetupsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_desc": null, + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + } + ], + "AllPythonTargets": [ + { + "description": "Find all Python targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_desc": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + } + ], + "AllScalaTargets": [ + { + "description": "Find all Scala targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_desc": null, + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + } + ], + "AllShellTargets": [ + { + "description": "Find all Shell targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_desc": null, + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + } + ], + "AllSourceRoots": [ + { + "description": "Compute all source roots", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootConfig" + ], + "name": "pants.source.source_root.all_roots", + "output_desc": null, + "output_type": "AllSourceRoots", + "provider": "pants.core" + } + ], + "AllThirdPartyPackages": [ + { + "description": "Download and analyze all third-party Go packages", + "help": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": [ + "AllThirdPartyPackagesRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_desc": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + } + ], + "AllThriftTargets": [ + { + "description": "Find all Thrift targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_desc": null, + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "AnalyzedThirdPartyModule": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyModuleRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_desc": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + } + ], + "AncestorFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "AncestorFilesRequest" + ], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_desc": "Any ancestor files found.", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + } + ], + "AnonymousTelemetry": [ + { + "description": null, + "help": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_desc": null, + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + } + ], + "ApacheThriftSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_desc": "ApacheThriftSetup(path: 'str')", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ApacheThriftSubsystem": [ + { + "description": null, + "help": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_desc": null, + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ArtifactRequirements": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "GatherJvmCoordinatesRequest" + ], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_desc": "An ordered list of Coordinates used as requirements.", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + } + ], + "AssemblyPostCompilation": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPostCompilationRequest" + ], + "name": "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "output_desc": "AssemblyPostCompilation(result: 'FallibleProcessResult', merged_output_digest: 'Digest | None')", + "output_type": "AssemblyPostCompilation", + "provider": "pants.backend.experimental.go" + } + ], + "Autoflake": [ + { + "description": null, + "help": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_autoflake", + "output_desc": null, + "output_type": "Autoflake", + "provider": "pants.backend.experimental.python.lint.autoflake" + } + ], + "AvailableThirdPartyArtifacts": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_desc": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + } + ], + "Bandit": [ + { + "description": null, + "help": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_bandit", + "output_desc": null, + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + } + ], + "BashBinary": [ + { + "description": "Finding the `bash` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "BashBinaryRequest" + ], + "name": "pants.engine.process.find_bash", + "output_desc": "The `bash` binary.", + "output_type": "BashBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.engine.process.get_bash", + "output_desc": "The `bash` binary.", + "output_type": "BashBinary", + "provider": "pants.core" + } + ], + "BinaryPaths": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryPathRequest" + ], + "name": "pants.engine.process.find_binary", + "output_desc": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "output_type": "BinaryPaths", + "provider": "pants.core" + } + ], + "Black": [ + { + "description": null, + "help": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_black", + "output_desc": null, + "output_type": "Black", + "provider": "pants.core" + } + ], + "BuildGoPackageRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "FallibleBuildGoPackageRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_desc": null, + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + } + ], + "BuildPexResult": [ + { + "description": null, + "help": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexCliProcess, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PexRequest", + "PythonSetup", + "PythonRepos", + "Platform", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_desc": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "output_type": "BuildPexResult", + "provider": "pants.core" + } + ], + "BuildSystem": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "BuildSystemRequest", + "Setuptools" + ], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_desc": "A PEP 517/518 build system configuration.", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + } + ], + "BuiltGoPackage": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "FallibleBuiltGoPackage" + ], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_desc": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + } + ], + "BuiltPackage": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": [ + "ArchiveFieldSet" + ], + "name": "pants.core.target_types.package_archive_target", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + { + "description": "Create Python AWS Lambda", + "help": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonAwsLambdaFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.awslambda.python.rules.package_python_awslambda", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "ProcessCleanupOption" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + { + "description": "Package Go binary", + "help": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Producing a ZIP file containing _only_ the JAR manifest file for the `main_class`\n3. Creating a deploy jar with a broken ZIP index by concatenating all dependency JARs together,\n followed by the thin JAR we created\n4. Using the unix `zip` utility's repair function to fix the broken fat jar", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BashBinary", + "ZipBinary", + "DeployJarFieldSet" + ], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + { + "description": "Create Python Google Cloud Function", + "help": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonGoogleCloudFunctionFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(Pex, PexFromTargetsRequest, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup" + ], + "name": "pants.backend.python.goals.setup_py.package_python_dist", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + } + ], + "BuiltPackageDependencies": [ + { + "description": "Build runtime package dependencies for tests", + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "BuildPackageDependenciesRequest" + ], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_desc": null, + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + } + ], + "Check": [ + { + "description": "`check` goal", + "help": null, + "input_gets": [ + "Get(CheckResults, CheckRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Targets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_desc": null, + "output_type": "Check", + "provider": "pants.core" + } + ], + "CheckResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_desc": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "CheckResults": [ + { + "description": "Check Go compilation", + "help": null, + "input_gets": [ + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": [ + "GoCheckRequest" + ], + "name": "pants.backend.go.goals.check.check_go", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Check javac compilation", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "JavacCheckRequest", + "UnionMembership" + ], + "name": "pants.backend.java.goals.check.javac_check", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Check compilation for Scala", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ScalacCheckRequest", + "UnionMembership" + ], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Typecheck using MyPy", + "help": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "CheckSubsystem": [ + { + "description": null, + "help": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_check", + "output_desc": null, + "output_type": "CheckSubsystem", + "provider": "pants.core" + } + ], + "ChosenPythonResolve": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "ChosenPythonResolveRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_desc": "ChosenPythonResolve(name: 'str', lockfile_path: 'str')", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + } + ], + "Classpath": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "UnionMembership" + ], + "name": "pants.jvm.classpath.classpath", + "output_desc": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + } + ], + "ClasspathEntry": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "FallibleClasspathEntry" + ], + "name": "pants.jvm.compile.required_classfiles", + "output_desc": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "CoursierLockfileEntry" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_desc": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "ScalaLibraryRequest" + ], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_desc": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + } + ], + "CompletePlatforms": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "PexCompletePlatformsField" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_desc": null, + "output_type": "CompletePlatforms", + "provider": "pants.core" + } + ], + "ConfigFiles": [ + { + "description": "Find config files", + "help": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ConfigFilesRequest" + ], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_desc": "Config files used by a tool run by Pants.", + "output_type": "ConfigFiles", + "provider": "pants.core" + } + ], + "CountLinesOfCode": [ + { + "description": "`count-loc` goal", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsSnapshot" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_desc": null, + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + } + ], + "CountLinesOfCodeSubsystem": [ + { + "description": null, + "help": "Count lines of code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_count_loc", + "output_desc": null, + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Coursier": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBinary" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_desc": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierResolveInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_desc": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', digest: 'Digest')", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierResolveKey": [ + { + "description": null, + "help": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": [ + "Get(Digest, PathGlobs, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_desc": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierResolvedLockfile": [ + { + "description": null, + "help": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_desc": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "CoursierResolveKey" + ], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_desc": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierSubsystem": [ + { + "description": null, + "help": "A dependency resolver for the Maven ecosystem.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coursier", + "output_desc": null, + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "CoverageConfig": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_desc": "CoverageConfig(digest: 'Digest', path: 'str')", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + } + ], + "CoverageReports": [ + { + "description": "Generate Pytest coverage reports", + "help": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "ProcessCleanupOption" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_desc": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + } + ], + "CoverageSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_desc": "CoverageSetup(pex: 'VenvPex')", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + } + ], + "CoverageSubsystem": [ + { + "description": null, + "help": "Configuration for Python test coverage measurement.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_desc": null, + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + } + ], + "Dependees": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DependeesRequest", + "AddressToDependees" + ], + "name": "pants.backend.project_info.dependees.find_dependees", + "output_desc": null, + "output_type": "Dependees", + "provider": "pants.backend.project_info" + } + ], + "DependeesGoal": [ + { + "description": "`dependees` goal", + "help": null, + "input_gets": [ + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "DependeesSubsystem", + "Console" + ], + "name": "pants.backend.project_info.dependees.dependees_goal", + "output_desc": null, + "output_type": "DependeesGoal", + "provider": "pants.backend.project_info" + } + ], + "DependeesSubsystem": [ + { + "description": null, + "help": "List all targets that depend on any of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependees", + "output_desc": null, + "output_type": "DependeesSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Dependencies": [ + { + "description": "`dependencies` goal", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "Addresses", + "DependenciesSubsystem" + ], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_desc": null, + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + } + ], + "DependenciesSubsystem": [ + { + "description": null, + "help": "List the dependencies of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependencies", + "output_desc": null, + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Digest": [ + { + "description": "Creating an archive file", + "help": null, + "input_gets": [ + "Get(ZipBinary, _ZipBinaryRequest, ..)", + "Get(TarBinary, _TarBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CreateArchive" + ], + "name": "pants.core.util_rules.archive.create_archive", + "output_desc": null, + "output_type": "Digest", + "provider": "pants.core" + } + ], + "DisjointSourcePutativeTarget": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, AddressSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PutativeTarget" + ], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_desc": "Putative target whose sources don't overlap with those of any existing targets.", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + } + ], + "DistBuildChroot": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.generate_chroot", + "output_desc": "A chroot containing PEP 517 build setup and the sources it operates on.", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + } + ], + "DistBuildResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DistBuildRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_desc": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + } + ], + "DistBuildSources": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_sources", + "output_desc": "The sources required to build a distribution.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + } + ], + "DistDir": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GlobalOptions", + "BuildRoot" + ], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_desc": "The directory to which we write distributable files.", + "output_type": "DistDir", + "provider": "pants.core" + } + ], + "Docformatter": [ + { + "description": null, + "help": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docformatter", + "output_desc": null, + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + } + ], + "DockerBinary": [ + { + "description": "Finding the `docker` binary", + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "DockerBinaryRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_binary.find_docker", + "output_desc": "The `docker` binary.", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DockerBinary, DockerBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_desc": "The `docker` binary.", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + } + ], + "DockerBuildArgs": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DockerBuildArgsRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_desc": null, + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + } + ], + "DockerBuildContext": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "DockerBuildContextRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_desc": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', dockerfile: 'str', interpolation_context: 'DockerInterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + } + ], + "DockerBuildEnvironment": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_desc": "DockerBuildEnvironment(environment: 'Environment')", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + } + ], + "DockerOptions": [ + { + "description": null, + "help": "Options for interacting with Docker.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docker", + "output_desc": null, + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + } + ], + "DockerfileInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": [ + "DockerfileInfoRequest" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_desc": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', putative_target_addresses: 'tuple[str, ...]' = (), version_tags: 'tuple[str, ...]' = (), build_args: 'DockerBuildArgs' = DockerBuildArgs(), from_image_build_arg_names: 'tuple[str, ...]' = (), copy_sources: 'tuple[str, ...]' = ())", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + } + ], + "DockerfileParser": [ + { + "description": null, + "help": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_desc": null, + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + } + ], + "DownloadedExternalTool": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ExternalToolRequest" + ], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_desc": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + } + ], + "EditedBuildFiles": [ + { + "description": "Edit BUILD files with new targets", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "EditBuildFilesRequest", + "TailorSubsystem" + ], + "name": "pants.core.goals.tailor.edit_build_files", + "output_desc": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + } + ], + "Export": [ + { + "description": "`export` goal", + "help": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Console", + "Targets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir" + ], + "name": "pants.core.goals.export.export", + "output_desc": null, + "output_type": "Export", + "provider": "pants.core" + } + ], + "ExportCodegen": [ + { + "description": "`export-codegen` goal", + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Targets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_desc": null, + "output_type": "ExportCodegen", + "provider": "pants.backend.docker" + } + ], + "ExportCodegenSubsystem": [ + { + "description": null, + "help": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_desc": null, + "output_type": "ExportCodegenSubsystem", + "provider": "pants.backend.docker" + } + ], + "ExportResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, RequirementsPexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "_ExportVenvRequest", + "PythonSetup", + "PexEnvironment" + ], + "name": "pants.backend.python.goals.export.export_virtualenv", + "output_desc": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), symlinks: 'Iterable[Symlink]' = ())", + "output_type": "ExportResult", + "provider": "pants.backend.python" + } + ], + "ExportResults": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ExportResult, _ExportVenvRequest, ..)" + ], + "input_types": [ + "ExportVenvsRequest", + "PythonSetup", + "DistDir" + ], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_desc": null, + "output_type": "ExportResults", + "provider": "pants.backend.python" + } + ], + "ExportSubsystem": [ + { + "description": null, + "help": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export", + "output_desc": null, + "output_type": "ExportSubsystem", + "provider": "pants.core" + } + ], + "ExportedTarget": [ + { + "description": "Get exporting owner for target", + "help": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, AddressSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "OwnedDependency" + ], + "name": "pants.backend.python.goals.setup_py.get_exporting_owner", + "output_desc": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + } + ], + "ExportedTargetRequirements": [ + { + "description": "Compute distribution's 3rd party requirements", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.get_requirements", + "output_desc": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + } + ], + "ExtractedArchive": [ + { + "description": "Extracting an archive file", + "help": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary, _UnzipBinaryRequest, ..)", + "Get(TarBinary, _TarBinaryRequest, ..)", + "Get(Gunzip, _GunzipRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Digest" + ], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_desc": "The result of extracting an archive.", + "output_type": "ExtractedArchive", + "provider": "pants.core" + } + ], + "FallibleAssemblyPreCompilation": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPreCompilationRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "output_desc": "FallibleAssemblyPreCompilation(result: 'AssemblyPreCompilation | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleAssemblyPreCompilation", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleBuildGoPackageRequest": [ + { + "description": "Set up Go compilation request", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(UnexpandedTargets, DependenciesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_desc": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleBuiltGoPackage": [ + { + "description": "Compile with Go", + "help": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(FallibleAssemblyPreCompilation, AssemblyPreCompilationRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(AssemblyPostCompilation, AssemblyPostCompilationRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BuildGoPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_desc": "Fallible version of `BuiltGoPackage` with error details.", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleClasspathEntry": [ + { + "description": "Compile with javac", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BashBinary", + "JdkSetup", + "JavacSubsystem", + "ZipBinary", + "UnionMembership", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Fetch with coursier", + "help": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierFetchRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "DeployJarClasspathEntryRequest", + "UnionMembership" + ], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Fetch with coursier", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "UnionMembership", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Compile with scalac", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)", + "Get(ClasspathEntry, ScalaLibraryRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "Scalac", + "GlobalScalacPlugins", + "UnionMembership", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + } + ], + "FallibleFirstPartyPkgAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgAnalysisRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_desc": "Metadata for a Go package, but fallible if our analysis failed.", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleFirstPartyPkgDigest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgDigestRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_desc": "The source files for a Go package, but fallible if embed preparation failed.", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleJavaSourceDependencyAnalysisResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_desc": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + } + ], + "FallibleScalaSourceDependencyAnalysisResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "ScalaParserCompiledClassfiles", + "SourceFiles" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_desc": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + } + ], + "FallibleThirdPartyPkgAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyPackageRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_desc": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + } + ], + "FileDigest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "ExtractFileDigest" + ], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_desc": null, + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + } + ], + "Filedeps": [ + { + "description": "`filedeps` goal", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, Address, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "Console", + "FiledepsSubsystem", + "BuildRoot", + "Addresses" + ], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_desc": null, + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + } + ], + "FiledepsSubsystem": [ + { + "description": null, + "help": "List all source and BUILD files a target depends on.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filedeps", + "output_desc": null, + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + } + ], + "FilterGoal": [ + { + "description": "`filter` goal", + "help": null, + "input_gets": [], + "input_types": [ + "UnexpandedTargets", + "FilterSubsystem", + "Console", + "RegisteredTargetTypes" + ], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_desc": null, + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + } + ], + "FilterSubsystem": [ + { + "description": null, + "help": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filter", + "output_desc": null, + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + } + ], + "FinalizedSetupKwargs": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.generate_setup_py_kwargs", + "output_desc": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + } + ], + "FirstPartyPkgImportPath": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": [ + "FirstPartyPkgImportPathRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_desc": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + } + ], + "FirstPartyPythonMappingImpl": [ + { + "description": "Creating map of first party Python targets to Python modules", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_desc": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + { + "description": "Creating map of Protobuf targets to generated Python modules", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_desc": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Creating map of Thrift targets to generated Python modules", + "help": null, + "input_gets": [ + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_desc": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "FirstPartyPythonModuleMapping": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_desc": "A merged mapping of each resolve name to the first-party module names contained and their\nowning addresses.\n\nThis mapping may have been constructed from multiple distinct implementations, e.g.\nimplementations for each codegen backends.", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + } + ], + "FirstPartySymbolMapping": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SymbolMap, FirstPartyMappingRequest, ..)" + ], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_first_party_module_mappings", + "output_desc": "A merged mapping of package names to owning addresses.", + "output_type": "FirstPartySymbolMapping", + "provider": "pants.backend.experimental.java" + } + ], + "Flake8": [ + { + "description": null, + "help": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_flake8", + "output_desc": null, + "output_type": "Flake8", + "provider": "pants.backend.python" + } + ], + "Flake8FirstPartyPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Flake8" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_desc": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + } + ], + "Fmt": [ + { + "description": "`fmt` goal", + "help": null, + "input_gets": [ + "Get(_LanguageFmtResults, _LanguageFmtRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Console", + "Targets", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_desc": null, + "output_type": "Fmt", + "provider": "pants.core" + } + ], + "FmtResult": [ + { + "description": "Format with gofmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GofmtRequest", + "GofmtSubsystem" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Format with Google Java Format", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "GoogleJavaFormatRequest", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": "Format with Autoflake", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "AutoflakeRequest", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": "Format with pyupgrade", + "help": null, + "input_gets": [], + "input_types": [ + "PyUpgradeResult", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + { + "description": "Format with scalafmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalafmtRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + { + "description": "Format with Black", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BlackRequest", + "Black" + ], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.black" + }, + { + "description": "Format with docformatter", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "DocformatterRequest", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": "Format with isort", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "IsortRequest", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": "Format with yapf", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "YapfRequest", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": "Format with shfmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ShfmtRequest", + "Shfmt" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "FmtSubsystem": [ + { + "description": null, + "help": "Autoformat source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fmt", + "output_desc": null, + "output_type": "FmtSubsystem", + "provider": "pants.core" + } + ], + "GenerateJvmLockfile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": [ + "GenerateJvmLockfileFromTool" + ], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_desc": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', artifacts: 'ArtifactRequirements')", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + } + ], + "GenerateJvmLockfileFromTool": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "JunitToolLockfileSentinel", + "JUnit" + ], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GlobalScalacPluginsToolLockfileSentinel", + "_LoadedGlobalScalacPlugins", + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.generate_global_scalac_plugins_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalatestToolLockfileSentinel", + "Scalatest" + ], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalafmtToolLockfileSentinel", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "GenerateLockfileResult": [ + { + "description": "Generate Python lockfile", + "help": null, + "input_gets": [ + "Get(ProcessResult, PexCliProcess, ..)", + "Get(MaybeWarnPythonRepos, MaybeWarnPythonReposRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "PoetrySubsystem", + "GenerateLockfilesSubsystem", + "PythonRepos", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_desc": "The result of generating a lockfile for a particular resolve.", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.docker" + }, + { + "description": "Generate JVM lockfile", + "help": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_desc": "The result of generating a lockfile for a particular resolve.", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + } + ], + "GenerateLockfilesGoal": [ + { + "description": "`generate-lockfiles` goal", + "help": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, RequestedUserResolveNames, ..)", + "Get(WrappedGenerateLockfile, GenerateToolLockfileSentinel, ..)", + "Get(GenerateLockfileResult, GenerateLockfile, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_desc": null, + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + } + ], + "GenerateLockfilesSubsystem": [ + { + "description": null, + "help": "Generate lockfiles for Python third-party dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_desc": null, + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + } + ], + "GeneratePythonLockfile": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "LambdexLockfileSentinel", + "Lambdex" + ], + "name": "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "MypyProtobufLockfileSentinel", + "PythonProtobufMypyPlugin" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DockerfileParserLockfileSentinel", + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "TwineLockfileSentinel", + "TwineSubsystem" + ], + "name": "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AutoflakeLockfileSentinel", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PyUpgradeLockfileSentinel", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "CoveragePyLockfileSentinel", + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by iPython in your project (for lockfile usage)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "IPythonLockfileSentinel", + "IPython", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by Pytest in your project (for lockfile usage)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "PytestLockfileSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by setuptools in your project", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "SetuptoolsLockfileSentinel", + "Setuptools", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by Bandit in your project (for lockfile usage)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditLockfileSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": "Determine if Black should use Python 3.8+ (for lockfile usage)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackLockfileSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.black" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DocformatterLockfileSentinel", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for lockfile usage)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8LockfileSentinel", + "Flake8FirstPartyPlugins", + "Flake8", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "IsortLockfileSentinel", + "Isort" + ], + "name": "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": "Determine all Python interpreter versions used by Pylint in your project (for lockfile usage)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "PylintLockfileSentinel", + "PylintFirstPartyPlugins", + "Pylint", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pylint" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "YapfLockfileSentinel", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": "Determine if MyPy should use Python 3.8+ (for lockfile usage)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "MyPyLockfileSentinel", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool' = False)", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "GenerateUserLockfileGoal": [ + { + "description": "`generate-user-lockfile` goal", + "help": null, + "input_gets": [], + "input_types": [], + "name": "pants.backend.experimental.python.user_lockfiles.generate_user_lockfile_goal", + "output_desc": null, + "output_type": "GenerateUserLockfileGoal", + "provider": "pants.backend.experimental.python" + } + ], + "GenerateUserLockfileSubsystem": [ + { + "description": null, + "help": "Deprecated: use the option `[python].resolves` and the `generate-lockfiles` goal instead", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_user_lockfile", + "output_desc": null, + "output_type": "GenerateUserLockfileSubsystem", + "provider": "pants.backend.experimental.python" + } + ], + "GeneratedSetupPy": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.generate_setup_py", + "output_desc": "GeneratedSetupPy(digest: 'Digest')", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + } + ], + "GeneratedSources": [ + { + "description": "Relocating loose files for `relocated_files` targets", + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "RelocateFilesViaCodegenRequest" + ], + "name": "pants.core.target_types.relocate_files", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + { + "description": "Generate Python from Protobuf", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Generate Python from Thrift", + "help": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateDockerContextFiles" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateDockerfileRequest" + ], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + { + "description": "Running shell command", + "help": null, + "input_gets": [ + "Get(ProcessResult, ShellCommandProcessRequest, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "GenerateFilesFromShellCommandRequest" + ], + "name": "pants.backend.shell.shell_command.run_shell_command", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + } + ], + "GeneratedTargets": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "GenerateTargetsFromFiles", + "UnionMembership", + "FilesNotFoundBehavior" + ], + "name": "pants.core.target_types.generate_targets_from_files", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "GenerateTargetsFromResources", + "UnionMembership", + "FilesNotFoundBehavior" + ], + "name": "pants.core.target_types.generate_targets_from_resources", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "GenerateTargetsFromProtobufSources", + "FilesNotFoundBehavior", + "Protoc", + "UnionMembership" + ], + "name": "pants.backend.codegen.protobuf.target_types.generate_targets_from_protobuf_sources", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "GenerateTargetsFromThriftSources", + "FilesNotFoundBehavior", + "ThriftSubsystem", + "UnionMembership" + ], + "name": "pants.backend.codegen.thrift.target_types.generate_targets_from_thrift_sources", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "help": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromGoModRequest", + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromJunitTests", + "UnionMembership" + ], + "name": "pants.backend.java.target_types.generate_targets_from_junit_tests", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromJavaSources", + "UnionMembership" + ], + "name": "pants.backend.java.target_types.generate_targets_from_java_sources", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromScalatestTests", + "UnionMembership" + ], + "name": "pants.backend.scala.target_types.generate_targets_from_scala_scalatest_tests", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromScalaJunitTests", + "UnionMembership" + ], + "name": "pants.backend.scala.target_types.generate_targets_from_scala_junit_tests", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromScalaSources", + "UnionMembership" + ], + "name": "pants.backend.scala.target_types.generate_targets_from_scala_sources", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "GenerateTargetsFromPythonTests", + "FilesNotFoundBehavior", + "PythonInferSubsystem", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_python_tests", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "GenerateTargetsFromPythonSources", + "PythonInferSubsystem", + "FilesNotFoundBehavior", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_python_sources", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "GenerateTargetsFromPythonTestUtils", + "PythonInferSubsystem", + "FilesNotFoundBehavior", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_python_test_utils", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateTargetsFromPexBinaries", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "PythonSetup" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": "Generate `python_requirement` targets from requirements.txt", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "GenerateTargetsFromShunit2Tests", + "FilesNotFoundBehavior", + "ShellSetup", + "UnionMembership" + ], + "name": "pants.backend.shell.target_types.generate_targets_from_shunit2_tests", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.shell" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "GenerateTargetsFromShellSources", + "FilesNotFoundBehavior", + "ShellSetup", + "UnionMembership" + ], + "name": "pants.backend.shell.target_types.generate_targets_from_shell_sources", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.shell" + } + ], + "GeneratedTestMain": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GenerateTestMainRequest" + ], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_desc": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + } + ], + "GeneratedThriftSources": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "GenerateThriftSourcesRequest", + "ApacheThriftSetup" + ], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_desc": "GeneratedThriftSources(snapshot: 'Snapshot')", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "GlobalOptions": [ + { + "description": null, + "help": "Options to control the overall behavior of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_", + "output_desc": null, + "output_type": "GlobalOptions", + "provider": "pants.core" + } + ], + "GlobalRequirementConstraints": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_desc": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + } + ], + "GlobalScalacPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GlobalScalacPluginsToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "_LoadedGlobalScalacPlugins" + ], + "name": "pants.backend.scala.compile.scalac_plugins.global_scalac_plugins", + "output_desc": "GlobalScalacPlugins(names: 'tuple[str, ...]', classpath: 'ToolClasspath')", + "output_type": "GlobalScalacPlugins", + "provider": "pants.backend.experimental.scala" + } + ], + "GoBinaryMainPackage": [ + { + "description": "Determine first-party package used by `go_binary` target", + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)", + "Get(Targets, AddressSpecs, ..)", + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "GoBinaryMainPackageRequest" + ], + "name": "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary", + "output_desc": "GoBinaryMainPackage(address: 'Address')", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + } + ], + "GoCompileActionIdResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)" + ], + "input_types": [ + "GoCompileActionIdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_desc": "GoCompileActionIdResult(action_id: 'str')", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + } + ], + "GoModInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoModInfoRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_desc": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + } + ], + "GoRoot": [ + { + "description": "Find Go binary", + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GolangSubsystem" + ], + "name": "pants.backend.go.subsystems.golang.setup_goroot", + "output_desc": "Path to the Go installation (the `GOROOT`).", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + } + ], + "GoSdkRunSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_desc": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + } + ], + "GoSdkToolIDResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoSdkToolIDRequest" + ], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_desc": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + } + ], + "GoStdLibImports": [ + { + "description": "Determine Go std lib's imports", + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "output_desc": "A mapping of standard library import paths to the `.a` static file paths for that import\npath.\n\nFor example, \"net/smtp\": \"/absolute_path_to_goroot/pkg/darwin_arm64/net/smtp.a\".", + "output_type": "GoStdLibImports", + "provider": "pants.backend.experimental.go" + } + ], + "GoTestSubsystem": [ + { + "description": null, + "help": "Options for Go tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_test", + "output_desc": null, + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + } + ], + "GofmtSubsystem": [ + { + "description": null, + "help": "Gofmt-specific options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_gofmt", + "output_desc": null, + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + } + ], + "GolangSubsystem": [ + { + "description": null, + "help": "Options for Golang support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_golang", + "output_desc": null, + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + } + ], + "GoogleJavaFormatSubsystem": [ + { + "description": null, + "help": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_desc": null, + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + } + ], + "GrpcPythonPlugin": [ + { + "description": null, + "help": "The gRPC Protobuf plugin for Python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_desc": null, + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "Gunzip": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PythonBinary" + ], + "name": "pants.core.util_rules.archive.prepare_gunzip", + "output_desc": "Gunzip(python: 'PythonBinary')", + "output_type": "Gunzip", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "_GunzipRequest", + "Gunzip" + ], + "name": "pants.core.util_rules.archive.find_gunzip_wrapper", + "output_desc": "Gunzip(python: 'PythonBinary')", + "output_type": "Gunzip", + "provider": "pants.core" + } + ], + "Hadolint": [ + { + "description": null, + "help": "A linter for Dockerfiles.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_hadolint", + "output_desc": null, + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + } + ], + "IPython": [ + { + "description": null, + "help": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ipython", + "output_desc": null, + "output_type": "IPython", + "provider": "pants.backend.python" + } + ], + "ImportConfig": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ImportConfigRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.util_rules.import_analysis.generate_import_config", + "output_desc": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + } + ], + "ImportPathToPackages": [ + { + "description": "Map all Go targets to their import paths", + "help": null, + "input_gets": [ + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "AllGoTargets" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_desc": "ImportPathToPackages(mapping: 'FrozenDict[str, tuple[Address, ...]]')", + "output_type": "ImportPathToPackages", + "provider": "pants.backend.experimental.go" + } + ], + "InferredDependencies": [ + { + "description": "Inferring Python dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedPythonImports, ParsePythonImportsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_imports", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + { + "description": "Inferring Protobuf dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "InferProtobufDependencies", + "ProtobufMapping", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Inferring Thrift dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": "Infer dependencies for first-party Go packages", + "help": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoPackageDependenciesRequest", + "GoStdLibImports", + "ImportPathToPackages" + ], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Inferring Java dependencies by source analysis", + "help": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": [ + "InferJavaSourceDependencies" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Inferring Scala dependencies by analyzing sources", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "FirstPartySymbolMapping", + "ThirdPartyPackageToArtifactMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Inferring dependencies on `__init__.py` files", + "help": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + { + "description": "Inferring dependencies on `conftest.py` files", + "help": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + { + "description": "Inferring Shell dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": [ + "InferShellDependencies", + "ShellMapping", + "ShellSetup" + ], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + } + ], + "InitializeBuildResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "InitializeBuildParams" + ], + "name": "pants.bsp.rules.bsp_build_initialize", + "output_desc": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + } + ], + "InjectedDependencies": [ + { + "description": "Inferring dependency from the python_awslambda `handler` field", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonLambdaHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.awslambda.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "InjectPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "InjectApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": null, + "help": "Inspects COPY instructions in the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Addresses, AddressSpecs, ..)", + "Get(Targets, Addresses, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)" + ], + "input_types": [ + "InjectDockerDependencies" + ], + "name": "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.docker" + }, + { + "description": "Infer dependencies for third-party Go packages", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InjectGoThirdPartyPackageDependenciesRequest", + "GoStdLibImports", + "ImportPathToPackages" + ], + "name": "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "InjectGoBinaryMainDependencyRequest" + ], + "name": "pants.backend.go.target_type_rules.inject_go_binary_main_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Inferring dependency from the python_google_cloud_function `handler` field", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonCloudFunctionHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.google_cloud_function.python" + }, + { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": "Inject dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.inject_python_distribution_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.python" + } + ], + "InteractiveProcess": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "InteractiveProcessRequest" + ], + "name": "pants.engine.process.interactive_process_from_process", + "output_desc": "InteractiveProcess(argv: 'Iterable[str]', *, env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), run_in_workspace: 'bool' = False, forward_signals_to_process: 'bool' = True, restartable: 'bool' = False, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "output_type": "InteractiveProcess", + "provider": "pants.core" + } + ], + "InterpreterConstraints": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "InterpreterConstraintsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_desc": null, + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + } + ], + "Isort": [ + { + "description": null, + "help": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_isort", + "output_desc": null, + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + } + ], + "JUnit": [ + { + "description": null, + "help": "The JUnit test framework (https://junit.org)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_junit", + "output_desc": null, + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + } + ], + "JavaInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_java_infer", + "output_desc": null, + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "JavaInferredDependencies": [ + { + "description": "Inferring Java dependencies and exports by source analysis", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "FirstPartySymbolMapping", + "ThirdPartyPackageToArtifactMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_desc": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + } + ], + "JavaParserCompiledClassfiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "BashBinary", + "JdkSetup" + ], + "name": "pants.backend.java.dependency_inference.java_parser_launcher.build_processors", + "output_desc": "JavaParserCompiledClassfiles(digest: 'Digest')", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + } + ], + "JavaSourceDependencyAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "ProcessCleanupOption" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_desc": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + } + ], + "JavaSourceDependencyAnalysisRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "SourceFiles" + ], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_desc": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + } + ], + "JavacSubsystem": [ + { + "description": null, + "help": "The javac Java source compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_javac", + "output_desc": null, + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "JdkRequest": [ + { + "description": null, + "help": "Creates a `JdkRequest` object based on the JVM subsystem options.\n\nThis is effectively a singleton for now, but by the time we complete multiple JVM support, it\nwon't be.", + "input_gets": [], + "input_types": [ + "JvmSubsystem" + ], + "name": "pants.jvm.jdk_rules.global_jdk", + "output_desc": "Request for a JDK with a specific major version.", + "output_type": "JdkRequest", + "provider": "pants.backend.experimental.java" + } + ], + "JdkSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Coursier", + "JdkRequest", + "Nailgun", + "BashBinary" + ], + "name": "pants.jvm.jdk_rules.setup_jdk", + "output_desc": "JdkSetup(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int')", + "output_type": "JdkSetup", + "provider": "pants.backend.experimental.java" + } + ], + "JvmSubsystem": [ + { + "description": null, + "help": "Options for general JVM functionality.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jvm", + "output_desc": null, + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "KnownUserResolveNames": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KnownPythonUserResolveNamesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_desc": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KnownJVMUserResolveNamesRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_desc": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + } + ], + "Lambdex": [ + { + "description": null, + "help": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lambdex", + "output_desc": null, + "output_type": "Lambdex", + "provider": "pants.backend.awslambda.python" + } + ], + "LinkedGoBinary": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "LinkGoBinaryRequest" + ], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_desc": "A linked Go binary stored in a `Digest`.", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + } + ], + "Lint": [ + { + "description": "`lint` goal", + "help": null, + "input_gets": [ + "Get(LintResults, LintTargetsRequest, ..)", + "Get(LintResults, LintFilesRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Targets", + "SpecsSnapshot", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_desc": null, + "output_type": "Lint", + "provider": "pants.core" + } + ], + "LintResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "BanditPartition", + "Bandit" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "output_desc": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Flake8Partition", + "Flake8", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "output_desc": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "PylintPartition", + "Pylint", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "output_desc": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + } + ], + "LintResults": [ + { + "description": "Lint with regex patterns", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "RegexLintRequest", + "ValidateSubsystem", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.project_info" + }, + { + "description": "Lint with Hadolint", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "HadolintRequest", + "Hadolint" + ], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.docker.lint.hadolint" + }, + { + "description": "Lint with gofmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GofmtRequest", + "GofmtSubsystem" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Lint with Google Java Format", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "GoogleJavaFormatRequest", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": "Lint with autoflake", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "AutoflakeRequest", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": "Lint with pyupgrade", + "help": null, + "input_gets": [], + "input_types": [ + "PyUpgradeResult", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + { + "description": "Lint with scalafmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "ScalafmtRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + { + "description": "Lint with Bandit", + "help": null, + "input_gets": [ + "Get(LintResult, BanditPartition, ..)" + ], + "input_types": [ + "BanditRequest", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": "Lint with Black", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BlackRequest", + "Black" + ], + "name": "pants.backend.python.lint.black.rules.black_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.black" + }, + { + "description": "Lint with docformatter", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "DocformatterRequest", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": "Lint with Flake8", + "help": null, + "input_gets": [ + "Get(LintResult, Flake8Partition, ..)" + ], + "input_types": [ + "Flake8Request", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": "Lint with isort", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "IsortRequest", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.isort_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": "Lint using Pylint", + "help": null, + "input_gets": [ + "Get(PylintPartitions, PylintRequest, ..)", + "Get(LintResult, PylintPartition, ..)" + ], + "input_types": [ + "PylintRequest", + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.pylint" + }, + { + "description": "Lint with yapf", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "YapfRequest", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": "Lint with Shellcheck", + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ShellcheckRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.shell.lint.shellcheck" + }, + { + "description": "Lint with shfmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ShfmtRequest", + "Shfmt" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "LintSubsystem": [ + { + "description": null, + "help": "Run all linters and/or formatters in check mode.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lint", + "output_desc": null, + "output_type": "LintSubsystem", + "provider": "pants.core" + } + ], + "List": [ + { + "description": "`list` goal", + "help": null, + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "Addresses", + "ListSubsystem", + "Console" + ], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_desc": null, + "output_type": "List", + "provider": "pants.backend.project_info" + } + ], + "ListSubsystem": [ + { + "description": null, + "help": "Lists all targets matching the file or target arguments.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_list", + "output_desc": null, + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + } + ], + "LoadedGoBinary": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "LoadedGoBinaryRequest" + ], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_desc": "LoadedGoBinary(digest: 'Digest')", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + } + ], + "LocalDistWheels": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_desc": "Contains the wheels isolated from a single local Python distribution.", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + } + ], + "LocalDistsPex": [ + { + "description": "Building local distributions", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "LocalDistsPexRequest" + ], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_desc": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + } + ], + "MacroRenames": [ + { + "description": "Determine how to rename Python macros to target generators", + "help": null, + "input_gets": [ + "Get(BuildFileAddress, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "AllTargets", + "MacroRenamesRequest" + ], + "name": "pants.backend.python.macros.deprecation_fixers.determine_macro_changes", + "output_desc": "MacroRenames(generators: 'tuple[GeneratorRename, ...]', generated: 'FrozenDict[Address, tuple[Address, str]]')", + "output_type": "MacroRenames", + "provider": "pants.backend.python" + } + ], + "MaybeWarnPythonRepos": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "MaybeWarnPythonReposRequest", + "PythonRepos" + ], + "name": "pants.backend.python.goals.lockfile.maybe_warn_python_repos", + "output_desc": null, + "output_type": "MaybeWarnPythonRepos", + "provider": "pants.backend.docker" + } + ], + "MergedCoverageData": [ + { + "description": "Merge Pytest coverage data", + "help": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_desc": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + } + ], + "ModuleDescriptors": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ModuleDescriptorsRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_desc": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + } + ], + "MyPy": [ + { + "description": null, + "help": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy", + "output_desc": null, + "output_type": "MyPy", + "provider": "pants.backend.python" + } + ], + "MyPyConfigFile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_desc": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "MyPyFirstPartyPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_desc": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "MyPyPartitions": [ + { + "description": "Determine if necessary to partition MyPy input", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_desc": null, + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "Nailgun": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_desc": "Nailgun(classpath_entry: 'ClasspathEntry')", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + } + ], + "OptionalPex": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)" + ], + "input_types": [ + "OptionalPexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_desc": "OptionalPex(maybe_pex: 'Pex | None')", + "output_type": "OptionalPex", + "provider": "pants.core" + } + ], + "OptionalPexRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)" + ], + "input_types": [ + "_RepositoryPexRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_desc": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_desc": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + } + ], + "OptionalSourceRoot": [ + { + "description": null, + "help": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest", + "SourceRootConfig" + ], + "name": "pants.source.source_root.get_optional_source_root", + "output_desc": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + } + ], + "OptionalSourceRootsResult": [ + { + "description": null, + "help": "Rule to request source roots that may not exist.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_optional_source_roots", + "output_desc": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + } + ], + "OptionsChecker": [ + { + "description": "Check option values for Python macro syntax vs. target generator", + "help": null, + "input_gets": [ + "Get(MacroRenames, MacroRenamesRequest, ..)" + ], + "input_types": [ + "OptionsCheckerRequest", + "PythonProtobufSubsystem", + "ThriftPythonSubsystem", + "Flake8", + "Pylint", + "MyPy" + ], + "name": "pants.backend.python.macros.deprecation_fixers.maybe_warn_options_macro_references", + "output_desc": "Checks a hardcoded list of options for using deprecated addresses.\n\nThis is returned as a rule so that it acts as a singleton.", + "output_type": "OptionsChecker", + "provider": "pants.backend.python" + } + ], + "OwnedDependencies": [ + { + "description": "Find all code to be published in the distribution", + "help": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_owned_dependencies", + "output_desc": null, + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + } + ], + "OwningGoMod": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(UnexpandedTargets, AddressSpecs, ..)" + ], + "input_types": [ + "OwningGoModRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_go_mod", + "output_desc": "OwningGoMod(address: 'Address')", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + } + ], + "Package": [ + { + "description": "`package` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "DistDir" + ], + "name": "pants.core.goals.package.package_asset", + "output_desc": null, + "output_type": "Package", + "provider": "pants.core" + } + ], + "PackageAnalyzerSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_desc": "PackageAnalyzerSetup(digest: Digest, path: str)", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + } + ], + "PackageSubsystem": [ + { + "description": null, + "help": "Create a distributable package.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_package", + "output_desc": null, + "output_type": "PackageSubsystem", + "provider": "pants.core" + } + ], + "PantsBin": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GlobalOptions" + ], + "name": "pants.core.util_rules.pants_bin.pants_bin", + "output_desc": "PantsBin(name: str)", + "output_type": "PantsBin", + "provider": "pants.core" + } + ], + "ParsedPythonImports": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ParsePythonImportsRequest" + ], + "name": "pants.backend.python.dependency_inference.parse_python_imports.parse_python_imports", + "output_desc": "All the discovered imports from a Python source file mapped to the relevant info.", + "output_type": "ParsedPythonImports", + "provider": "pants.backend.python" + } + ], + "ParsedShellImports": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ParseShellImportsRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_desc": null, + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + } + ], + "ParsedThrift": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParsedThriftRequest" + ], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_desc": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ParserSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_desc": "ParserSetup(pex: 'VenvPex')", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + } + ], + "Partition": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)" + ], + "input_types": [ + "SetupScalafmtPartition" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "output_desc": "Partition(process: 'JvmProcess', description: 'str')", + "output_type": "Partition", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "PathsGoal": [ + { + "description": "`paths` goal", + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "Addresses", + "PathsSubsystem" + ], + "name": "pants.backend.project_info.paths.paths", + "output_desc": null, + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + } + ], + "PathsSubsystem": [ + { + "description": null, + "help": "List the paths between two addresses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_paths", + "output_desc": null, + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Peek": [ + { + "description": "`peek` goal", + "help": null, + "input_gets": [ + "Get(TargetDatas, UnexpandedTargets, ..)" + ], + "input_types": [ + "Console", + "PeekSubsystem", + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.peek", + "output_desc": null, + "output_type": "Peek", + "provider": "pants.backend.project_info" + } + ], + "PeekSubsystem": [ + { + "description": null, + "help": "Display BUILD target info", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_peek", + "output_desc": "Display detailed target information in JSON form.", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Pex": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)" + ], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_desc": "Wrapper for a digest containing a pex file created with some filename.", + "output_type": "Pex", + "provider": "pants.core" + } + ], + "PexBinaryDefaults": [ + { + "description": null, + "help": "Default settings for creating PEX executables.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_desc": null, + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + } + ], + "PexCli": [ + { + "description": null, + "help": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_desc": null, + "output_type": "PexCli", + "provider": "pants.core" + } + ], + "PexEnvironment": [ + { + "description": "Prepare environment for running PEXes", + "help": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBinary", + "PexRuntimeEnvironment", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_desc": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonExecutable | None' = None, venv_use_symlinks: 'bool' = False)", + "output_type": "PexEnvironment", + "provider": "pants.core" + } + ], + "PexPEX": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "PexCli" + ], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_desc": "The Pex PEX binary.", + "output_type": "PexPEX", + "provider": "pants.core" + } + ], + "PexRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(OptionalPex, _RepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_desc": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | Lockfile | LockfileContent' = PexRequirements(req_strings=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), is_all_constraints_resolve=False, repository_pex=None), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None) -> 'None'", + "output_type": "PexRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)" + ], + "input_types": [ + "RequirementsPexRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.get_requirements_pex", + "output_desc": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | Lockfile | LockfileContent' = PexRequirements(req_strings=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), is_all_constraints_resolve=False, repository_pex=None), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None) -> 'None'", + "output_type": "PexRequest", + "provider": "pants.backend.python" + } + ], + "PexRequirements": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_desc": "PexRequirements(req_strings: 'Iterable[str]' = (), *, constraints_strings: 'Iterable[str]' = (), is_all_constraints_resolve: 'bool' = False, repository_pex: 'Pex | None' = None) -> 'None'", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + } + ], + "PexResolveInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "VenvPex" + ], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_desc": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, PexProcess, ..)" + ], + "input_types": [ + "PexPEX", + "Pex" + ], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_desc": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "output_type": "PexResolveInfo", + "provider": "pants.core" + } + ], + "PexRuntimeEnvironment": [ + { + "description": null, + "help": "How Pants uses Pex to run Python subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex", + "output_desc": null, + "output_type": "PexRuntimeEnvironment", + "provider": "pants.core" + } + ], + "PoetrySubsystem": [ + { + "description": null, + "help": "Used to generate lockfiles for third-party Python dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_poetry", + "output_desc": null, + "output_type": "PoetrySubsystem", + "provider": "pants.backend.docker" + } + ], + "Process": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonNativeCode", + "GlobalOptions", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "DockerfileParseRequest", + "ParserSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "GolangSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "Coursier", + "CoursierFetchProcess" + ], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JdkSetup", + "JvmProcess" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ShellCommandProcessRequest", + "ShellSetup", + "BashBinary" + ], + "name": "pants.backend.shell.shell_command.prepare_shell_command_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.shell" + } + ], + "ProcessResult": [ + { + "description": null, + "help": "Converts a FallibleProcessResult to a ProcessResult or raises an error.", + "input_gets": [], + "input_types": [ + "FallibleProcessResult", + "ProductDescription", + "ProcessCleanupOption" + ], + "name": "pants.engine.process.fallible_to_exec_result_or_raise", + "output_desc": "Result of executing a process which should not fail.\n\nIf the process has a non-zero exit code, this will raise an exception, unlike\nFallibleProcessResult.", + "output_type": "ProcessResult", + "provider": "pants.core" + } + ], + "ProductDescription": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "Process" + ], + "name": "pants.engine.process.get_multi_platform_request_description", + "output_desc": "ProductDescription(value: 'str')", + "output_type": "ProductDescription", + "provider": "pants.core" + } + ], + "ProtobufMapping": [ + { + "description": "Creating map of Protobuf file names to Protobuf targets", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_desc": "A mapping of stripped .proto file names to their owning file address.", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "Protoc": [ + { + "description": null, + "help": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protoc", + "output_desc": null, + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "Publish": [ + { + "description": "`publish` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "PublishSubsystem" + ], + "name": "pants.core.goals.publish.run_publish", + "output_desc": null, + "output_type": "Publish", + "provider": "pants.core" + } + ], + "PublishProcesses": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(PublishProcesses, PublishRequest, ..)" + ], + "input_types": [ + "PublishProcessesRequest" + ], + "name": "pants.core.goals.publish.package_for_publish", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + } + ], + "PublishSubsystem": [ + { + "description": null, + "help": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_publish", + "output_desc": null, + "output_type": "PublishSubsystem", + "provider": "pants.core" + } + ], + "PutativeTargets": [ + { + "description": "Determine candidate Protobuf targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Determine candidate Thrift targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": "Determine candidate Docker targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + { + "description": "Determine candidate Go targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, AddressSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Determine candidate Java targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Determine candidate Scala targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Determine candidate Python targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, AddressSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + { + "description": "Determine candidate shell targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.shell.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + } + ], + "PyConstraintsGoal": [ + { + "description": "`py-constraints` goal", + "help": null, + "input_gets": [ + "Get(AllUnexpandedTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_desc": null, + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + } + ], + "PyConstraintsSubsystem": [ + { + "description": null, + "help": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_desc": null, + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + } + ], + "PyOxidizer": [ + { + "description": null, + "help": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_desc": null, + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + } + ], + "PyTest": [ + { + "description": null, + "help": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pytest", + "output_desc": null, + "output_type": "PyTest", + "provider": "pants.backend.python" + } + ], + "PyUpgrade": [ + { + "description": null, + "help": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_desc": null, + "output_type": "PyUpgrade", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + } + ], + "PyUpgradeResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PyUpgradeRequest", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.run_pyupgrade", + "output_desc": "PyUpgradeResult(process_result: 'FallibleProcessResult', original_digest: 'Digest')", + "output_type": "PyUpgradeResult", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + } + ], + "Pylint": [ + { + "description": null, + "help": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pylint", + "output_desc": null, + "output_type": "Pylint", + "provider": "pants.backend.python" + } + ], + "PylintFirstPartyPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_desc": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + } + ], + "PylintPartitions": [ + { + "description": "Determine if necessary to partition MyPy input", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "PylintRequest", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "output_desc": null, + "output_type": "PylintPartitions", + "provider": "pants.backend.python.lint.pylint" + } + ], + "PyoxidizerRunnerScript": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_desc": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + } + ], + "PytestPluginSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "RuntimePackagesPluginRequest" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_desc": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + } + ], + "PythonBinary": [ + { + "description": "Finding a `python` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "PythonBootstrap" + ], + "name": "pants.python.binaries.find_python", + "output_desc": "A Python3 interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nPython is usable for `@rule` scripting independently of `pants.backend.python`, but currently\nthirdparty dependencies are not supported, because PEX lives in that backend.\n\nTODO: Consider extracting PEX out into the core in order to support thirdparty dependencies.", + "output_type": "PythonBinary", + "provider": "pants.core" + } + ], + "PythonBootstrap": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "PythonBootstrapSubsystem" + ], + "name": "pants.python.binaries.python_bootstrap", + "output_desc": "PythonBootstrap(environment: 'Environment', options: 'OptionValueContainer')", + "output_type": "PythonBootstrap", + "provider": "pants.core" + } + ], + "PythonBootstrapSubsystem": [ + { + "description": null, + "help": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_desc": null, + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + } + ], + "PythonExecutable": [ + { + "description": "Find Python interpreter for constraints", + "help": null, + "input_gets": [ + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_desc": "The BinaryPath of a Python executable.", + "output_type": "PythonExecutable", + "provider": "pants.core" + } + ], + "PythonInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_infer", + "output_desc": null, + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + } + ], + "PythonModuleOwners": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_desc": "The target(s) that own a Python module.\n\nIf >1 targets own the same module, and they're implementations (vs .pyi type stubs), they will\nbe put into `ambiguous` instead of `unambiguous`. `unambiguous` should never be > 2.", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + } + ], + "PythonNativeCode": [ + { + "description": null, + "help": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_desc": null, + "output_type": "PythonNativeCode", + "provider": "pants.core" + } + ], + "PythonProtobufMypyPlugin": [ + { + "description": null, + "help": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_desc": null, + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "PythonProtobufSubsystem": [ + { + "description": null, + "help": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.10/docs/protobuf.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_desc": null, + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.python" + } + ], + "PythonRepos": [ + { + "description": null, + "help": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_repos", + "output_desc": null, + "output_type": "PythonRepos", + "provider": "pants.core" + } + ], + "PythonSetup": [ + { + "description": null, + "help": "Options for Pants's Python backend.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python", + "output_desc": null, + "output_type": "PythonSetup", + "provider": "pants.core" + } + ], + "PythonSourceFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "PythonSourceFilesRequest", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_desc": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + } + ], + "RegexLintSubsystem": [ + { + "description": null, + "help": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files. To run on those, use `lint '**'` rather than `lint ::`, for example. Unfortunately, `--changed-since=` does not yet cause this linter to run. We are exploring how to improve both these gotchas.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_desc": null, + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + } + ], + "RenamedFieldTypes": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_field_types", + "output_desc": "Map deprecated field names to their new name, per target.", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + } + ], + "RenamedTargetTypes": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_target_types", + "output_desc": "Deprecated target type names to new names.", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + } + ], + "RenderedEmbedConfig": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_desc": "RenderedEmbedConfig(digest: 'Digest')", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + } + ], + "Repl": [ + { + "description": "`repl` goal", + "help": null, + "input_gets": [ + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "ReplSubsystem", + "Targets", + "BuildRoot", + "UnionMembership", + "GlobalOptions", + "CompleteEnvironment" + ], + "name": "pants.core.goals.repl.run_repl", + "output_desc": null, + "output_type": "Repl", + "provider": "pants.core" + } + ], + "ReplRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaRepl", + "BashBinary", + "JdkSetup", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_desc": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonRepl", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_desc": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_desc": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + } + ], + "ReplSubsystem": [ + { + "description": null, + "help": "Open a REPL with the specified code loadable.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_repl", + "output_desc": null, + "output_type": "ReplSubsystem", + "provider": "pants.core" + } + ], + "ResolvedClasspathEntries": [ + { + "description": null, + "help": "Fetch every artifact in a lockfile.", + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [ + "CoursierResolvedLockfile" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_desc": "A collection of resolved classpath entries.", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + } + ], + "ResolvedPexEntryPoint": [ + { + "description": "Determining the entry point for a `pex_binary` target", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePexEntryPointRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_desc": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + } + ], + "ResolvedPythonAwsHandler": [ + { + "description": "Determining the handler for a `python_awslambda` target", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonAwsHandlerRequest" + ], + "name": "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "output_desc": "ResolvedPythonAwsHandler(val: str, file_name_used: bool)", + "output_type": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python" + } + ], + "ResolvedPythonDistributionEntryPoints": [ + { + "description": "Determining the entry points for a `python_distribution` target", + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "ResolvePythonDistributionEntryPointsRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_desc": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + } + ], + "ResolvedPythonGoogleHandler": [ + { + "description": "Determining the handler for a `python_google_cloud_function` target", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonGoogleHandlerRequest" + ], + "name": "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "output_desc": "ResolvedPythonGoogleHandler(val: str, file_name_used: bool)", + "output_type": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python" + } + ], + "RewrittenBuildFile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithYapfRequest", + "Yapf" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithBlackRequest", + "Black" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": "Check for deprecated target type names", + "help": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedTargetsRequest", + "RenamedTargetTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": "Check for deprecated field type names", + "help": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedFieldsRequest", + "RenamedFieldTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": "Change Python macros to target generators", + "help": null, + "input_gets": [ + "Get(MacroRenames, MacroRenamesRequest, ..)", + "Get(OptionsChecker, OptionsCheckerRequest, ..)" + ], + "input_types": [ + "UpdatePythonMacrosRequest", + "GlobalOptions", + "UpdateBuildFilesSubsystem" + ], + "name": "pants.backend.python.macros.deprecation_fixers.maybe_update_macros_references", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.backend.python" + } + ], + "Roots": [ + { + "description": "`roots` goal", + "help": null, + "input_gets": [], + "input_types": [ + "Console", + "RootsSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_desc": null, + "output_type": "Roots", + "provider": "pants.backend.project_info" + } + ], + "RootsSubsystem": [ + { + "description": null, + "help": "List the repo's registered source roots.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_roots", + "output_desc": null, + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Run": [ + { + "description": "`run` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(WrappedTarget, Address, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "GlobalOptions", + "Workspace", + "BuildRoot", + "CompleteEnvironment" + ], + "name": "pants.core.goals.run.run", + "output_desc": null, + "output_type": "Run", + "provider": "pants.core" + } + ], + "RunRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DeployJarFieldSet", + "__RuntimeJvm", + "JdkSetup" + ], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "PexEnvironment" + ], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(Process, ShellCommandProcessRequest, ..)" + ], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.backend.shell.shell_command.run_shell_command_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + } + ], + "RunSubsystem": [ + { + "description": null, + "help": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_run", + "output_desc": null, + "output_type": "RunSubsystem", + "provider": "pants.core" + } + ], + "ScalaInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_desc": null, + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaParserCompiledClassfiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_desc": null, + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaSourceDependencyAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleScalaSourceDependencyAnalysisResult", + "ProcessCleanupOption" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_desc": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[str]', provided_symbols_encoded: 'FrozenOrderedSet[str]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaSubsystem": [ + { + "description": null, + "help": "Scala programming language", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala", + "output_desc": null, + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + } + ], + "Scalac": [ + { + "description": null, + "help": "The Scala compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalac", + "output_desc": null, + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalafmtConfigFiles": [ + { + "description": null, + "help": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "GatherScalafmtConfigFilesRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_desc": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "ScalafmtSubsystem": [ + { + "description": null, + "help": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_desc": null, + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "Scalatest": [ + { + "description": null, + "help": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalatest", + "output_desc": null, + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + } + ], + "Setup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "SetupRequest", + "GoRoot" + ], + "name": "pants.backend.go.lint.gofmt.rules.setup_gofmt", + "output_desc": "Setup(process: 'Process', original_digest: 'Digest')", + "output_type": "Setup", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "SetupRequest", + "GoogleJavaFormatSubsystem", + "JdkSetup" + ], + "name": "pants.backend.java.lint.google_java_format.rules.setup_google_java_format", + "output_desc": "Setup(process: pants.jvm.jdk_rules.JvmProcess, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.setup_autoflake", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partition, SetupScalafmtPartition, ..)" + ], + "input_types": [ + "SetupRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "output_desc": "Setup(partitions: 'tuple[Partition, ...]', original_digest: 'Digest')", + "output_type": "Setup", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.rules.setup_black", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.python.lint.black" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.setup_docformatter", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.setup_isort", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.setup_yapf", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupRequest", + "Shfmt" + ], + "name": "pants.backend.shell.lint.shfmt.rules.setup_shfmt", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "SetupKwargs": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SetupKwargs, SetupKwargsRequest, ..)" + ], + "input_types": [ + "ExportedTarget", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.determine_setup_kwargs", + "output_desc": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + } + ], + "SetupPyGeneration": [ + { + "description": null, + "help": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_desc": null, + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + } + ], + "Setuptools": [ + { + "description": null, + "help": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools", + "output_desc": null, + "output_type": "Setuptools", + "provider": "pants.backend.python" + } + ], + "ShellMapping": [ + { + "description": "Creating map of Shell file names to Shell targets", + "help": null, + "input_gets": [], + "input_types": [ + "AllShellTargets" + ], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_desc": "A mapping of Shell file names to their owning file address.", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + } + ], + "ShellSetup": [ + { + "description": null, + "help": "Options for Pants's Shell support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_desc": null, + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + } + ], + "Shellcheck": [ + { + "description": null, + "help": "A linter for shell scripts.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_desc": null, + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + } + ], + "Shfmt": [ + { + "description": null, + "help": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shfmt", + "output_desc": null, + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "Shunit2Runner": [ + { + "description": "Determine shunit2 shell", + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Shunit2RunnerRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_desc": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.engine.process.BinaryPath)", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + } + ], + "SourceFiles": [ + { + "description": "Get all relevant source files", + "help": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFilesRequest" + ], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_desc": "A merged snapshot of the `sources` fields of multiple targets.", + "output_type": "SourceFiles", + "provider": "pants.core" + } + ], + "SourceRoot": [ + { + "description": null, + "help": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest" + ], + "name": "pants.source.source_root.get_source_root", + "output_desc": "SourceRoot(path: 'str')", + "output_type": "SourceRoot", + "provider": "pants.core" + } + ], + "SourceRootConfig": [ + { + "description": null, + "help": "Configuration for roots of source trees.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_source", + "output_desc": null, + "output_type": "SourceRootConfig", + "provider": "pants.core" + } + ], + "SourceRootsResult": [ + { + "description": null, + "help": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_source_roots", + "output_desc": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "output_type": "SourceRootsResult", + "provider": "pants.core" + } + ], + "StatsAggregatorSubsystem": [ + { + "description": null, + "help": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_stats", + "output_desc": null, + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + } + ], + "StrippedFileName": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "StrippedFileNameRequest" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_desc": "StrippedFileName(value: str)", + "output_type": "StrippedFileName", + "provider": "pants.core" + } + ], + "StrippedPythonSourceFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFiles, ..)" + ], + "input_types": [ + "PythonSourceFiles" + ], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_desc": "A PythonSourceFiles that has had its source roots stripped.", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + } + ], + "StrippedSourceFileNames": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourcesPaths" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_desc": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + } + ], + "StrippedSourceFiles": [ + { + "description": null, + "help": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFiles" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_desc": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + } + ], + "SubprocessEnvironment": [ + { + "description": null, + "help": "Environment settings for forked subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_desc": null, + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + } + ], + "SubprocessEnvironmentVars": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "SubprocessEnvironment" + ], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_desc": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + } + ], + "SuccinctCodeCounter": [ + { + "description": null, + "help": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scc", + "output_desc": null, + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + } + ], + "SymbolMap": [ + { + "description": "Map all first party Java targets to their packages", + "help": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_desc": "A mapping of JVM package names to owning addresses.", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Map all first party Scala targets to their symbols", + "help": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_desc": "A mapping of JVM package names to owning addresses.", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + } + ], + "TailorGoal": [ + { + "description": "`tailor` goal", + "help": null, + "input_gets": [ + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions", + "PantsBin" + ], + "name": "pants.core.goals.tailor.tailor", + "output_desc": null, + "output_type": "TailorGoal", + "provider": "pants.core" + } + ], + "TailorSubsystem": [ + { + "description": null, + "help": "Auto-generate BUILD file targets for new source files.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_tailor", + "output_desc": null, + "output_type": "TailorSubsystem", + "provider": "pants.core" + } + ], + "TarBinary": [ + { + "description": "Finding the `tar` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.archive.find_tar", + "output_desc": null, + "output_type": "TarBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "_TarBinaryRequest", + "TarBinary" + ], + "name": "pants.core.util_rules.archive.find_tar_wrapper", + "output_desc": null, + "output_type": "TarBinary", + "provider": "pants.core" + } + ], + "TargetDatas": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.get_target_data", + "output_desc": null, + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + } + ], + "Test": [ + { + "description": "`test` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(TestDebugRequest, TestFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(TestResult, TestFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, CoverageDataCollection, ..)", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId" + ], + "name": "pants.core.goals.test.run_tests", + "output_desc": null, + "output_type": "Test", + "provider": "pants.core" + } + ], + "TestDebugRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GoTestFieldSet" + ], + "name": "pants.backend.go.goals.test.generate_go_tests_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Set up Pytest to run interactively", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "PythonTestFieldSet" + ], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + { + "description": "Setup Shunit2 to run interactively", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Shunit2FieldSet" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + } + ], + "TestExtraEnv": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "TestSubsystem" + ], + "name": "pants.core.goals.test.get_filtered_environment", + "output_desc": "TestExtraEnv(env: 'Environment')", + "output_type": "TestExtraEnv", + "provider": "pants.core" + } + ], + "TestResult": [ + { + "description": "Test with Go", + "help": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GoTestFieldSet", + "TestSubsystem", + "GoTestSubsystem" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Run JUnit", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.run_junit_test", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Run Scalatest", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Run Pytest", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "PythonTestFieldSet", + "TestSubsystem" + ], + "name": "pants.backend.python.goals.pytest_runner.run_python_test", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + { + "description": "Run tests with Shunit2", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Shunit2FieldSet", + "TestSubsystem" + ], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.shell" + } + ], + "TestSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_desc": "TestSetup(process: pants.jvm.jdk_rules.JvmProcess, reports_dir_prefix: str)", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_desc": "TestSetup(process: pants.jvm.jdk_rules.JvmProcess, reports_dir_prefix: str)", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "PythonSetup", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_desc": "TestSetup(process: pants.engine.process.Process, results_file_name: Optional[str])", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + { + "description": "Setup shunit2", + "help": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "ShellSetup", + "TestSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_desc": "TestSetup(process: pants.engine.process.Process)", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + } + ], + "TestSubsystem": [ + { + "description": null, + "help": "Run tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_test", + "output_desc": null, + "output_type": "TestSubsystem", + "provider": "pants.core" + } + ], + "ThirdPartyPackageToArtifactMapping": [ + { + "description": null, + "help": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_artifact_mapping", + "output_desc": "ThirdPartyPackageToArtifactMapping(mapping_roots: 'FrozenDict[_ResolveName, FrozenTrieNode]')", + "output_type": "ThirdPartyPackageToArtifactMapping", + "provider": "pants.backend.experimental.java" + } + ], + "ThirdPartyPkgAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "ThirdPartyPkgAnalysisRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_desc": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + } + ], + "ThirdPartyPythonModuleMapping": [ + { + "description": "Creating map of third party targets to Python modules", + "help": null, + "input_gets": [], + "input_types": [ + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_desc": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + } + ], + "ThriftMapping": [ + { + "description": "Creating map of Thrift file names to Thrift targets", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllThriftTargets" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_desc": "A mapping of stripped .thrift file names to their owning file address.", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ThriftPythonSubsystem": [ + { + "description": null, + "help": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_desc": null, + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.python" + } + ], + "ThriftSubsystem": [ + { + "description": null, + "help": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_thrift", + "output_desc": null, + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ToolClasspath": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "ToolClasspathRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_desc": "A fully fetched and merged classpath for running a JVM tool.", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + } + ], + "TwineSubsystem": [ + { + "description": null, + "help": "The utility for publishing Python distributions to PyPi and other Python repositories.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_twine", + "output_desc": null, + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + } + ], + "UniquelyNamedPutativeTargets": [ + { + "description": null, + "help": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": [ + "PutativeTargets", + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_desc": "Putative targets that have no name conflicts with existing targets (or each other).", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + } + ], + "UnzipBinary": [ + { + "description": "Finding the `unzip` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.archive.find_unzip", + "output_desc": null, + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "_UnzipBinaryRequest", + "UnzipBinary" + ], + "name": "pants.core.util_rules.archive.find_unzip_wrapper", + "output_desc": null, + "output_type": "UnzipBinary", + "provider": "pants.core" + } + ], + "UpdateBuildFilesGoal": [ + { + "description": "Update all BUILD files", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership", + "PantsBin" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_desc": null, + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + } + ], + "UpdateBuildFilesSubsystem": [ + { + "description": null, + "help": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.10/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_desc": null, + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + } + ], + "UserGenerateLockfiles": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_desc": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_desc": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + } + ], + "Validate": [ + { + "description": "`validate` goal", + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "Console", + "SpecsSnapshot", + "ValidateSubsystem", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.validate_goal", + "output_desc": null, + "output_type": "Validate", + "provider": "pants.backend.project_info" + } + ], + "ValidateSubsystem": [ + { + "description": null, + "help": "Deprecated: to use, set `[regex-lint].config` and run with the `lint` goal", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_validate", + "output_desc": null, + "output_type": "ValidateSubsystem", + "provider": "pants.backend.project_info" + } + ], + "VenvPex": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexRequest", + "BashBinary", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_desc": "VenvPex(digest: 'Digest', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "output_type": "VenvPex", + "provider": "pants.core" + } + ], + "VenvPexRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_desc": "VenvPexRequest(pex_request: 'PexRequest', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "output_type": "VenvPexRequest", + "provider": "pants.core" + } + ], + "WorkspaceBuildTargetsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BSPBuildTargets, BSPBuildTargetsRequest, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "UnionMembership" + ], + "name": "pants.bsp.rules.bsp_workspace_build_targets", + "output_desc": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + } + ], + "WorkunitsCallbackFactory": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AnonymousTelemetryCallbackFactoryRequest", + "AnonymousTelemetry" + ], + "name": "pants.goal.anonymous_telemetry.construct_callback", + "output_desc": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_desc": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + } + ], + "WrappedGenerateLockfile": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GeneratePythonLockfile" + ], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_desc": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_desc": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + } + ], + "Yapf": [ + { + "description": null, + "help": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yapf", + "output_desc": null, + "output_type": "Yapf", + "provider": "pants.core" + } + ], + "ZipBinary": [ + { + "description": "Finding the `zip` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.archive.find_zip", + "output_desc": null, + "output_type": "ZipBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "_ZipBinaryRequest", + "ZipBinary" + ], + "name": "pants.core.util_rules.archive.find_zip_wrapper", + "output_desc": null, + "output_type": "ZipBinary", + "provider": "pants.core" + } + ], + "_LanguageFmtResults": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FmtResult, FmtRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "_LanguageFmtRequest" + ], + "name": "pants.core.goals.fmt.fmt_language", + "output_desc": "_LanguageFmtResults(results: 'tuple[FmtResult, ...]', input: 'Digest', output: 'Digest')", + "output_type": "_LanguageFmtResults", + "provider": "pants.core" + } + ], + "_LoadedGlobalScalacPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)" + ], + "input_types": [ + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.parse_global_scalac_plugins", + "output_desc": "_LoadedGlobalScalacPlugins(names: 'tuple[str, ...]', artifact_address_inputs: 'tuple[str, ...]')", + "output_type": "_LoadedGlobalScalacPlugins", + "provider": "pants.backend.experimental.scala" + } + ], + "__RuntimeJvm": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Process, JvmProcess, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "JdkSetup" + ], + "name": "pants.jvm.run_deploy_jar.ensure_jdk_for_pants_run", + "output_desc": "Allows Coursier to download a JDK into a Digest, rather than an append-only cache for use\nwith `pants run`.\n\nThis is a hideous stop-gap, which will no longer be necessary once `InteractiveProcess` supports\nappend-only caches. (See #13852 for details on how to do this.)", + "output_type": "__RuntimeJvm", + "provider": "pants.backend.experimental.java" + } + ] + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.10.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/v2.10/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.10.1" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.10.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported. \n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": { + "user-agent": "pants/2.10.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.10.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "first_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "Whether to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "first_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-read-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": { + "user-agent": "pants/2.10.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.10.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]use-deprecated-python-macros", + "config_key": "use_deprecated_python_macros", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]use-deprecated-python-macros" + ], + "env_var": "PANTS_USE_DEPRECATED_PYTHON_MACROS", + "help": "If true, continue using Pants's deprecated macro system for `python_requirements`, `poetry_requirements`, and `pipenv_requirements` rather than target generation.\n\nThe address for target generation is different. Rather than `3rdparty/python:Django`, the address will look like `3rdparty/python#Django`. The target generator (`python_requirements` et al) is a target itself now, meaning you can give it a `name`. If the target generator sets its `name`, e.g. to `reqs`, generated targets will have an address like `3rdparty/python:reqs#Django`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--use-deprecated-python-macros", + "--no-use-deprecated-python-macros" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-deprecated-python-macros", + "--no-use-deprecated-python-macros" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.\n\nPatterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.10/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "indicatif-spinner", + "experimental-prodash" + ], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dynamic-ui-renderer=" + ], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.10/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\nSee https://www.pantsbuild.org/v2.10/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\nSee https://www.pantsbuild.org/v2.10/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string '' will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-thrift-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--thrift-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-expected-version=" + ], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake==1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-version=" + ], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake==1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-lockfile=" + ], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/lint/autoflake/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=autoflake`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "help": "Don't use Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython==3.1.18" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython==3.1.18" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/lint/bandit/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=bandit`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==22.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==22.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6.2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6.2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/lint/black/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=black`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.10/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--check-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_CHECK_ONLY", + "help": "Only run these checkerss and skip all others.\n\nThe checkers names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkerss.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--check-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "help": "Register command line aliases.\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependees=transitive\"\n\nThis would allow you to run `./pants green all-changed`, which is shorthand for `./pants fmt lint check --changed-since=HEAD --changed-dependees=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.0.16-169-g194ebc55c", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.0.16-169-g194ebc55c" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.10/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.5,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.5,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/subsystems/coverage_py_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=coverage-py`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil'].\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html .", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees. If unspecified, list direct dependees only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/lint/docformatter/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=docformatter`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find the Docker client and any tools required.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-context-root=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-context-root" + ], + "typ": "workspace_path", + "unscoped_cmd_line_args": [ + "--default-context-root" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-verbose" + ], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-verbose", + "--no-build-verbose" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ ./pants run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-version=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-lockfile=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/docker/subsystems/dockerfile_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=dockerfile-parser`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.73", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.73,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.73" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.73|macos_arm64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|macos_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|linux_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.73|macos_arm64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|macos_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|linux_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-pex-bin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.73,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.10/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": "download-pex-bin", + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "download-pex-bin" + }, + "experimental-bsp": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Run server for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-bsp" + }, + "export": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.backend.docker", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.9.2,<4.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.9.2,<4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/lint/flake8/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=flake8`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add 'build-support/flake8' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.10/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file. For example:\n\n```\n[flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n```\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[flake8].extra_requirements`.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Flake8 plugins such as 'flake8-plugins' so that the third-party requirements used by your plugin, like `flake8`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-batch-size=" + ], + "env_var": "PANTS_FMT_BATCH_SIZE", + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FMT_ONLY", + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.11.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "Rather than formatting all files in a single batch, format each file as a separate process.\n\nWhy 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`.\n\nWe 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.", + "removal_hint": "Formatters are now broken into multiple batches by default using the `--batch-size` argument.\n\nTo keep (roughly) this option's behavior, set [fmt].batch_size = 1. However, you'll likely get better performance by using a larger batch size because of reduced overhead launching processes.", + "removal_version": "2.11.0.dev0", + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `./pants generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from the option `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `./pants generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for Python third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "generate-user-lockfile": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Deprecated: use the option `[python].resolves` and the `generate-lockfiles` goal instead", + "is_goal": true, + "provider": "pants.backend.experimental.python", + "scope": "generate-user-lockfile" + }, + "go-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "help": "Arguments to pass directly to the Go test binary, e.g. `--go-test-args=\"-run TestFoo -v\"`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "help": "Don't use gofmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string '' will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-expected-version=", + "config_key": "expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-expected-version=" + ], + "env_var": "PANTS_GOLANG_EXPECTED_VERSION", + "help": "The Go version you are using, such as `1.17`.\n\nPants will only use Go distributions from `--go-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants jvm-generate-lockfiles --resolve=google-java-format`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "help": "Don't use Google Java Format when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.10/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "help": "Use this version of hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.8.0|macos_x86_64|27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|macos_arm64 |27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|linux_x86_64|9dfc155139a1e1e9b3b28f3de9907736b9dfe7cead1c3a0ae7ff0158f3191674|5895708" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.8.0|macos_x86_64|27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|macos_arm64 |27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|linux_x86_64|9dfc155139a1e1e9b3b28f3de9907736b9dfe7cead1c3a0ae7ff0158f3191674|5895708" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of hadolint is not supported.\n\nSupported hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.10/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "help": "Don't use Hadolint when running `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/subsystems/ipython_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=ipython`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/lint/isort/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=isort`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-third-party-imports", + "config_key": "third_party_imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-third-party-imports" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORTS", + "help": "Infer a target's third-party dependencies using Java import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-imports", + "--no-java-infer-third-party-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--third-party-imports", + "--no-third-party-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "help": "Global `javac` compiler flags, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants jvm-generate-lockfiles --resolve=junit`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "help": "Arguments to pass directly to JUnit, e.g. `--disable-ansi-colors`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "adopt:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "help": "The JDK to use.\n\n This string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\n If the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "adopt:1.11" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like ['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/subsystems/lambdex_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=lambdex`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "provider": "pants.backend.awslambda.python", + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-batch-size=" + ], + "env_var": "PANTS_LINT_BATCH_SIZE", + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_LINT_ONLY", + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.11.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process.\n\nWhy do this? You'll get many more cache hits. Why not do this? Linters 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`.\n\nWe 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.", + "removal_hint": "Linters are now broken into multiple batches by default using the `--batch-size` argument.\n\nTo keep (roughly) this option's behavior, set [lint].batch_size = 1. However, you'll likely get better performance by using a larger batch size because of reduced overhead launching processes.", + "removal_version": "2.11.0.dev0", + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.910", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.910" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/typecheck/mypy/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=mypy`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.Tip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your MyPy plugins such as 'mypy-plugins' so that the third-party requirements used by your plugin, like `mypy`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement` target.Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 typecheck`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=mypy-protobuf`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "frm", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FRM", + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "help": "When possible, use venvs whose site-packages directories are populated withsymlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.73", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-version=" + ], + "env_var": "PANTS_PEX_CLI_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.73,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.73" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.73|macos_arm64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|macos_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|linux_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.73|macos_arm64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|macos_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|linux_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.73,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-template=" + ], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.10/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": "download-pex-bin", + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "poetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-version=", + "config_key": "version", + "default": "poetry==1.1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-version=" + ], + "env_var": "PANTS_POETRY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "poetry==1.1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to generate lockfiles for third-party Python dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "poetry" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|linux_arm64 |f24c9fa1fc4a7770b8a5da66e515cb8a638d086ad2afa633abb97137c5f029a8|1481946", + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|linux_arm64 |f24c9fa1fc4a7770b8a5da66e515cb8a638d086ad2afa633abb97137c5f029a8|1481946", + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.10/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.11.0,<2.12", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.11.0,<2.12" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/lint/pylint/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pylint`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.10/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Pylint plugins such as 'pylint-plugins' so that the third-party requirements used by your plugin, like `pylint`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-version=", + "config_key": "version", + "default": "pyoxidizer==0.18.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-version=" + ], + "env_var": "PANTS_PYOXIDIZER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer==0.18.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.8" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.8" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-console-script=" + ], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-entry-point=" + ], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args=\"--release\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=7,<8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=7,<8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/subsystems/pytest_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pytest`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.10/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file, including due to less supply chain risk thanks to `--hash` support.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThe constraints only apply when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "help": "(Only relevant when using`[python].requirement_constraints`.) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-resolves" + ], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "help": "Set to true to enable the lockfile and multiple resolves mechanisms. See `[python].resolves` and https://www.pantsbuild.org/v2.10/docs/python-third-party-dependencies an explanation of this feature.\n\nWarning: you may have issues with generating valid lockfiles via the `generate-lockfiles` goal and may need to instead manually generate the locks, e.g. by running `pip freeze`. Categorically, the lockfile cannot be generated by Pants if you need to use VCS (Git) requirements and local requirements, along with `[python-repos]` for custom indexes/cheeseshops. See https://www.pantsbuild.org/v2.10/docs/python-third-party-dependencies for more details on how to manually generate lockfiles.\n\nSeveral users have also had issues with how Poetry's lockfile generation handles environment markers for transitive dependencies; certain dependencies end up with nonsensical environment markers which cause the dependency to not be installed, then for Pants/Pex to complain the dependency is missing, even though it's in the lockfile. The workaround is to manually create a `python_requirement` target for the problematic transitive dependencies so that they are seen as direct requirements, rather than transitive, then to regenerate the lockfile with `generate-lockfiles`.\n\nWe are working to fix these issues by using PEX & pip to generate the lockfile.\n\nOutside of the above issues with lockfile generation, we believe this feature is stable. It offers three major benefits compared to `[python].requirement_constraints`:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple resolves in your repository.\n\nMutually exclusive with `[python].requirement_constraints`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `./pants generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `./pants generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, create a distinct target per resolve. This will be made more ergonomic in an upcoming Pants release through a new `parametrize` feature.\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-default-resolve=" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use ['==3.9.*'] via the `interpreter_constraints` field, but it's also using a resolve whose interpreter constraints are set to ['==3.7.*'], then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolves-generate-lockfiles" + ], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles as a workaround for the issues described at https://www.pantsbuild.org/v2.10/docs/python-third-party-dependencies.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` set to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "help": "If enabled, when running binaries, tests, and REPLs, Pants will use the entire lockfile file instead of just the relevant subset.\n\nThis can improve performance and reduce cache size, but has two consequences:\n 1) All cached test results will be invalidated if any requirement in the lockfile changes, rather than just those that depend on the changed requirement.\n 2) Requirements unneeded by a test/run/repl will be present on the sys.path, which might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "Don't tailor `python_sources` targets for solitary `__init__.py` files, as those usually exist as import scaffolding rather than true library code.\n\nSet to False if you commonly have packages containing real code in `__init__.py` and there are no other .py files in the package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-solitary-init-files", + "--no-python-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "help": "Tailor python_requirements() targets for requirements files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "help": "Tailor pex_binary() targets for Python entry point files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-experimental-lockfile=", + "config_key": "experimental_lockfile", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.11.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-experimental-lockfile=" + ], + "env_var": "PANTS_PYTHON_EXPERIMENTAL_LOCKFILE", + "help": "Deprecated.", + "removal_hint": "Instead, use the improved `[python].resolves` mechanism. Read its help message for more information.\n\nIf you want to keep using a single resolve like before, update `[python].resolves` with a name for the resolve and the path to its lockfile, or use the default. Then make sure that `[python].default_resolve` is set to that resolve name.", + "removal_version": "2.11.0.dev0", + "scoped_cmd_line_args": [ + "--python-experimental-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--experimental-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-jobs=", + "config_key": "resolver_jobs", + "default": "#cores/2", + "deprecated_message": "Deprecated, will be removed in version: 2.11.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with.\n\nBecause Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-resolver-jobs`. \n\nSetting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": "Now set automatically based on the amount of concurrency available.", + "removal_version": "2.11.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "help": "A list of paths to search for Python interpreters.\n\nWhich interpeters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH env var\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor `__init__.py` files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "ignore", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "help": "How to handle inferred dependencies that don't have any owner.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ignore" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.11.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_sources` target", + "removal_hint": "Pants can now infer dependencies on the Protobuf and gRPC runtime libraries for you. Not only is this more convenient, it allows Pants to support the new `[python].resolves` feature.\n\nTo use Pants's new mechanism, simply remove this option. Run `./pants dependencies path/to/f.proto` to confirm that dependencies are still added correctly. You can disable this new dependency inference feature by setting `[python-protobuf].infer_runtime_dependency = false`.", + "removal_version": "2.11.0.dev0", + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.10/docs/protobuf.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-thrift-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-thrift" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.31.0,<2.32", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-version=" + ], + "env_var": "PANTS_PYUPGRADE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.31.0,<2.32" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-lockfile=" + ], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/lint/pyupgrade/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pyupgrade`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "help": "Don't use pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args=\"--py39-plus --keep-runtime-typing\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "help": "Config schema is as follows:\n\n```\n{\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n}\n```\n\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-detail-level=" + ], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "sourcefile-validation", + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files. To run on those, use `lint '**'` rather than `lint ::`, for example. Unfortunately, `--changed-since=` does not yet cause this linter to run. We are exploring how to improve both these gotchas.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-cleanup", + "config_key": "cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-cleanup" + ], + "env_var": "PANTS_RUN_CLEANUP", + "help": "Whether to clean up the temporary directory in which the binary is chrooted. Set to false to retain the directory, e.g., for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-cleanup", + "--no-run-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cleanup", + "--no-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version=", + "config_key": "version", + "default": "2.13.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version=" + ], + "env_var": "PANTS_SCALA_VERSION", + "help": "The version of Scala to use", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.13.6" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-global=\"['', '', ...]\"", + "config_key": "plugins_global", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-global=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_GLOBAL", + "help": "A list of addresses of `scalac_plugin` targets which should be used for compilation of all Scala targets in a build.\n\nIf you set this, you must also set `[scalac].plugins_global_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-global" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins-global" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-global-lockfile=", + "config_key": "plugins_global_lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-global-lockfile=" + ], + "env_var": "PANTS_SCALAC_PLUGINS_GLOBAL_LOCKFILE", + "help": "The filename of the lockfile for global plugins. You must set this option to a file path, e.g. '3rdparty/jvm/global_scalac_plugins.lock', if you set `[scalac].plugins_global`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-global-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--plugins-global-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "help": "Global `scalac` compiler flags, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants jvm-generate-lockfiles --resolve=scalafmt`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "help": "Don't use `scalafmt` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants jvm-generate-lockfiles --resolve=scalatest`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "help": "Arguments to pass directly to Scalatest, e.g. `-t $testname`. See https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of succinctcodecounter is not supported.\n\nSupported succinctcodecounter versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.10/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "help": "The default value for the `generate_setup` field on `python_distribution` targets.Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<58.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<58.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/subsystems/setuptools_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=setuptools`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shellcheck is not supported.\n\nSupported shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.10/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "Don't use Shellcheck when running `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.10/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "Don't use shfmt when running `./pants fmt` and `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.10/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "Config schema is as follows:\n\n```\n{\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n}\n```\n\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--sourcefile-validation-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-detail-level=" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_DETAIL_LEVEL", + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "sourcefile-validation", + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files. To run on those, use `lint '**'` rather than `lint ::`, for example. Unfortunately, `--changed-since=` does not yet cause this linter to run. We are exploring how to improve both these gotchas.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "sourcefile-validation" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-memory-summary" + ], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--memory-summary", + "--no-memory-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.10/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-xml-dir=", + "config_key": "xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-xml-dir=" + ], + "env_var": "PANTS_TEST_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run that supports producing them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-dependency-inference" + ], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine>=3.7.1,<3.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-version=" + ], + "env_var": "PANTS_TWINE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine>=3.7.1,<3.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "colorama>=0.4.3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "colorama>=0.4.3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-lockfile=" + ], + "env_var": "PANTS_TWINE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/subsystems/twine_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=twine`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use the default CA certificate.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "help": "Don't use Twine when running `./pants publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPi and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "yapf", + "black" + ], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--update-build-files-formatter=" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-formatter" + ], + "typ": "Formatter", + "unscoped_cmd_line_args": [ + "--formatter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-python-macros", + "config_key": "fix_python_macros", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-python-macros" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_PYTHON_MACROS", + "help": "Update references to targets generated from `python_requirements` and `poetry_requirements` from the old deprecated macro mechanism to the new target generation mechanism described at https://www.pantsbuild.org/v2.10/docs/targets#target-generation.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-python-macros", + "--no-update-build-files-fix-python-macros" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-python-macros", + "--no-fix-python-macros" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.10/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "validate": { + "advanced": [], + "basic": [], + "deprecated": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": "Deprecated, will be removed in version: 2.11.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": "Use `[regex-lint].detail_level` instead, which behaves the same.", + "removal_version": "2.11.0.dev0", + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Deprecated: to use, set `[regex-lint].config` and run with the `lint` goal", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "validate" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf==0.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf==0.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.10.1/src/python/pants/backend/python/lint/yapf/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=yapf`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "help": "Don't use yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args=\"--no-local-style\"`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.11.x/reference/help-all.json b/versioned_docs/version-2.11.x/reference/help-all.json new file mode 100644 index 000000000..6fd320228 --- /dev/null +++ b/versioned_docs/version-2.11.x/reference/help-all.json @@ -0,0 +1,34464 @@ +{ + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "", + "check" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": false, + "name": "experimental-bsp", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": [ + "" + ], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": [ + "" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.backend.docker" + }, + "filedeps": { + "consumed_scopes": [ + "", + "filedeps" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter", + "provider": "pants.backend.project_info" + }, + "fmt": { + "consumed_scopes": [ + "", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "generate-lockfiles" + ], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": [ + "", + "lint" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": [ + "" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": [ + "", + "paths" + ], + "description": "List the paths between two addresses.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": [ + "", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": [ + "", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": [ + "", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.11/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )\n", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "Any tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.11/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [docker].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. \"/\".\n\nIt uses the `[docker].default_repository` by default.\n\nrepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory` and `parent_directory`.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nlabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )\n", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: default|[=|[,]])\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this image to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_run_shell_command": { + "alias": "experimental_run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n experimental_run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `experimental_shell_command`, in addition to `workdir` you only have the `command` and `dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the current working directory of the command, relative to the project root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "experimental_shell_command": { + "alias": "experimental_shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n experimental_shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n dependencies=[\":scripts\"],\n outputs=[\"results/\", \"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output from the command logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "outputs", + "default": null, + "description": "Specify the shell command output files and directories.\n\nUse a trailing slash on directory names, i.e. `my_dir/`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": null, + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `file` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go', '*.s')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) when running this package's tests.\n\nIf this field is not set, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'templates/*.yaml', 'templates/*.tpl')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this helm chart to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart" + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "excludes", + "default": null, + "description": "A list of unversioned coordinates (i.e. `group:artifact`) that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nThese values are passed directly to Coursier, and if specified incorrectly will show a parse error from Coursier.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., web.xml) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants. The generated targets will have the correct version based on the `version` in your `pants.toml`, and they will work with dependency inference.\n\nBecause the Plugin API is not yet stable, the version is set automatically for you to improve stability. If you're currently using a dev release, the version will be set to that exact dev release. If you're using a release candidate (rc) or stable release, the version will allow any non-dev-release release within the release series, e.g. `>=2.11.0rc0,<2.12`.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n}\n```\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same entry_point in multiple keys, so long as you don't override the same field more than one time for the entry_point.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g.,\"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.11/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g.,\"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.11/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.11/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `protobuf_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.proto\": {\"grpc\": True]},\n \"bar.proto\": {\"description\": \"our user model\"]},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.11/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the `name` of the `pyoxidizer_target`. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by $ or surrounded with ${ }.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted entry_point passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or []).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets filesystem_resources.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.11/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.11/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: 'path.to.module'.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.11/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the Pex. This is most useful with Lambda Layers to make code uploads smaller when deps are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.11/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\nExample:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies \n\n", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.11/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing setup.py, setup.cfg, pyproject.toml files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the long_description field in setup.py.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.11/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'cloud_function.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.", + "provider": "", + "required": false, + "type_hint": "'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be 'event' or 'http'. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to --trigger-http.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style file.\n\nThis works with pip-style requirements files: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nInstead of pip-style VCS requirements, use direct references from PEP 440: https://www.python.org/dev/peps/pep-0440/#direct-references.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style file." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.11/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.py\": {\"timeout\": 120]},\n \"bar_test.py\": {\"timeout\": 200]},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `resource` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala')).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\n", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala'))." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shell_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shunit2_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.sh\": {\"timeout\": 120]},\n \"bar_test.sh\": {\"timeout\": 200]},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee https://www.pantsbuild.org/v2.11/docs/thrift-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `thrift_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.11/docs/targets#target-addresses and https://www.pantsbuild.org/v2.11/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + } + }, + "rule_output_type_to_rule_infos": { + "AddressToDependees": [ + { + "description": "Map all targets to their dependees", + "help": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.project_info.dependees.map_addresses_to_dependees", + "output_desc": "AddressToDependees(mapping: pants.util.frozendict.FrozenDict[pants.build_graph.address.Address, pants.util.ordered_set.FrozenOrderedSet[pants.build_graph.address.Address]])", + "output_type": "AddressToDependees", + "provider": "pants.backend.project_info" + } + ], + "AllAssetTargets": [ + { + "description": "Find all assets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets", + "AllAssetTargetsRequest" + ], + "name": "pants.core.target_types.find_all_assets", + "output_desc": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "output_type": "AllAssetTargets", + "provider": "pants.core" + } + ], + "AllAssetTargetsByPath": [ + { + "description": "Mapping assets by path", + "help": null, + "input_gets": [], + "input_types": [ + "AllAssetTargets" + ], + "name": "pants.core.target_types.map_assets_by_path", + "output_desc": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + } + ], + "AllGoTargets": [ + { + "description": "Find all Go targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.find_all_go_targets", + "output_desc": null, + "output_type": "AllGoTargets", + "provider": "pants.backend.experimental.go" + } + ], + "AllJavaTargets": [ + { + "description": "Find all Java targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_desc": null, + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + } + ], + "AllJvmArtifactTargets": [ + { + "description": "Find all jvm_artifact targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_desc": null, + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + } + ], + "AllJvmTypeProvidingTargets": [ + { + "description": "Find all targets with experimental_provides fields in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_desc": null, + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + } + ], + "AllOwnedSources": [ + { + "description": "Determine all files already owned by targets", + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_desc": "All files in the project already owned by targets.", + "output_type": "AllOwnedSources", + "provider": "pants.core" + } + ], + "AllProtobufTargets": [ + { + "description": "Find all Protobuf targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_desc": null, + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "AllPytestPluginSetups": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": [ + "AllPytestPluginSetupsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_desc": null, + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + } + ], + "AllPythonTargets": [ + { + "description": "Find all Python targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_desc": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + } + ], + "AllScalaPluginTargets": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_desc": null, + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + } + ], + "AllScalaTargets": [ + { + "description": "Find all Scala targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_desc": null, + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + } + ], + "AllShellTargets": [ + { + "description": "Find all Shell targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_desc": null, + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + } + ], + "AllSourceRoots": [ + { + "description": "Compute all source roots", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootConfig" + ], + "name": "pants.source.source_root.all_roots", + "output_desc": null, + "output_type": "AllSourceRoots", + "provider": "pants.core" + } + ], + "AllThirdPartyPackages": [ + { + "description": "Download and analyze all third-party Go packages", + "help": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": [ + "AllThirdPartyPackagesRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_desc": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + } + ], + "AllThriftTargets": [ + { + "description": "Find all Thrift targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_desc": null, + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "AnalyzedThirdPartyModule": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyModuleRequest", + "PackageAnalyzerSetup", + "GolangSubsystem" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_desc": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + } + ], + "AncestorFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "AncestorFilesRequest" + ], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_desc": "Any ancestor files found.", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + } + ], + "AnonymousTelemetry": [ + { + "description": null, + "help": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_desc": null, + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + } + ], + "ApacheThriftSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_desc": "ApacheThriftSetup(path: 'str')", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ApacheThriftSubsystem": [ + { + "description": null, + "help": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_desc": null, + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ArtifactRequirements": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "GatherJvmCoordinatesRequest" + ], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_desc": "An ordered list of Coordinates used as requirements.", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + } + ], + "AssemblyPostCompilation": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPostCompilationRequest" + ], + "name": "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "output_desc": "AssemblyPostCompilation(result: 'FallibleProcessResult', merged_output_digest: 'Digest | None')", + "output_type": "AssemblyPostCompilation", + "provider": "pants.backend.experimental.go" + } + ], + "Autoflake": [ + { + "description": null, + "help": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_autoflake", + "output_desc": null, + "output_type": "Autoflake", + "provider": "pants.backend.experimental.python.lint.autoflake" + } + ], + "AvailableThirdPartyArtifacts": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_desc": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + } + ], + "BSPBuildTargets": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuildTarget, ResolveJavaBSPBuildTargetRequest, ..)" + ], + "input_types": [ + "JavaBSPBuildTargetsRequest", + "AllJavaTargets", + "BSPContext" + ], + "name": "pants.backend.java.bsp.rules.bsp_resolve_all_java_build_targets", + "output_desc": "Response type for a BSPBuildTargetsRequest.", + "output_type": "BSPBuildTargets", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolveScalaBSPBuildTargetResult, ResolveScalaBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsRequest", + "AllScalaTargets", + "BSPContext" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_all_scala_build_targets", + "output_desc": "Response type for a BSPBuildTargetsRequest.", + "output_type": "BSPBuildTargets", + "provider": "pants.backend.experimental.scala" + } + ], + "BSPCompileResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPCompileFieldSet", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_desc": "Result of compilation of a target capable of target compilation.", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPCompileFieldSet", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_desc": "Result of compilation of a target capable of target compilation.", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + } + ], + "BSPContext": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "SessionValues" + ], + "name": "pants.bsp.rules.bsp_context", + "output_desc": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "output_type": "BSPContext", + "provider": "pants.core" + } + ], + "Bandit": [ + { + "description": null, + "help": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_bandit", + "output_desc": null, + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + } + ], + "BashBinary": [ + { + "description": "Finding the `bash` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "BashBinaryRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_bash", + "output_desc": "The `bash` binary.", + "output_type": "BashBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_desc": "The `bash` binary.", + "output_type": "BashBinary", + "provider": "pants.core" + } + ], + "BinaryPaths": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryPathRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_desc": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "output_type": "BinaryPaths", + "provider": "pants.core" + } + ], + "BinaryShims": [ + { + "description": null, + "help": "Creates a bin directory with shims for all requested binaries.\n\nUseful as input digest for a Process to setup a `bin` directory for PATH.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryShimsRequest", + "BashBinary", + "MkdirBinary", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_desc": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `bin_directory` added to\nPATH so that the binaries are available for execution.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "output_type": "BinaryShims", + "provider": "pants.core" + } + ], + "Black": [ + { + "description": null, + "help": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_black", + "output_desc": null, + "output_type": "Black", + "provider": "pants.core" + } + ], + "BufSubsystem": [ + { + "description": null, + "help": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buf", + "output_desc": null, + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + } + ], + "BuildGoPackageRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "FallibleBuildGoPackageRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_desc": null, + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + } + ], + "BuildPexResult": [ + { + "description": null, + "help": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexCliProcess, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PexRequest", + "PythonSetup", + "PythonRepos", + "Platform", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_desc": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "output_type": "BuildPexResult", + "provider": "pants.core" + } + ], + "BuildSystem": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "BuildSystemRequest", + "Setuptools" + ], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_desc": "A PEP 517/518 build system configuration.", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + } + ], + "BuildTarget": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)", + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "ResolveJavaBSPBuildTargetRequest", + "UnionMembership" + ], + "name": "pants.backend.java.bsp.rules.bsp_resolve_one_java_build_target", + "output_desc": "Build target contains metadata about an artifact (for example library, test, or binary\nartifact)", + "output_type": "BuildTarget", + "provider": "pants.backend.experimental.java" + } + ], + "BuiltGoPackage": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "FallibleBuiltGoPackage" + ], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_desc": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + } + ], + "BuiltPackage": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": [ + "ArchiveFieldSet" + ], + "name": "pants.core.target_types.package_archive_target", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + { + "description": "Create Python AWS Lambda", + "help": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonAwsLambdaFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.awslambda.python.rules.package_python_awslambda", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "ProcessCleanupOption" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + { + "description": "Package Go binary", + "help": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Package Helm chart", + "help": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmPackageFieldSet" + ], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + { + "description": null, + "help": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Producing a ZIP file containing _only_ the JAR manifest file for the `main_class`\n3. Creating a deploy jar with a broken ZIP index by concatenating all dependency JARs together,\n followed by the thin JAR we created\n4. Using the unix `zip` utility's repair function to fix the broken fat jar", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BashBinary", + "ZipBinary", + "DeployJarFieldSet" + ], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "PackageWarFileFieldSet", + "BashBinary", + "ZipBinary" + ], + "name": "pants.jvm.package.war.package_war", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + { + "description": "Create Python Google Cloud Function", + "help": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonGoogleCloudFunctionFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(Pex, PexFromTargetsRequest, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup" + ], + "name": "pants.backend.python.goals.setup_py.package_python_dist", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + } + ], + "BuiltPackageDependencies": [ + { + "description": "Build runtime package dependencies for tests", + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "BuildPackageDependenciesRequest" + ], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_desc": null, + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + } + ], + "Check": [ + { + "description": "`check` goal", + "help": null, + "input_gets": [ + "Get(CheckResults, CheckRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Targets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_desc": null, + "output_type": "Check", + "provider": "pants.core" + } + ], + "CheckResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_desc": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "CheckResults": [ + { + "description": "Check Go compilation", + "help": null, + "input_gets": [ + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": [ + "GoCheckRequest" + ], + "name": "pants.backend.go.goals.check.check_go", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Check javac compilation", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "JavacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.goals.check.javac_check", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Check compilation for Scala", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ScalacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(StyleSetup, StyleSetupRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": [ + "TerraformCheckRequest", + "TerraformValidateSubsystem" + ], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": "Typecheck using MyPy", + "help": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "CheckSubsystem": [ + { + "description": null, + "help": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_check", + "output_desc": null, + "output_type": "CheckSubsystem", + "provider": "pants.core" + } + ], + "ChmodBinary": [ + { + "description": "Finding the `chmod` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_desc": null, + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ChmodBinaryRequest", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_chmod_wrapper", + "output_desc": null, + "output_type": "ChmodBinary", + "provider": "pants.core" + } + ], + "ChosenPythonResolve": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "ChosenPythonResolveRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_desc": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + } + ], + "Classpath": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "ClasspathEntryRequestFactory" + ], + "name": "pants.jvm.classpath.classpath", + "output_desc": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + } + ], + "ClasspathEntry": [ + { + "description": null, + "help": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "CoursierLockfileEntry" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_desc": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "ScalaLibraryRequest" + ], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_desc": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "FallibleClasspathEntry" + ], + "name": "pants.jvm.compile.required_classfiles", + "output_desc": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + } + ], + "ClasspathEntryRequestFactory": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "UnionMembership" + ], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_desc": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + } + ], + "ClasspathEntryRequests": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_desc": null, + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + } + ], + "CompileResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)", + "Get(BSPCompileResult, BSPCompileFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileParams", + "BSPContext", + "UnionMembership", + "Workspace" + ], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_desc": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "output_type": "CompileResult", + "provider": "pants.core" + } + ], + "CompletePlatforms": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "PexCompletePlatformsField" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_desc": null, + "output_type": "CompletePlatforms", + "provider": "pants.core" + } + ], + "ConfigFiles": [ + { + "description": "Find config files", + "help": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ConfigFilesRequest" + ], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_desc": "Config files used by a tool run by Pants.", + "output_type": "ConfigFiles", + "provider": "pants.core" + } + ], + "CountLinesOfCode": [ + { + "description": "`count-loc` goal", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsSnapshot" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_desc": null, + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + } + ], + "CountLinesOfCodeSubsystem": [ + { + "description": null, + "help": "Count lines of code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_count_loc", + "output_desc": null, + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Coursier": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBinary" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_desc": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierResolveInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_desc": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierResolveKey": [ + { + "description": null, + "help": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": [ + "Get(Digest, PathGlobs, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_desc": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierResolvedLockfile": [ + { + "description": null, + "help": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_desc": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "CoursierResolveKey" + ], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_desc": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierSubsystem": [ + { + "description": null, + "help": "A dependency resolver for the Maven ecosystem.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coursier", + "output_desc": null, + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "CoverageConfig": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_desc": "CoverageConfig(digest: 'Digest', path: 'str')", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + } + ], + "CoverageReports": [ + { + "description": "Generate Pytest coverage reports", + "help": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "ProcessCleanupOption" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_desc": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + } + ], + "CoverageSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_desc": "CoverageSetup(pex: 'VenvPex')", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + } + ], + "CoverageSubsystem": [ + { + "description": null, + "help": "Configuration for Python test coverage measurement.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_desc": null, + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + } + ], + "Dependees": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DependeesRequest", + "AddressToDependees" + ], + "name": "pants.backend.project_info.dependees.find_dependees", + "output_desc": null, + "output_type": "Dependees", + "provider": "pants.backend.project_info" + } + ], + "DependeesGoal": [ + { + "description": "`dependees` goal", + "help": null, + "input_gets": [ + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "DependeesSubsystem", + "Console" + ], + "name": "pants.backend.project_info.dependees.dependees_goal", + "output_desc": null, + "output_type": "DependeesGoal", + "provider": "pants.backend.project_info" + } + ], + "DependeesSubsystem": [ + { + "description": null, + "help": "List all targets that depend on any of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependees", + "output_desc": null, + "output_type": "DependeesSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Dependencies": [ + { + "description": "`dependencies` goal", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "Addresses", + "DependenciesSubsystem" + ], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_desc": null, + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + } + ], + "DependenciesSubsystem": [ + { + "description": null, + "help": "List the dependencies of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependencies", + "output_desc": null, + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + } + ], + "DependencyModulesResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DependencyModulesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_desc": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + } + ], + "DependencySourcesResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DependencySourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_desc": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + } + ], + "DiffBinary": [ + { + "description": "Finding the `diff` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_desc": null, + "output_type": "DiffBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DiffBinaryRequest", + "DiffBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_diff_wrapper", + "output_desc": null, + "output_type": "DiffBinary", + "provider": "pants.core" + } + ], + "Digest": [ + { + "description": "Creating an archive file", + "help": null, + "input_gets": [ + "Get(ZipBinary, ZipBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CreateArchive" + ], + "name": "pants.core.util_rules.archive.create_archive", + "output_desc": null, + "output_type": "Digest", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "HelmChartMetadata" + ], + "name": "pants.backend.helm.util_rules.chart.render_chart_metadata", + "output_desc": null, + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + } + ], + "DisjointSourcePutativeTarget": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, AddressSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PutativeTarget" + ], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_desc": "Putative target whose sources don't overlap with those of any existing targets.", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + } + ], + "DistBuildChroot": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.generate_chroot", + "output_desc": "A chroot containing PEP 517 build setup and the sources it operates on.", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + } + ], + "DistBuildResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DistBuildRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_desc": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + } + ], + "DistBuildSources": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_sources", + "output_desc": "The sources required to build a distribution.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + } + ], + "DistDir": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GlobalOptions", + "BuildRoot" + ], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_desc": "The directory to which we write distributable files.", + "output_type": "DistDir", + "provider": "pants.core" + } + ], + "Docformatter": [ + { + "description": null, + "help": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docformatter", + "output_desc": null, + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + } + ], + "DockerBinary": [ + { + "description": "Finding the `docker` binary and related tooling", + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": [ + "DockerBinaryRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_binary.find_docker", + "output_desc": "The `docker` binary.", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DockerBinary, DockerBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_desc": "The `docker` binary.", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + } + ], + "DockerBuildArgs": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DockerBuildArgsRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_desc": null, + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + } + ], + "DockerBuildContext": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "DockerBuildContextRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_desc": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', dockerfile: 'str', interpolation_context: 'DockerInterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + } + ], + "DockerBuildEnvironment": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_desc": "DockerBuildEnvironment(environment: 'Environment')", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + } + ], + "DockerOptions": [ + { + "description": null, + "help": "Options for interacting with Docker.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docker", + "output_desc": null, + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + } + ], + "DockerfileInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": [ + "DockerfileInfoRequest" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_desc": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', putative_target_addresses: 'tuple[str, ...]' = (), version_tags: 'tuple[str, ...]' = (), build_args: 'DockerBuildArgs' = DockerBuildArgs(), from_image_build_arg_names: 'tuple[str, ...]' = (), copy_sources: 'tuple[str, ...]' = ())", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + } + ], + "DockerfileParser": [ + { + "description": null, + "help": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_desc": null, + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + } + ], + "DownloadedExternalTool": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ExternalToolRequest" + ], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_desc": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + } + ], + "EditedBuildFiles": [ + { + "description": "Edit BUILD files with new targets", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "EditBuildFilesRequest", + "TailorSubsystem" + ], + "name": "pants.core.goals.tailor.edit_build_files", + "output_desc": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + } + ], + "Export": [ + { + "description": "`export` goal", + "help": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "Targets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir" + ], + "name": "pants.core.goals.export.export", + "output_desc": null, + "output_type": "Export", + "provider": "pants.core" + } + ], + "ExportCodegen": [ + { + "description": "`export-codegen` goal", + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Targets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_desc": null, + "output_type": "ExportCodegen", + "provider": "pants.backend.docker" + } + ], + "ExportCodegenSubsystem": [ + { + "description": null, + "help": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_desc": null, + "output_type": "ExportCodegenSubsystem", + "provider": "pants.backend.docker" + } + ], + "ExportResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "_ExportVenvRequest", + "PythonSetup", + "PexPEX" + ], + "name": "pants.backend.python.goals.export.export_virtualenv", + "output_desc": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = ())", + "output_type": "ExportResult", + "provider": "pants.backend.python" + } + ], + "ExportResults": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ExportResult, _ExportVenvRequest, ..)" + ], + "input_types": [ + "ExportVenvsRequest", + "PythonSetup", + "DistDir" + ], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_desc": null, + "output_type": "ExportResults", + "provider": "pants.backend.python" + } + ], + "ExportSubsystem": [ + { + "description": null, + "help": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export", + "output_desc": null, + "output_type": "ExportSubsystem", + "provider": "pants.core" + } + ], + "ExportedTarget": [ + { + "description": "Get exporting owner for target", + "help": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, AddressSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "OwnedDependency" + ], + "name": "pants.backend.python.goals.setup_py.get_exporting_owner", + "output_desc": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + } + ], + "ExportedTargetRequirements": [ + { + "description": "Compute distribution's 3rd party requirements", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.get_requirements", + "output_desc": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + } + ], + "ExtractedArchive": [ + { + "description": "Extracting an archive file", + "help": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary, UnzipBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(GunzipBinary, GunzipBinaryRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Digest" + ], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_desc": "The result of extracting an archive.", + "output_type": "ExtractedArchive", + "provider": "pants.core" + } + ], + "FallibleAssemblyPreCompilation": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPreCompilationRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "output_desc": "FallibleAssemblyPreCompilation(result: 'AssemblyPreCompilation | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleAssemblyPreCompilation", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleBuildGoPackageRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "ImportPathToPackages", + "GoProtobufImportPathMapping", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_desc": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": [ + "GoCodegenBuildProtobufRequest", + "GoProtobufImportPathMapping" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_desc": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + { + "description": "Set up Go compilation request", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_desc": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleBuiltGoPackage": [ + { + "description": "Compile with Go", + "help": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(FallibleAssemblyPreCompilation, AssemblyPreCompilationRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(AssemblyPostCompilation, AssemblyPostCompilationRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BuildGoPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_desc": "Fallible version of `BuiltGoPackage` with error details.", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleClasspathEntries": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ClasspathEntryRequests" + ], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_desc": null, + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + } + ], + "FallibleClasspathEntry": [ + { + "description": "Fetch with coursier", + "help": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierFetchRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Compile with scalac", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "Scalac", + "GlobalScalacPlugins", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Compile with javac", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": [ + "DeployJarClasspathEntryRequest" + ], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Assemble resources", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + } + ], + "FallibleFirstPartyPkgAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgAnalysisRequest", + "PackageAnalyzerSetup", + "GolangSubsystem" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_desc": "Metadata for a Go package, but fallible if our analysis failed.", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleFirstPartyPkgDigest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgDigestRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_desc": "The source files for a Go package, but fallible if embed preparation failed.", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleJavaSourceDependencyAnalysisResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_desc": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + } + ], + "FallibleScalaSourceDependencyAnalysisResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "SourceFiles" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_desc": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + } + ], + "FallibleThirdPartyPkgAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyPackageRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_desc": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + } + ], + "FileDigest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "ExtractFileDigest" + ], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_desc": null, + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + } + ], + "Filedeps": [ + { + "description": "`filedeps` goal", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, Address, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "Console", + "FiledepsSubsystem", + "BuildRoot", + "Addresses" + ], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_desc": null, + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + } + ], + "FiledepsSubsystem": [ + { + "description": null, + "help": "List all source and BUILD files a target depends on.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filedeps", + "output_desc": null, + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + } + ], + "FilterGoal": [ + { + "description": "`filter` goal", + "help": null, + "input_gets": [], + "input_types": [ + "UnexpandedTargets", + "FilterSubsystem", + "Console", + "RegisteredTargetTypes" + ], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_desc": null, + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + } + ], + "FilterSubsystem": [ + { + "description": null, + "help": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filter", + "output_desc": null, + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + } + ], + "FinalizedSetupKwargs": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "output_desc": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + } + ], + "FirstPartyPkgImportPath": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": [ + "FirstPartyPkgImportPathRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_desc": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + } + ], + "FirstPartyPythonMappingImpl": [ + { + "description": "Creating map of first party Python targets to Python modules", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_desc": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + { + "description": "Creating map of Protobuf targets to generated Python modules", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_desc": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Creating map of Thrift targets to generated Python modules", + "help": null, + "input_gets": [ + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_desc": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "FirstPartyPythonModuleMapping": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_desc": "A merged mapping of each resolve name to the first-party module names contained and their\nowning addresses.\n\nThis mapping may have been constructed from multiple distinct implementations, e.g.\nimplementations for each codegen backends.", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + } + ], + "FirstPartySymbolMapping": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SymbolMap, FirstPartyMappingRequest, ..)" + ], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_first_party_module_mappings", + "output_desc": "A merged mapping of package names to owning addresses.", + "output_type": "FirstPartySymbolMapping", + "provider": "pants.backend.experimental.java" + } + ], + "Flake8": [ + { + "description": null, + "help": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_flake8", + "output_desc": null, + "output_type": "Flake8", + "provider": "pants.backend.python" + } + ], + "Flake8FirstPartyPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Flake8" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_desc": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + } + ], + "Fmt": [ + { + "description": "`fmt` goal", + "help": null, + "input_gets": [ + "Get(_LanguageFmtResults, _LanguageFmtRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Console", + "Targets", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_desc": null, + "output_type": "Fmt", + "provider": "pants.core" + } + ], + "FmtResult": [ + { + "description": "Format with buf format", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BufFormatRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + { + "description": "Format with gofmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GofmtRequest", + "GofmtSubsystem" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Format with Google Java Format", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "GoogleJavaFormatRequest", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": "Format with Autoflake", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "AutoflakeRequest", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": "Format with pyupgrade", + "help": null, + "input_gets": [], + "input_types": [ + "PyUpgradeResult", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + { + "description": "Format with scalafmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalafmtRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + { + "description": "Format with `terraform fmt`", + "help": null, + "input_gets": [ + "Get(StyleSetup, StyleSetupRequest, ..)", + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TffmtRequest", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": "Format with Black", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BlackRequest", + "Black" + ], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.black" + }, + { + "description": "Format with docformatter", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "DocformatterRequest", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": "Format with isort", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "IsortRequest", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": "Format with yapf", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "YapfRequest", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": "Format with shfmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ShfmtRequest", + "Shfmt" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_desc": "FmtResult(input: 'Digest', output: 'Digest', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "FmtSubsystem": [ + { + "description": null, + "help": "Autoformat source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fmt", + "output_desc": null, + "output_type": "FmtSubsystem", + "provider": "pants.core" + } + ], + "GenerateJvmLockfile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_desc": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', artifacts: 'ArtifactRequirements')", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": [ + "GenerateJvmLockfileFromTool" + ], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_desc": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', artifacts: 'ArtifactRequirements')", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + } + ], + "GenerateJvmLockfileFromTool": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalapbcToolLockfileSentinel", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GlobalScalacPluginsToolLockfileSentinel", + "_LoadedGlobalScalacPlugins", + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.generate_global_scalac_plugins_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "JunitToolLockfileSentinel", + "JUnit" + ], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalatestToolLockfileSentinel", + "Scalatest" + ], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalafmtToolLockfileSentinel", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "GenerateLockfileResult": [ + { + "description": "Generate Python lockfile", + "help": null, + "input_gets": [ + "Get(ProcessResult, PexCliProcess, ..)", + "Get(MaybeWarnPythonRepos, MaybeWarnPythonReposRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "PoetrySubsystem", + "GenerateLockfilesSubsystem", + "PythonRepos", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_desc": "The result of generating a lockfile for a particular resolve.", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.docker" + }, + { + "description": "Generate JVM lockfile", + "help": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_desc": "The result of generating a lockfile for a particular resolve.", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + } + ], + "GenerateLockfilesGoal": [ + { + "description": "`generate-lockfiles` goal", + "help": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, RequestedUserResolveNames, ..)", + "Get(WrappedGenerateLockfile, GenerateToolLockfileSentinel, ..)", + "Get(GenerateLockfileResult, GenerateLockfile, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_desc": null, + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + } + ], + "GenerateLockfilesSubsystem": [ + { + "description": null, + "help": "Generate lockfiles for Python third-party dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_desc": null, + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + } + ], + "GeneratePythonLockfile": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "LambdexLockfileSentinel", + "Lambdex", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "MypyProtobufLockfileSentinel", + "PythonProtobufMypyPlugin", + "PythonSetup" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DockerfileParserLockfileSentinel", + "DockerfileParser", + "PythonSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "TwineLockfileSentinel", + "TwineSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AutoflakeLockfileSentinel", + "Autoflake", + "PythonSetup" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PyUpgradeLockfileSentinel", + "PyUpgrade", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "TerraformHcl2ParserLockfileSentinel", + "TerraformHcl2Parser", + "PythonSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "CoveragePyLockfileSentinel", + "CoverageSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by iPython in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "IPythonLockfileSentinel", + "IPython", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by Pytest in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "PytestLockfileSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by setuptools in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "SetuptoolsLockfileSentinel", + "Setuptools", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by Bandit in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditLockfileSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": "Determine Black interpreter constraints (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackLockfileSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.black" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DocformatterLockfileSentinel", + "Docformatter", + "PythonSetup" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for lockfile usage)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8LockfileSentinel", + "Flake8FirstPartyPlugins", + "Flake8", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "IsortLockfileSentinel", + "Isort", + "PythonSetup" + ], + "name": "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": "Determine all Python interpreter versions used by Pylint in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "PylintLockfileSentinel", + "PylintFirstPartyPlugins", + "Pylint", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pylint" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "YapfLockfileSentinel", + "Yapf", + "PythonSetup" + ], + "name": "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": "Determine MyPy interpreter constraints (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "MyPyLockfileSentinel", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "GeneratedSetupPy": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.generate_setup_py", + "output_desc": "GeneratedSetupPy(digest: 'Digest')", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + } + ], + "GeneratedSources": [ + { + "description": "Relocating loose files for `relocated_files` targets", + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "RelocateFilesViaCodegenRequest" + ], + "name": "pants.core.target_types.relocate_files", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + { + "description": "Generate Python from Protobuf", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Generate Python from Thrift", + "help": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateDockerContextFiles" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateDockerfileRequest" + ], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + { + "description": "Generate Go source files from Protobuf", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + { + "description": "Generate Java from Protobuf", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + { + "description": "Generate Scala from Protobuf", + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + { + "description": "Running shell command", + "help": null, + "input_gets": [ + "Get(ProcessResult, ShellCommandProcessRequest, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "GenerateFilesFromShellCommandRequest" + ], + "name": "pants.backend.shell.shell_command.run_shell_command", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + } + ], + "GeneratedTargets": [ + { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "help": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromGoModRequest", + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateTargetsFromPexBinaries", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "PythonSetup" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": "Generate `python_requirement` targets from requirements.txt", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + } + ], + "GeneratedTestMain": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GenerateTestMainRequest" + ], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_desc": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + } + ], + "GeneratedThriftSources": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "GenerateThriftSourcesRequest", + "ApacheThriftSetup" + ], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_desc": "GeneratedThriftSources(snapshot: 'Snapshot')", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "GlobalOptions": [ + { + "description": null, + "help": "Options to control the overall behavior of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_", + "output_desc": null, + "output_type": "GlobalOptions", + "provider": "pants.core" + } + ], + "GlobalRequirementConstraints": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_desc": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + } + ], + "GlobalScalacPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GlobalScalacPluginsToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "_LoadedGlobalScalacPlugins" + ], + "name": "pants.backend.scala.compile.scalac_plugins.global_scalac_plugins", + "output_desc": "GlobalScalacPlugins(names: 'tuple[str, ...]', classpath: 'ToolClasspath')", + "output_type": "GlobalScalacPlugins", + "provider": "pants.backend.experimental.scala" + } + ], + "GoBinaryMainPackage": [ + { + "description": "Determine first-party package used by `go_binary` target", + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)", + "Get(Targets, AddressSpecs, ..)", + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "GoBinaryMainPackageRequest" + ], + "name": "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary", + "output_desc": "GoBinaryMainPackage(address: 'Address')", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + } + ], + "GoCompileActionIdResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)" + ], + "input_types": [ + "GoCompileActionIdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_desc": "GoCompileActionIdResult(action_id: 'str')", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + } + ], + "GoModInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoModInfoRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_desc": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + } + ], + "GoProtobufImportPathMapping": [ + { + "description": "Map import paths for all Go Protobuf targets.", + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_desc": "Maps import paths of Go Protobuf packages to the addresses.", + "output_type": "GoProtobufImportPathMapping", + "provider": "pants.backend.experimental.codegen.protobuf.go" + } + ], + "GoRoot": [ + { + "description": "Find Go binary", + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GolangSubsystem" + ], + "name": "pants.backend.go.subsystems.golang.setup_goroot", + "output_desc": "Path to the Go installation (the `GOROOT`).", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + } + ], + "GoSdkRunSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_desc": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + } + ], + "GoSdkToolIDResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoSdkToolIDRequest" + ], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_desc": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + } + ], + "GoStdLibImports": [ + { + "description": "Determine Go std lib's imports", + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "output_desc": "A mapping of standard library import paths to the `.a` static file paths for that import\npath.\n\nFor example, \"net/smtp\": \"/absolute_path_to_goroot/pkg/darwin_arm64/net/smtp.a\".", + "output_type": "GoStdLibImports", + "provider": "pants.backend.experimental.go" + } + ], + "GoTestSubsystem": [ + { + "description": null, + "help": "Options for Go tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_test", + "output_desc": null, + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + } + ], + "GofmtSubsystem": [ + { + "description": null, + "help": "Gofmt-specific options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_gofmt", + "output_desc": null, + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + } + ], + "GolangSubsystem": [ + { + "description": null, + "help": "Options for Golang support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_golang", + "output_desc": null, + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + } + ], + "GoogleJavaFormatSubsystem": [ + { + "description": null, + "help": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_desc": null, + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + } + ], + "GrpcPythonPlugin": [ + { + "description": null, + "help": "The gRPC Protobuf plugin for Python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_desc": null, + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "GunzipBinary": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PythonBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip", + "output_desc": "GunzipBinary(python: 'PythonBinary')", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GunzipBinaryRequest", + "GunzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip_wrapper", + "output_desc": "GunzipBinary(python: 'PythonBinary')", + "output_type": "GunzipBinary", + "provider": "pants.core" + } + ], + "Hadolint": [ + { + "description": null, + "help": "A linter for Dockerfiles.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_hadolint", + "output_desc": null, + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + } + ], + "HandleJavacOptionsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)" + ], + "input_types": [ + "HandleJavacOptionsRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_desc": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + } + ], + "HandleScalacOptionsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)" + ], + "input_types": [ + "HandleScalacOptionsRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_desc": "HandleScalacOptionsResult(item: pants.backend.scala.bsp.spec.ScalacOptionsItem)", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + } + ], + "HelmBinary": [ + { + "description": "Download and configure Helm", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_desc": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmChart": [ + { + "description": "Collect all source code and subcharts of a Helm Chart", + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmChartRequest" + ], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_desc": "HelmChart(address: 'Address', metadata: 'HelmChartMetadata', snapshot: 'Snapshot')", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmChartMetadata": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "HelmChartMetaSourceField" + ], + "name": "pants.backend.helm.util_rules.chart.parse_chart_metadata_from_field", + "output_desc": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmChartSourceFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartSourceFilesRequest" + ], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_desc": "HelmChartSourceFiles(snapshot: 'Snapshot')", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmSubsystem": [ + { + "description": null, + "help": "The Helm command line (https://helm.sh)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm", + "output_desc": null, + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + } + ], + "IPython": [ + { + "description": null, + "help": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ipython", + "output_desc": null, + "output_type": "IPython", + "provider": "pants.backend.python" + } + ], + "ImportConfig": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ImportConfigRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.util_rules.import_analysis.generate_import_config", + "output_desc": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + } + ], + "ImportPathToPackages": [ + { + "description": "Map all Go targets to their import paths", + "help": null, + "input_gets": [ + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "AllGoTargets" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_desc": "ImportPathToPackages(mapping: 'FrozenDict[str, tuple[Address, ...]]')", + "output_type": "ImportPathToPackages", + "provider": "pants.backend.experimental.go" + } + ], + "InferredDependencies": [ + { + "description": "Inferring Python dependencies by analyzing source", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargets, AllAssetTargetsRequest, ..)", + "Get(AllAssetTargetsByPath, AllAssetTargets, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + { + "description": "Inferring Protobuf dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "InferProtobufDependencies", + "ProtobufMapping", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Inferring Thrift dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": "Infer dependencies on Protobuf sources for first-party Go packages", + "help": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoProtobufDependenciesRequest", + "GoProtobufImportPathMapping" + ], + "name": "pants.backend.codegen.protobuf.go.rules.infer_go_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + { + "description": "Infer dependencies for first-party Go packages", + "help": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoPackageDependenciesRequest", + "GoStdLibImports", + "ImportPathToPackages" + ], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Inferring Java dependencies by source analysis", + "help": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": [ + "InferJavaSourceDependencies" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Inferring Scala dependencies by analyzing sources", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "FirstPartySymbolMapping", + "ThirdPartyPackageToArtifactMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, AddressSpecs, ..)" + ], + "input_types": [ + "InferTerraformModuleDependenciesRequest" + ], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": "Inferring dependencies on `__init__.py` files", + "help": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + { + "description": "Inferring dependencies on `conftest.py` files", + "help": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + { + "description": "Inferring Shell dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": [ + "InferShellDependencies", + "ShellMapping", + "ShellSetup" + ], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + } + ], + "InitializeBuildResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "InitializeBuildParams", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_desc": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + } + ], + "InjectedDependencies": [ + { + "description": "Inferring dependency from the python_awslambda `handler` field", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonLambdaHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.awslambda.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "InjectPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "InjectApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": null, + "help": "Inspects COPY instructions in the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Addresses, AddressSpecs, ..)", + "Get(Targets, Addresses, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)" + ], + "input_types": [ + "InjectDockerDependencies" + ], + "name": "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.docker" + }, + { + "description": "Infer dependencies for third-party Go packages", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InjectGoThirdPartyPackageDependenciesRequest", + "GoStdLibImports", + "ImportPathToPackages" + ], + "name": "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "InjectGoBinaryMainDependencyRequest" + ], + "name": "pants.backend.go.target_type_rules.inject_go_binary_main_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "InjectScalaProtobufDependencies", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.inject_scalapb_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + { + "description": "Inject dependency on scala-library artifact for Scala target.", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InjectScalaLibraryDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Inject dependency on scala plugin artifacts for Scala target.", + "help": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": [ + "InjectScalaPluginDependenciesRequest" + ], + "name": "pants.backend.scala.dependency_inference.rules.inject_scala_plugin_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Inferring dependency from the python_google_cloud_function `handler` field", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonCloudFunctionHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.google_cloud_function.python" + }, + { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": "Inject dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.inject_python_distribution_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.python" + } + ], + "InternalJdk": [ + { + "description": null, + "help": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)" + ], + "input_types": [ + "JvmSubsystem" + ], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_desc": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + } + ], + "InterpreterConstraints": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "InterpreterConstraintsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_desc": null, + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + } + ], + "Isort": [ + { + "description": null, + "help": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_isort", + "output_desc": null, + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + } + ], + "JUnit": [ + { + "description": null, + "help": "The JUnit test framework (https://junit.org)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_junit", + "output_desc": null, + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + } + ], + "JavaInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_java_infer", + "output_desc": null, + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "JavaInferredDependencies": [ + { + "description": "Inferring Java dependencies and exports by source analysis", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "FirstPartySymbolMapping", + "ThirdPartyPackageToArtifactMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_desc": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + } + ], + "JavaParserCompiledClassfiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.java.dependency_inference.java_parser_launcher.build_processors", + "output_desc": "JavaParserCompiledClassfiles(digest: 'Digest')", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + } + ], + "JavaSourceDependencyAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "ProcessCleanupOption" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_desc": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + } + ], + "JavaSourceDependencyAnalysisRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "SourceFiles" + ], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_desc": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + } + ], + "JavacOptionsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": [ + "JavacOptionsParams" + ], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_desc": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + } + ], + "JavacSubsystem": [ + { + "description": null, + "help": "The javac Java source compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_javac", + "output_desc": null, + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "JdkEnvironment": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_desc": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int')", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + } + ], + "JvmSubsystem": [ + { + "description": null, + "help": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jvm", + "output_desc": null, + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "KnownUserResolveNames": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KnownPythonUserResolveNamesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_desc": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KnownJVMUserResolveNamesRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_desc": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + } + ], + "Lambdex": [ + { + "description": null, + "help": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lambdex", + "output_desc": null, + "output_type": "Lambdex", + "provider": "pants.backend.awslambda.python" + } + ], + "LinkedGoBinary": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "LinkGoBinaryRequest" + ], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_desc": "A linked Go binary stored in a `Digest`.", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + } + ], + "Lint": [ + { + "description": "`lint` goal", + "help": null, + "input_gets": [ + "Get(LintResults, LintTargetsRequest, ..)", + "Get(LintResults, LintFilesRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Targets", + "SpecsSnapshot", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_desc": null, + "output_type": "Lint", + "provider": "pants.core" + } + ], + "LintResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "BanditPartition", + "Bandit" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "output_desc": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Flake8Partition", + "Flake8", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "output_desc": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "PylintPartition", + "Pylint", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "output_desc": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + } + ], + "LintResults": [ + { + "description": "Lint with regex patterns", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "RegexLintRequest", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.project_info" + }, + { + "description": "Lint with buf format", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BufFormatRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + { + "description": "Lint with buf lint", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BufLintRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + { + "description": "Lint with Hadolint", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "HadolintRequest", + "Hadolint" + ], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.docker.lint.hadolint" + }, + { + "description": "Lint with gofmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GofmtRequest", + "GofmtSubsystem" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Lint Helm charts", + "help": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)" + ], + "input_types": [ + "HelmLintRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.helm" + }, + { + "description": "Lint with Google Java Format", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "GoogleJavaFormatRequest", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": "Lint with autoflake", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "AutoflakeRequest", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": "Lint with pyupgrade", + "help": null, + "input_gets": [], + "input_types": [ + "PyUpgradeResult", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + { + "description": "Lint with scalafmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "ScalafmtRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + { + "description": "Lint with `terraform fmt`", + "help": null, + "input_gets": [ + "Get(StyleSetup, StyleSetupRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": [ + "TffmtRequest", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": "Lint with Bandit", + "help": null, + "input_gets": [ + "Get(LintResult, BanditPartition, ..)" + ], + "input_types": [ + "BanditRequest", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": "Lint with Black", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BlackRequest", + "Black" + ], + "name": "pants.backend.python.lint.black.rules.black_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.black" + }, + { + "description": "Lint with docformatter", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "DocformatterRequest", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": "Lint with Flake8", + "help": null, + "input_gets": [ + "Get(LintResult, Flake8Partition, ..)" + ], + "input_types": [ + "Flake8Request", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": "Lint with isort", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "IsortRequest", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.isort_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": "Lint using Pylint", + "help": null, + "input_gets": [ + "Get(PylintPartitions, PylintRequest, ..)", + "Get(LintResult, PylintPartition, ..)" + ], + "input_types": [ + "PylintRequest", + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.pylint" + }, + { + "description": "Lint with yapf", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "YapfRequest", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": "Lint with Shellcheck", + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ShellcheckRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.shell.lint.shellcheck" + }, + { + "description": "Lint with shfmt", + "help": null, + "input_gets": [ + "Get(Setup, SetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ShfmtRequest", + "Shfmt" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "LintSubsystem": [ + { + "description": null, + "help": "Run all linters and/or formatters in check mode.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lint", + "output_desc": null, + "output_type": "LintSubsystem", + "provider": "pants.core" + } + ], + "List": [ + { + "description": "`list` goal", + "help": null, + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "Addresses", + "ListSubsystem", + "Console" + ], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_desc": null, + "output_type": "List", + "provider": "pants.backend.project_info" + } + ], + "ListSubsystem": [ + { + "description": null, + "help": "Lists all targets matching the file or target arguments.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_list", + "output_desc": null, + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + } + ], + "LoadedGoBinary": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "LoadedGoBinaryRequest" + ], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_desc": "LoadedGoBinary(digest: 'Digest')", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + } + ], + "LoadedLockfile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "LoadedLockfileRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_desc": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "output_type": "LoadedLockfile", + "provider": "pants.core" + } + ], + "LocalDistWheels": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_desc": "Contains the wheels isolated from a single local Python distribution.", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + } + ], + "LocalDistsPex": [ + { + "description": "Building local distributions", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "LocalDistsPexRequest" + ], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_desc": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + } + ], + "MacroRenames": [ + { + "description": "Determine how to rename Python macros to target generators", + "help": null, + "input_gets": [ + "Get(BuildFileAddress, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "AllTargets", + "MacroRenamesRequest" + ], + "name": "pants.backend.python.macros.deprecation_fixers.determine_macro_changes", + "output_desc": "MacroRenames(generators: 'tuple[GeneratorRename, ...]', generated: 'FrozenDict[Address, tuple[Address, str]]')", + "output_type": "MacroRenames", + "provider": "pants.backend.python" + } + ], + "MaterializeBuildTargetSourcesResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "MaterializeBuildTargetSourcesRequest", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_desc": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + } + ], + "MaterializeScalaRuntimeJarsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "MaterializeScalaRuntimeJarsRequest" + ], + "name": "pants.backend.scala.bsp.rules.materialize_scala_runtime_jars", + "output_desc": "MaterializeScalaRuntimeJarsResult(content: Snapshot)", + "output_type": "MaterializeScalaRuntimeJarsResult", + "provider": "pants.backend.experimental.scala" + } + ], + "MaterializedJvmPlugin": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "MaterializeJvmPluginRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_desc": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + } + ], + "MaterializedJvmPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "MaterializeJvmPluginsRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_desc": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + } + ], + "MaybeWarnPythonRepos": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "MaybeWarnPythonReposRequest", + "PythonRepos" + ], + "name": "pants.backend.python.goals.lockfile.maybe_warn_python_repos", + "output_desc": null, + "output_type": "MaybeWarnPythonRepos", + "provider": "pants.backend.docker" + } + ], + "MergedCoverageData": [ + { + "description": "Merge Pytest coverage data", + "help": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_desc": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + } + ], + "MkdirBinary": [ + { + "description": "Finding the `mkdir` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_desc": null, + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "MkdirBinaryRequest", + "MkdirBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_mkdir_wrapper", + "output_desc": null, + "output_type": "MkdirBinary", + "provider": "pants.core" + } + ], + "ModuleDescriptors": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ModuleDescriptorsRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_desc": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + } + ], + "MyPy": [ + { + "description": null, + "help": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy", + "output_desc": null, + "output_type": "MyPy", + "provider": "pants.backend.python" + } + ], + "MyPyConfigFile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_desc": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "MyPyFirstPartyPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_desc": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "MyPyPartitions": [ + { + "description": "Determine if necessary to partition MyPy input", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_desc": null, + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "Nailgun": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_desc": "Nailgun(classpath_entry: 'ClasspathEntry')", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + } + ], + "OptionalPex": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)" + ], + "input_types": [ + "OptionalPexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_desc": "OptionalPex(maybe_pex: 'Pex | None')", + "output_type": "OptionalPex", + "provider": "pants.core" + } + ], + "OptionalPexRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)" + ], + "input_types": [ + "_RepositoryPexRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_desc": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_desc": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + } + ], + "OptionalSourceRoot": [ + { + "description": null, + "help": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest", + "SourceRootConfig" + ], + "name": "pants.source.source_root.get_optional_source_root", + "output_desc": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + } + ], + "OptionalSourceRootsResult": [ + { + "description": null, + "help": "Rule to request source roots that may not exist.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_optional_source_roots", + "output_desc": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + } + ], + "OptionsChecker": [ + { + "description": "Check option values for Python macro syntax vs. target generator", + "help": null, + "input_gets": [ + "Get(MacroRenames, MacroRenamesRequest, ..)" + ], + "input_types": [ + "OptionsCheckerRequest", + "Flake8", + "Pylint", + "MyPy" + ], + "name": "pants.backend.python.macros.deprecation_fixers.maybe_warn_options_macro_references", + "output_desc": "Checks a hardcoded list of options for using deprecated addresses.\n\nThis is returned as a rule so that it acts as a singleton.", + "output_type": "OptionsChecker", + "provider": "pants.backend.python" + } + ], + "OwnedDependencies": [ + { + "description": "Find all code to be published in the distribution", + "help": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_owned_dependencies", + "output_desc": null, + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + } + ], + "OwningGoMod": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(UnexpandedTargets, AddressSpecs, ..)" + ], + "input_types": [ + "OwningGoModRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_go_mod", + "output_desc": "OwningGoMod(address: 'Address')", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + } + ], + "Package": [ + { + "description": "`package` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "DistDir" + ], + "name": "pants.core.goals.package.package_asset", + "output_desc": null, + "output_type": "Package", + "provider": "pants.core" + } + ], + "PackageAnalyzerSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_desc": "PackageAnalyzerSetup(digest: Digest, path: str)", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + } + ], + "PackageSubsystem": [ + { + "description": null, + "help": "Create a distributable package.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_package", + "output_desc": null, + "output_type": "PackageSubsystem", + "provider": "pants.core" + } + ], + "ParsedPythonDependencies": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ParsePythonDependenciesRequest" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_desc": "ParsedPythonDependencies(imports: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonImports, assets: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonAssetPaths)", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + } + ], + "ParsedShellImports": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ParseShellImportsRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_desc": null, + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + } + ], + "ParsedThrift": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParsedThriftRequest" + ], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_desc": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ParserSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_desc": "ParserSetup(pex: 'VenvPex')", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "TerraformHcl2Parser" + ], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_desc": "ParserSetup(pex: 'VenvPex')", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + } + ], + "Partition": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)" + ], + "input_types": [ + "SetupScalafmtPartition", + "InternalJdk" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "output_desc": "Partition(process: 'JvmProcess', description: 'str')", + "output_type": "Partition", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "PathsGoal": [ + { + "description": "`paths` goal", + "help": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "PathsSubsystem" + ], + "name": "pants.backend.project_info.paths.paths", + "output_desc": null, + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + } + ], + "PathsSubsystem": [ + { + "description": null, + "help": "List the paths between two addresses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_paths", + "output_desc": null, + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Peek": [ + { + "description": "`peek` goal", + "help": null, + "input_gets": [ + "Get(TargetDatas, UnexpandedTargets, ..)" + ], + "input_types": [ + "Console", + "PeekSubsystem", + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.peek", + "output_desc": null, + "output_type": "Peek", + "provider": "pants.backend.project_info" + } + ], + "PeekSubsystem": [ + { + "description": null, + "help": "Display BUILD target info", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_peek", + "output_desc": "Display detailed target information in JSON form.", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Pex": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)" + ], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_desc": "Wrapper for a digest containing a pex file created with some filename.", + "output_type": "Pex", + "provider": "pants.core" + } + ], + "PexBinaryDefaults": [ + { + "description": null, + "help": "Default settings for creating PEX executables.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_desc": null, + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + } + ], + "PexCli": [ + { + "description": null, + "help": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_desc": null, + "output_type": "PexCli", + "provider": "pants.core" + } + ], + "PexEnvironment": [ + { + "description": "Prepare environment for running PEXes", + "help": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBinary", + "PexRuntimeEnvironment", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_desc": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonExecutable | None' = None, venv_use_symlinks: 'bool' = False)", + "output_type": "PexEnvironment", + "provider": "pants.core" + } + ], + "PexFromTargetsRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RequirementsPexRequest" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirementspexrequest", + "output_desc": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None) -> 'None'", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + } + ], + "PexPEX": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "PexCli" + ], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_desc": "The Pex PEX binary.", + "output_type": "PexPEX", + "provider": "pants.core" + } + ], + "PexRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_desc": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None) -> 'None'", + "output_type": "PexRequest", + "provider": "pants.backend.python" + } + ], + "PexRequirements": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_desc": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + } + ], + "PexResolveInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "VenvPex" + ], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_desc": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, PexProcess, ..)" + ], + "input_types": [ + "PexPEX", + "Pex" + ], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_desc": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "output_type": "PexResolveInfo", + "provider": "pants.core" + } + ], + "PexRuntimeEnvironment": [ + { + "description": null, + "help": "How Pants uses Pex to run Python subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex", + "output_desc": null, + "output_type": "PexRuntimeEnvironment", + "provider": "pants.core" + } + ], + "PoetrySubsystem": [ + { + "description": null, + "help": "Used to generate lockfiles for third-party Python dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_poetry", + "output_desc": null, + "output_type": "PoetrySubsystem", + "provider": "pants.backend.docker" + } + ], + "Process": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonNativeCode", + "GlobalOptions", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "DockerfileParseRequest", + "ParserSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "GolangSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "Coursier", + "CoursierFetchProcess" + ], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "HelmProcess", + "HelmBinary" + ], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseTerraformModuleSources", + "ParserSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TerraformProcess", + "TerraformTool" + ], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ShellCommandProcessRequest", + "ShellSetup", + "BashBinary" + ], + "name": "pants.backend.shell.shell_command.prepare_shell_command_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.shell" + } + ], + "ProtobufMapping": [ + { + "description": "Creating map of Protobuf file names to Protobuf targets", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_desc": "A mapping of stripped .proto file names to their owning file address.", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "Protoc": [ + { + "description": null, + "help": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protoc", + "output_desc": null, + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "Publish": [ + { + "description": "`publish` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "PublishSubsystem" + ], + "name": "pants.core.goals.publish.run_publish", + "output_desc": null, + "output_type": "Publish", + "provider": "pants.core" + } + ], + "PublishProcesses": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(PublishProcesses, PublishRequest, ..)" + ], + "input_types": [ + "PublishProcessesRequest" + ], + "name": "pants.core.goals.publish.package_for_publish", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + } + ], + "PublishSubsystem": [ + { + "description": null, + "help": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_publish", + "output_desc": null, + "output_type": "PublishSubsystem", + "provider": "pants.core" + } + ], + "PutativeTargets": [ + { + "description": "Determine candidate Protobuf targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Determine candidate Thrift targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": "Determine candidate Docker targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + { + "description": "Determine candidate Go targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, AddressSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Determine candidate Java targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Determine candidate Scala targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Determine candidate Terraform targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeTerraformTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": "Determine candidate Python targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, AddressSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + { + "description": "Determine candidate shell targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.shell.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + } + ], + "PyConstraintsGoal": [ + { + "description": "`py-constraints` goal", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_desc": null, + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + } + ], + "PyConstraintsSubsystem": [ + { + "description": null, + "help": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_desc": null, + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + } + ], + "PyOxidizer": [ + { + "description": null, + "help": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_desc": null, + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + } + ], + "PyTest": [ + { + "description": null, + "help": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pytest", + "output_desc": null, + "output_type": "PyTest", + "provider": "pants.backend.python" + } + ], + "PyUpgrade": [ + { + "description": null, + "help": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_desc": null, + "output_type": "PyUpgrade", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + } + ], + "PyUpgradeResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PyUpgradeRequest", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.run_pyupgrade", + "output_desc": "PyUpgradeResult(process_result: 'FallibleProcessResult', original_digest: 'Digest')", + "output_type": "PyUpgradeResult", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + } + ], + "Pylint": [ + { + "description": null, + "help": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pylint", + "output_desc": null, + "output_type": "Pylint", + "provider": "pants.backend.python" + } + ], + "PylintFirstPartyPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_desc": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + } + ], + "PylintPartitions": [ + { + "description": "Determine if necessary to partition Pylint input", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "PylintRequest", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "output_desc": null, + "output_type": "PylintPartitions", + "provider": "pants.backend.python.lint.pylint" + } + ], + "PyoxidizerRunnerScript": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_desc": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + } + ], + "PytestPluginSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "RuntimePackagesPluginRequest" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_desc": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + } + ], + "PythonBinary": [ + { + "description": "Finding a `python` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "PythonBootstrap" + ], + "name": "pants.core.util_rules.system_binaries.find_python", + "output_desc": "A Python3 interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nPython is usable for `@rule` scripting independently of `pants.backend.python`, but currently\nthirdparty dependencies are not supported, because PEX lives in that backend.\n\nTODO: Consider extracting PEX out into the core in order to support thirdparty dependencies.", + "output_type": "PythonBinary", + "provider": "pants.core" + } + ], + "PythonBootstrap": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "PythonBootstrapSubsystem" + ], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_desc": "PythonBootstrap(environment: 'Environment', options: 'OptionValueContainer')", + "output_type": "PythonBootstrap", + "provider": "pants.core" + } + ], + "PythonBootstrapSubsystem": [ + { + "description": null, + "help": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_desc": null, + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + } + ], + "PythonExecutable": [ + { + "description": "Find Python interpreter for constraints", + "help": null, + "input_gets": [ + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_desc": "The BinaryPath of a Python executable.", + "output_type": "PythonExecutable", + "provider": "pants.core" + } + ], + "PythonInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_infer", + "output_desc": null, + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + } + ], + "PythonModuleOwners": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_desc": "The target(s) that own a Python module.\n\nIf >1 targets own the same module, and they're implementations (vs .pyi type stubs), they will\nbe put into `ambiguous` instead of `unambiguous`. `unambiguous` should never be > 2.", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + } + ], + "PythonNativeCode": [ + { + "description": null, + "help": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_desc": null, + "output_type": "PythonNativeCode", + "provider": "pants.core" + } + ], + "PythonProtobufMypyPlugin": [ + { + "description": null, + "help": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_desc": null, + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "PythonProtobufSubsystem": [ + { + "description": null, + "help": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.11/docs/protobuf-python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_desc": null, + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "PythonRepos": [ + { + "description": null, + "help": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_repos", + "output_desc": null, + "output_type": "PythonRepos", + "provider": "pants.core" + } + ], + "PythonSetup": [ + { + "description": null, + "help": "Options for Pants's Python backend.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python", + "output_desc": null, + "output_type": "PythonSetup", + "provider": "pants.core" + } + ], + "PythonSourceFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "PythonSourceFilesRequest", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_desc": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + } + ], + "RegexLintSubsystem": [ + { + "description": null, + "help": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files. To run on those, use `lint '**'` rather than `lint ::`, for example. Unfortunately, `--changed-since=` does not yet cause this linter to run. We are exploring how to improve both these gotchas.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_desc": null, + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + } + ], + "RenamedFieldTypes": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_field_types", + "output_desc": "Map deprecated field names to their new name, per target.", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + } + ], + "RenamedTargetTypes": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_target_types", + "output_desc": "Deprecated target type names to new names.", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + } + ], + "RenderedEmbedConfig": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_desc": "RenderedEmbedConfig(digest: 'Digest')", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + } + ], + "RenderedWarContent": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "RenderWarContentRequest" + ], + "name": "pants.jvm.package.war.render_war_content", + "output_desc": "RenderedWarContent(digest: Digest)", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + } + ], + "RenderedWarDeploymentDescriptor": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderWarDeploymentDescriptorRequest" + ], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_desc": "RenderedWarDeploymentDescriptor(digest: Digest)", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + } + ], + "Repl": [ + { + "description": "`repl` goal", + "help": null, + "input_gets": [ + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "ReplSubsystem", + "Targets", + "BuildRoot", + "UnionMembership", + "GlobalOptions", + "CompleteEnvironment" + ], + "name": "pants.core.goals.repl.run_repl", + "output_desc": null, + "output_type": "Repl", + "provider": "pants.core" + } + ], + "ReplRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaRepl", + "BashBinary", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_desc": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonRepl", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_desc": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_desc": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + } + ], + "ReplSubsystem": [ + { + "description": null, + "help": "Open a REPL with the specified code loadable.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_repl", + "output_desc": null, + "output_type": "ReplSubsystem", + "provider": "pants.core" + } + ], + "ResolveOneDependencyModuleResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)", + "Get(BSPDependencyModules, BSPDependencyModulesFieldSet, ..)" + ], + "input_types": [ + "ResolveOneDependencyModuleRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_desc": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + } + ], + "ResolveScalaBSPBuildTargetResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)", + "Get(MaterializeScalaRuntimeJarsResult, MaterializeScalaRuntimeJarsRequest, ..)", + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "ResolveScalaBSPBuildTargetRequest", + "JvmSubsystem", + "ScalaSubsystem", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_one_scala_build_target", + "output_desc": "ResolveScalaBSPBuildTargetResult(build_target: pants.bsp.spec.base.BuildTarget, scala_runtime: Snapshot)", + "output_type": "ResolveScalaBSPBuildTargetResult", + "provider": "pants.backend.experimental.scala" + } + ], + "ResolvedClasspathEntries": [ + { + "description": null, + "help": "Fetch every artifact in a lockfile.", + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [ + "CoursierResolvedLockfile" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_desc": "A collection of resolved classpath entries.", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + } + ], + "ResolvedPexEntryPoint": [ + { + "description": "Determining the entry point for a `pex_binary` target", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePexEntryPointRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_desc": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + } + ], + "ResolvedPythonAwsHandler": [ + { + "description": "Determining the handler for a `python_awslambda` target", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonAwsHandlerRequest" + ], + "name": "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "output_desc": "ResolvedPythonAwsHandler(val: str, file_name_used: bool)", + "output_type": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python" + } + ], + "ResolvedPythonDistributionEntryPoints": [ + { + "description": "Determining the entry points for a `python_distribution` target", + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "ResolvePythonDistributionEntryPointsRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_desc": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + } + ], + "ResolvedPythonGoogleHandler": [ + { + "description": "Determining the handler for a `python_google_cloud_function` target", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonGoogleHandlerRequest" + ], + "name": "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "output_desc": "ResolvedPythonGoogleHandler(val: str, file_name_used: bool)", + "output_type": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python" + } + ], + "RewrittenBuildFile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithYapfRequest", + "Yapf" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithBlackRequest", + "Black" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": "Check for deprecated target type names", + "help": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedTargetsRequest", + "RenamedTargetTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": "Check for deprecated field type names", + "help": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedFieldsRequest", + "RenamedFieldTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": "Change Python macros to target generators", + "help": null, + "input_gets": [ + "Get(MacroRenames, MacroRenamesRequest, ..)", + "Get(OptionsChecker, OptionsCheckerRequest, ..)" + ], + "input_types": [ + "UpdatePythonMacrosRequest", + "GlobalOptions", + "UpdateBuildFilesSubsystem" + ], + "name": "pants.backend.python.macros.deprecation_fixers.maybe_update_macros_references", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.backend.python" + } + ], + "Roots": [ + { + "description": "`roots` goal", + "help": null, + "input_gets": [], + "input_types": [ + "Console", + "RootsSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_desc": null, + "output_type": "Roots", + "provider": "pants.backend.project_info" + } + ], + "RootsSubsystem": [ + { + "description": null, + "help": "List the repo's registered source roots.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_roots", + "output_desc": null, + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Run": [ + { + "description": "`run` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(WrappedTarget, Address, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "GlobalOptions", + "Workspace", + "BuildRoot", + "CompleteEnvironment" + ], + "name": "pants.core.goals.run.run", + "output_desc": null, + "output_type": "Run", + "provider": "pants.core" + } + ], + "RunRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(__RuntimeJvm, JdkEnvironment, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "PexEnvironment" + ], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(Process, ShellCommandProcessRequest, ..)" + ], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.backend.shell.shell_command.run_shell_command_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + } + ], + "RunSubsystem": [ + { + "description": null, + "help": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_run", + "output_desc": null, + "output_type": "RunSubsystem", + "provider": "pants.core" + } + ], + "ScalaInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_desc": null, + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaPBShimCompiledClassfiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ScalaPBSubsystem", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_desc": null, + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + } + ], + "ScalaPBSubsystem": [ + { + "description": null, + "help": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalapb", + "output_desc": null, + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + } + ], + "ScalaParserCompiledClassfiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_desc": null, + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaPluginTargetsForTarget": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_desc": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaPluginsRequest" + ], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_desc": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaPluginsForTargetRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_desc": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaRuntimeForResolve": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_desc": "ScalaRuntimeForResolve(address: 'Address')", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaSourceDependencyAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleScalaSourceDependencyAnalysisResult", + "ProcessCleanupOption" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_desc": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[str]', provided_symbols_encoded: 'FrozenOrderedSet[str]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaSubsystem": [ + { + "description": null, + "help": "Scala programming language", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala", + "output_desc": null, + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + } + ], + "Scalac": [ + { + "description": null, + "help": "The Scala compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalac", + "output_desc": null, + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalacOptionsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": [ + "ScalacOptionsParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_desc": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalafmtConfigFiles": [ + { + "description": null, + "help": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "GatherScalafmtConfigFilesRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_desc": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "ScalafmtSubsystem": [ + { + "description": null, + "help": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_desc": null, + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "Scalatest": [ + { + "description": null, + "help": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalatest", + "output_desc": null, + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + } + ], + "Setup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DiffBinary, DiffBinaryRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "SetupRequest", + "GoRoot" + ], + "name": "pants.backend.go.lint.gofmt.rules.setup_gofmt", + "output_desc": "Setup(process: 'Process', original_digest: 'Digest')", + "output_type": "Setup", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "SetupRequest", + "GoogleJavaFormatSubsystem", + "InternalJdk" + ], + "name": "pants.backend.java.lint.google_java_format.rules.setup_google_java_format", + "output_desc": "Setup(process: pants.jvm.jdk_rules.JvmProcess, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.setup_autoflake", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partition, SetupScalafmtPartition, ..)" + ], + "input_types": [ + "SetupRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "output_desc": "Setup(partitions: 'tuple[Partition, ...]', original_digest: 'Digest')", + "output_type": "Setup", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.rules.setup_black", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.python.lint.black" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.setup_docformatter", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.setup_isort", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "SetupRequest", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.setup_yapf", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupRequest", + "Shfmt" + ], + "name": "pants.backend.shell.lint.shfmt.rules.setup_shfmt", + "output_desc": "Setup(process: pants.engine.process.Process, original_digest: Digest)", + "output_type": "Setup", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "SetupKwargs": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SetupKwargs, SetupKwargsRequest, ..)" + ], + "input_types": [ + "ExportedTarget", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "output_desc": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + } + ], + "SetupPyGeneration": [ + { + "description": null, + "help": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_desc": null, + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + } + ], + "Setuptools": [ + { + "description": null, + "help": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools", + "output_desc": null, + "output_type": "Setuptools", + "provider": "pants.backend.python" + } + ], + "ShellMapping": [ + { + "description": "Creating map of Shell file names to Shell targets", + "help": null, + "input_gets": [], + "input_types": [ + "AllShellTargets" + ], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_desc": "A mapping of Shell file names to their owning file address.", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + } + ], + "ShellSetup": [ + { + "description": null, + "help": "Options for Pants's Shell support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_desc": null, + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + } + ], + "Shellcheck": [ + { + "description": null, + "help": "A linter for shell scripts.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_desc": null, + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + } + ], + "Shfmt": [ + { + "description": null, + "help": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shfmt", + "output_desc": null, + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "Shunit2Runner": [ + { + "description": "Determine shunit2 shell", + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Shunit2RunnerRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_desc": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + } + ], + "SourceFiles": [ + { + "description": "Get all relevant source files", + "help": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFilesRequest" + ], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_desc": "A merged snapshot of the `sources` fields of multiple targets.", + "output_type": "SourceFiles", + "provider": "pants.core" + } + ], + "SourceRoot": [ + { + "description": null, + "help": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest" + ], + "name": "pants.source.source_root.get_source_root", + "output_desc": "SourceRoot(path: 'str')", + "output_type": "SourceRoot", + "provider": "pants.core" + } + ], + "SourceRootConfig": [ + { + "description": null, + "help": "Configuration for roots of source trees.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_source", + "output_desc": null, + "output_type": "SourceRootConfig", + "provider": "pants.core" + } + ], + "SourceRootsResult": [ + { + "description": null, + "help": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_source_roots", + "output_desc": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "output_type": "SourceRootsResult", + "provider": "pants.core" + } + ], + "SourcesResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": [ + "SourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_desc": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "output_type": "SourcesResult", + "provider": "pants.core" + } + ], + "StatsAggregatorSubsystem": [ + { + "description": null, + "help": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_stats", + "output_desc": null, + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + } + ], + "StrippedFileName": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "StrippedFileNameRequest" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_desc": "StrippedFileName(value: str)", + "output_type": "StrippedFileName", + "provider": "pants.core" + } + ], + "StrippedPythonSourceFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFiles, ..)" + ], + "input_types": [ + "PythonSourceFiles" + ], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_desc": "A PythonSourceFiles that has had its source roots stripped.", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + } + ], + "StrippedSourceFileNames": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourcesPaths" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_desc": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + } + ], + "StrippedSourceFiles": [ + { + "description": null, + "help": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFiles" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_desc": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + } + ], + "StyleSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "StyleSetupRequest" + ], + "name": "pants.backend.terraform.style.setup_terraform_style", + "output_desc": "StyleSetup(directory_to_process: 'dict[str, tuple[TerraformProcess, tuple[Address, ...]]]', original_digest: 'Digest')", + "output_type": "StyleSetup", + "provider": "pants.backend.experimental.terraform" + } + ], + "SubprocessEnvironment": [ + { + "description": null, + "help": "Environment settings for forked subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_desc": null, + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + } + ], + "SubprocessEnvironmentVars": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "SubprocessEnvironment" + ], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_desc": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + } + ], + "SuccinctCodeCounter": [ + { + "description": null, + "help": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scc", + "output_desc": null, + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + } + ], + "SymbolMap": [ + { + "description": "Map all first party Java targets to their packages", + "help": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_desc": "A mapping of JVM package names to owning addresses.", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Map all first party Scala targets to their symbols", + "help": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_desc": "A mapping of JVM package names to owning addresses.", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + } + ], + "TailorGoal": [ + { + "description": "`tailor` goal", + "help": null, + "input_gets": [ + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_desc": null, + "output_type": "TailorGoal", + "provider": "pants.core" + } + ], + "TailorSubsystem": [ + { + "description": null, + "help": "Auto-generate BUILD file targets for new source files.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_tailor", + "output_desc": null, + "output_type": "TailorSubsystem", + "provider": "pants.core" + } + ], + "TarBinary": [ + { + "description": "Finding the `tar` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_desc": null, + "output_type": "TarBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "TarBinaryRequest", + "TarBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_tar_wrapper", + "output_desc": null, + "output_type": "TarBinary", + "provider": "pants.core" + } + ], + "TargetDatas": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.get_target_data", + "output_desc": null, + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + } + ], + "TargetFilesGeneratorSettings": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaSettingsRequest" + ], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ShellGeneratorSettingsRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.target_types.generator_settings", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + } + ], + "TerraformHcl2Parser": [ + { + "description": null, + "help": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_desc": null, + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + } + ], + "TerraformTool": [ + { + "description": null, + "help": "Terraform (https://terraform.io)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_desc": null, + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + } + ], + "TerraformValidateSubsystem": [ + { + "description": null, + "help": "Terraform validate options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_desc": null, + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + } + ], + "Test": [ + { + "description": "`test` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(TestDebugRequest, TestFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(TestResult, TestFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, CoverageDataCollection, ..)", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId" + ], + "name": "pants.core.goals.test.run_tests", + "output_desc": null, + "output_type": "Test", + "provider": "pants.core" + } + ], + "TestDebugRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GoTestFieldSet" + ], + "name": "pants.backend.go.goals.test.generate_go_tests_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Set up Pytest to run interactively", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "PythonTestFieldSet" + ], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + { + "description": "Setup Shunit2 to run interactively", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Shunit2FieldSet" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + } + ], + "TestExtraEnv": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "TestSubsystem" + ], + "name": "pants.core.goals.test.get_filtered_environment", + "output_desc": "TestExtraEnv(env: 'Environment')", + "output_type": "TestExtraEnv", + "provider": "pants.core" + } + ], + "TestResult": [ + { + "description": "Test with Go", + "help": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GoTestFieldSet", + "TestSubsystem", + "GoTestSubsystem" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Run JUnit", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.run_junit_test", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Run Scalatest", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Run Pytest", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "PythonTestFieldSet", + "TestSubsystem" + ], + "name": "pants.backend.python.goals.pytest_runner.run_python_test", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + { + "description": "Run tests with Shunit2", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Shunit2FieldSet", + "TestSubsystem" + ], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.shell" + } + ], + "TestSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_desc": "TestSetup(process: pants.jvm.jdk_rules.JvmProcess, reports_dir_prefix: str)", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_desc": "TestSetup(process: pants.jvm.jdk_rules.JvmProcess, reports_dir_prefix: str)", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "PythonSetup", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_desc": "TestSetup(process: pants.engine.process.Process, results_file_name: Optional[str])", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + { + "description": "Setup shunit2", + "help": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "ShellSetup", + "TestSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_desc": "TestSetup(process: pants.engine.process.Process)", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + } + ], + "TestSubsystem": [ + { + "description": null, + "help": "Run tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_test", + "output_desc": null, + "output_type": "TestSubsystem", + "provider": "pants.core" + } + ], + "TfFmtSubsystem": [ + { + "description": null, + "help": "Terraform fmt options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_desc": null, + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + } + ], + "ThirdPartyPackageToArtifactMapping": [ + { + "description": null, + "help": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_artifact_mapping", + "output_desc": "ThirdPartyPackageToArtifactMapping(mapping_roots: 'FrozenDict[_ResolveName, FrozenTrieNode]')", + "output_type": "ThirdPartyPackageToArtifactMapping", + "provider": "pants.backend.experimental.java" + } + ], + "ThirdPartyPkgAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "ThirdPartyPkgAnalysisRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_desc": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + } + ], + "ThirdPartyPythonModuleMapping": [ + { + "description": "Creating map of third party targets to Python modules", + "help": null, + "input_gets": [], + "input_types": [ + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_desc": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + } + ], + "ThriftMapping": [ + { + "description": "Creating map of Thrift file names to Thrift targets", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllThriftTargets" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_desc": "A mapping of stripped .thrift file names to their owning file address.", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ThriftPythonSubsystem": [ + { + "description": null, + "help": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_desc": null, + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ThriftSubsystem": [ + { + "description": null, + "help": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_thrift", + "output_desc": null, + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ToolClasspath": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "ToolClasspathRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_desc": "A fully fetched and merged classpath for running a JVM tool.", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + } + ], + "TwineSubsystem": [ + { + "description": null, + "help": "The utility for publishing Python distributions to PyPi and other Python repositories.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_twine", + "output_desc": null, + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + } + ], + "UniquelyNamedPutativeTargets": [ + { + "description": null, + "help": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": [ + "PutativeTargets", + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_desc": "Putative targets that have no name conflicts with existing targets (or each other).", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + } + ], + "UnzipBinary": [ + { + "description": "Finding the `unzip` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_desc": null, + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "UnzipBinaryRequest", + "UnzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "output_desc": null, + "output_type": "UnzipBinary", + "provider": "pants.core" + } + ], + "UpdateBuildFilesGoal": [ + { + "description": "Update all BUILD files", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_desc": null, + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + } + ], + "UpdateBuildFilesSubsystem": [ + { + "description": null, + "help": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.11/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_desc": null, + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + } + ], + "UserGenerateLockfiles": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_desc": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_desc": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + } + ], + "ValidateJvmArtifactsForResolveResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_desc": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + } + ], + "VenvPex": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexRequest", + "BashBinary", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_desc": "VenvPex(digest: 'Digest', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "output_type": "VenvPex", + "provider": "pants.core" + } + ], + "VenvPexRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_desc": "VenvPexRequest(pex_request: 'PexRequest', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "output_type": "VenvPexRequest", + "provider": "pants.core" + } + ], + "WorkspaceBuildTargetsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BSPBuildTargets, BSPBuildTargetsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "UnionMembership", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_desc": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + } + ], + "WorkunitsCallbackFactory": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AnonymousTelemetryCallbackFactoryRequest", + "AnonymousTelemetry" + ], + "name": "pants.goal.anonymous_telemetry.construct_callback", + "output_desc": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_desc": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + } + ], + "WrappedGenerateLockfile": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GeneratePythonLockfile" + ], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_desc": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_desc": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + } + ], + "Yapf": [ + { + "description": null, + "help": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yapf", + "output_desc": null, + "output_type": "Yapf", + "provider": "pants.core" + } + ], + "ZipBinary": [ + { + "description": "Finding the `zip` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_desc": null, + "output_type": "ZipBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ZipBinaryRequest", + "ZipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_zip_wrapper", + "output_desc": null, + "output_type": "ZipBinary", + "provider": "pants.core" + } + ], + "_LanguageFmtResults": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FmtResult, FmtRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "_LanguageFmtRequest" + ], + "name": "pants.core.goals.fmt.fmt_language", + "output_desc": "_LanguageFmtResults(results: 'tuple[FmtResult, ...]', input: 'Digest', output: 'Digest')", + "output_type": "_LanguageFmtResults", + "provider": "pants.core" + } + ], + "_LoadedGlobalScalacPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)" + ], + "input_types": [ + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.parse_global_scalac_plugins", + "output_desc": "_LoadedGlobalScalacPlugins(names: 'tuple[str, ...]', artifact_address_inputs: 'tuple[str, ...]')", + "output_type": "_LoadedGlobalScalacPlugins", + "provider": "pants.backend.experimental.scala" + } + ], + "_SetupGoProtocPlugin": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_desc": "_SetupGoProtocPlugin(digest: 'Digest')", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + } + ], + "__RuntimeJvm": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Process, JvmProcess, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "JdkEnvironment" + ], + "name": "pants.jvm.run_deploy_jar.ensure_jdk_for_pants_run", + "output_desc": "Allows Coursier to download a JDK into a Digest, rather than an append-only cache for use\nwith `pants run`.\n\nThis is a hideous stop-gap, which will no longer be necessary once `InteractiveProcess` supports\nappend-only caches. (See #13852 for details on how to do this.)", + "output_type": "__RuntimeJvm", + "provider": "pants.backend.experimental.java" + } + ] + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.11.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.11/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.11.1" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.11.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported. \n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": { + "user-agent": "pants/2.11.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.11.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "first_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "Whether to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "first_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-read-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": { + "user-agent": "pants/2.11.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.11.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.11/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-level=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "indicatif-spinner", + "experimental-prodash" + ], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dynamic-ui-renderer=" + ], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.11/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]use-deprecated-python-macros", + "config_key": "use_deprecated_python_macros", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.12.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]use-deprecated-python-macros" + ], + "env_var": "PANTS_USE_DEPRECATED_PYTHON_MACROS", + "help": "If true, use Pants's deprecated macro system for `python_requirements`, `poetry_requirements`, and `pipenv_requirements` rather than target generation.\n\nThe address for macros is different. Rather than `3rdparty/python#Django`, the address will look like `3rdparty/python:Django`. The macro (`python_requirements` et al) also was not a proper target, meaning that you could not give it a `name`. In contrast, if the target generator sets its `name`, e.g. to `reqs`, generated targets will have an address like `3rdparty/python:reqs#Django`.", + "removal_hint": "In Pants 2.12, the deprecated Python macros like `python_requirements` will be replaced with improved target generators, which are now enabled by default.\n\nIf you already migrated by setting `use_deprecated_python_macros = false`, simply delete the option.\n\nOtherwise, when you are ready to upgrade, follow these steps:\n\n 1. Run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 update-build-files --fix-python-macros`\n 2. Check the logs for an ERROR log to see if you have to manually add `name=` anywhere.\n 3. Remove `use_deprecated_python_macros = true` from `[GLOBAL]` in pants.toml.\n\n(Why upgrade from the old macro mechanism to target generation? Among other benefits, it makes sure that the Pants daemon is properly invalidated when you change `requirements.txt` and `pyproject.toml`.)", + "removal_version": "2.12.0.dev0", + "scoped_cmd_line_args": [ + "--use-deprecated-python-macros", + "--no-use-deprecated-python-macros" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-deprecated-python-macros", + "--no-use-deprecated-python-macros" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\nSee https://www.pantsbuild.org/v2.11/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\nSee https://www.pantsbuild.org/v2.11/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-thrift-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--thrift-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-expected-version=" + ], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake==1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-version=" + ], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake==1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-lockfile=" + ], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/lint/autoflake/autoflake.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=autoflake`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "help": "Don't use Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython==3.1.18" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython==3.1.18" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/lint/bandit/bandit.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=bandit`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==22.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==22.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/lint/black/black.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-version=" + ], + "env_var": "PANTS_BUF_VERSION", + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-template=" + ], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-format-skip" + ], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "help": "Don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-skip", + "--no-buf-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--format-skip", + "--no-format-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-lint-skip" + ], + "env_var": "PANTS_BUF_LINT_SKIP", + "help": "Don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-skip", + "--no-buf-lint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-skip", + "--no-lint-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--format-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--lint-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.11/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--check-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_CHECK_ONLY", + "help": "Only run these checkerss and skip all others.\n\nThe checkers names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkerss.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--check-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "help": "Register command line aliases.\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependees=transitive\"\n\nThis would allow you to run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 green all-changed`, which is shorthand for `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependees=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.0.16-169-g194ebc55c", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.0.16-169-g194ebc55c" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.5,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.5,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/subsystems/coverage_py.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=coverage-py`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil'].\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html .", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees. If unspecified, list direct dependees only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/lint/docformatter/docformatter.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=docformatter`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find the Docker client and any tools required.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-tools=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_TOOLS", + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tools" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tools" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-context-root=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-context-root" + ], + "typ": "workspace_path", + "unscoped_cmd_line_args": [ + "--default-context-root" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-verbose" + ], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-verbose", + "--no-build-verbose" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-version=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-lockfile=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/docker/subsystems/dockerfile.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=dockerfile-parser`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.0.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.0.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.0.7|macos_arm64 |cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.0.7|macos_arm64 |cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]experimental-bsp-server" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--server", + "--no-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": [ + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-runner-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runner-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "PATH" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-bsp" + }, + "export": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.backend.docker", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.9.2,<4.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.9.2,<4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/lint/flake8/flake8.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=flake8`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add 'build-support/flake8' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.11/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file. For example:\n\n```\n[flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n```\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[flake8].extra_requirements`.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Flake8 plugins such as 'flake8-plugins' so that the third-party requirements used by your plugin, like `flake8`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-batch-size=" + ], + "env_var": "PANTS_FMT_BATCH_SIZE", + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FMT_ONLY", + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from the option `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for Python third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "go-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "help": "Don't use gofmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-expected-version=", + "config_key": "expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-expected-version=" + ], + "env_var": "PANTS_GOLANG_EXPECTED_VERSION", + "help": "The Go version you are using, such as `1.17`.\n\nPants will only use Go distributions from `--go-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "help": "Don't use Google Java Format when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.8.0|macos_x86_64|27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|macos_arm64 |27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|linux_x86_64|9dfc155139a1e1e9b3b28f3de9907736b9dfe7cead1c3a0ae7ff0158f3191674|5895708" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.8.0|macos_x86_64|27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|macos_arm64 |27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|linux_x86_64|9dfc155139a1e1e9b3b28f3de9907736b9dfe7cead1c3a0ae7ff0158f3191674|5895708" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "help": "Don't use Hadolint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-version=" + ], + "env_var": "PANTS_HELM_VERSION", + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-template=" + ], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-lint-strict" + ], + "env_var": "PANTS_HELM_LINT_STRICT", + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-strict", + "--no-lint-strict" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/subsystems/ipython.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=ipython`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/lint/isort/isort.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=isort`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-third-party-imports", + "config_key": "third_party_imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-third-party-imports" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORTS", + "help": "Infer a target's third-party dependencies using Java import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-imports", + "--no-java-infer-third-party-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--third-party-imports", + "--no-third-party-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "adopt:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-tool-jdk=" + ], + "env_var": "PANTS_JVM_TOOL_JDK", + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-tool-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--tool-jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "adopt:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "adopt:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "help": "The JDK to use.\n\n This string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\n If the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "adopt:1.11" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like ['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\n JDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\n If the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/subsystems/lambdex.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=lambdex`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "provider": "pants.backend.awslambda.python", + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-batch-size=" + ], + "env_var": "PANTS_LINT_BATCH_SIZE", + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_LINT_ONLY", + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.910", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.910" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/typecheck/mypy/mypy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.Tip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your MyPy plugins such as 'mypy-plugins' so that the third-party requirements used by your plugin, like `mypy`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement` target.Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-protobuf`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FROM", + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "help": "When possible, use venvs whose site-packages directories are populated withsymlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.90", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-version=" + ], + "env_var": "PANTS_PEX_CLI_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.90,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.90" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.90|macos_arm64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345", + "v2.1.90|macos_x86_64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345", + "v2.1.90|linux_x86_64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.90|macos_arm64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345", + "v2.1.90|macos_x86_64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345", + "v2.1.90|linux_x86_64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.90,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-template=" + ], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "poetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-version=", + "config_key": "version", + "default": "poetry==1.1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-version=" + ], + "env_var": "PANTS_POETRY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "poetry==1.1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to generate lockfiles for third-party Python dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "poetry" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|linux_arm64 |f24c9fa1fc4a7770b8a5da66e515cb8a638d086ad2afa633abb97137c5f029a8|1481946", + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|linux_arm64 |f24c9fa1fc4a7770b8a5da66e515cb8a638d086ad2afa633abb97137c5f029a8|1481946", + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.11.0,<2.12", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.11.0,<2.12" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/lint/pylint/pylint.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pylint`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.11/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Pylint plugins such as 'pylint-plugins' so that the third-party requirements used by your plugin, like `pylint`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-version=", + "config_key": "version", + "default": "pyoxidizer==0.18.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-version=" + ], + "env_var": "PANTS_PYOXIDIZER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer==0.18.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.8,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.8,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-console-script=" + ], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-entry-point=" + ], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest==7.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest==7.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/subsystems/pytest.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pytest`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.11/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-resolves" + ], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nWarning: the `generate-lockfiles` goal does not yet work if you have local requirements, regardless of using Pex vs. Poetry for the lockfile generator. Support is coming in a future Pants release. In the meantime, the workaround is to host the files in a custom repository with `[python-repos]` (https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies#custom-repositories).\n\nYou may also run into issues generating lockfiles when using Poetry as the generator, rather than Pex. See the option `[python].lockfile_generator` for more information.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple resolves in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.11/docs/targets for information about `parametrize`. For example:\n\n python_sources(\n resolve=parametrize(data-science', 'web-app'),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-default-resolve=" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python.interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use ['==3.9.*'] via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to ['==3.7.*'], then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated. Use `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": [ + "pex", + "poetry" + ], + "comma_separated_choices": "pex, poetry", + "comma_separated_display_args": "--python-lockfile-generator=", + "config_key": "lockfile_generator", + "default": "poetry", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-lockfile-generator=" + ], + "env_var": "PANTS_PYTHON_LOCKFILE_GENERATOR", + "help": "Whether to use Pex or Poetry with the `generate-lockfiles` goal.\n\nPoetry does not support these features:\n\n 1) `[python-repos]` for custom indexes/cheeseshops.\n 2) VCS (Git) requirements.\n 3) `[GLOBAL].ca_certs_path`\n\n.If you use any of these features, you should use Pex.\n\nSeveral users have also had issues with how Poetry's lockfile generation handles environment markers for transitive dependencies; certain dependencies end up with nonsensical environment markers which cause the dependency to not be installed, then for Pants/Pex to complain the dependency is missing, even though it's in the lockfile. There is a workaround: for `[python].resolves`, manually create a `python_requirement` target for the problematic transitive dependencies so that they are seen as direct requirements, rather than transitive. For tool lockfiles, add the problematic transitive dependency to `[tool].extra_requirements`, e.g. `[isort].extra_requirements`. Then, regenerate the lockfile(s) with the `generate-lockfiles` goal. Alternatively, use Pex for generation.\n\nFinally, installing from a Poetry-generated lockfile is slower than installing from a Pex lockfile. When using a Pex lockfile, Pants will only install the subset needed for the current task.\n\nHowever, Pex lockfile generation is a beta feature. Given how vast the Python packaging ecosystem is, it is possible you may experience edge cases / bugs we haven't yet covered. Bug reports are appreciated! https://github.com/pantsbuild/pants/issues/new/choose\n\nNote that while Pex generates locks in a proprietary JSON format, you can use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export` goal for Pants to create a virtual environment for interoperability with tools like IDEs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-lockfile-generator" + ], + "typ": "LockfileGenerator", + "unscoped_cmd_line_args": [ + "--lockfile-generator" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "poetry" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolves-generate-lockfiles" + ], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles as a workaround for the issues described in the `[python].lockfile_generator` option, if you are not yet ready to use Pex.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile/constraints file instead of just the relevant subset.\n\nWe generally do not recommend this if `[python].lockfile_generator` is set to `'pex'` thanks to performance enhancements we've made. When using Pex lockfiles, you should get similar performance to using this option but without the downsides mentioned below.\n\nOtherwise, if not using Pex lockfiles, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile changes, rather than just those that depend on the changed requirement. 2) Requirements unneeded by a test/run/repl will be present on the sys.path, which might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "Don't tailor `python_sources` targets for solitary `__init__.py` files, as those usually exist as import scaffolding rather than true library code.\n\nSet to False if you commonly have packages containing real code in `__init__.py` and there are no other .py files in the package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-solitary-init-files", + "--no-python-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "help": "Tailor python_requirements() targets for requirements files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "help": "Tailor pex_binary() targets for Python entry point files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "help": "A list of paths to search for Python interpreters.\n\nWhich interpeters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH env var\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings.\n\nTo ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-assets" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--assets", + "--no-assets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-assets-min-slashes=" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "help": "If --assets is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets-min-slashes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--assets-min-slashes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor `__init__.py` files, only they will not be 'proper' dependencies, e.g. they will not show up in `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "ignore", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ignore" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.11/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-thrift-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.31.0,<2.32", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-version=" + ], + "env_var": "PANTS_PYUPGRADE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.31.0,<2.32" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-lockfile=" + ], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/lint/pyupgrade/pyupgrade.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pyupgrade`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "help": "Don't use pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "help": "Config schema is as follows:\n\n```\n{\n'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n},\n'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n],\n'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n]\n}\n```\n\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-detail-level=" + ], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files. To run on those, use `lint '**'` rather than `lint ::`, for example. Unfortunately, `--changed-since=` does not yet cause this linter to run. We are exploring how to improve both these gotchas.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-cleanup", + "config_key": "cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-cleanup" + ], + "env_var": "PANTS_RUN_CLEANUP", + "help": "Whether to clean up the temporary directory in which the binary is chrooted. Set to false to retain the directory, e.g., for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-cleanup", + "--no-run-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cleanup", + "--no-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-global=\"['', '', ...]\"", + "config_key": "plugins_global", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.12.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--scalac-plugins-global=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_GLOBAL", + "help": "A list of addresses of `scalac_plugin` targets which should be used for compilation of all Scala targets in a build.\n\nIf you set this, you must also set `[scalac].plugins_global_lockfile`.", + "removal_hint": "Use `--scalac-plugins-for-resolve` instead to use user resolves", + "removal_version": "2.12.0.dev0", + "scoped_cmd_line_args": [ + "--scalac-plugins-global" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins-global" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-global-lockfile=", + "config_key": "plugins_global_lockfile", + "default": "", + "deprecated_message": "Deprecated, will be removed in version: 2.12.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--scalac-plugins-global-lockfile=" + ], + "env_var": "PANTS_SCALAC_PLUGINS_GLOBAL_LOCKFILE", + "help": "The filename of the lockfile for global plugins. You must set this option to a file path, e.g. '3rdparty/jvm/global_scalac_plugins.lock', if you set `[scalac].plugins_global`.", + "removal_hint": "Use `--scalac-plugins-for-resolve` instead, which will add plugin dependencies to JVM user resolves.", + "removal_version": "2.12.0.dev0", + "scoped_cmd_line_args": [ + "--scalac-plugins-global-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--plugins-global-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "help": "Don't use scalafmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-version=" + ], + "env_var": "PANTS_SCALAPB_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-lockfile=" + ], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAPB_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `jvm_artifact` targets for the runtime dependencies needed for generated Scala code to work. For example, `['3rdparty/jvm:scalapb-runtime']`. These dependencies will be automatically added to every `protobuf_sources` target. At the very least, this option must be set to a `jvm_artifact` for the `com.thesamet.scalapb:scalapb-runtime_SCALAVER:0.11.6` runtime library.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set --scalapb-runtime-dependencies appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "help": "The default value for the `generate_setup` field on `python_distribution` targets.Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<58.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<58.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/subsystems/setuptools.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "Don't use Shellcheck when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.11/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "Don't use shfmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.11/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-memory-summary" + ], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--memory-summary", + "--no-memory-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.11/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.11/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-fmt-skip" + ], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "help": "Don't use `terraform fmt` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-version=", + "config_key": "version", + "default": "python-hcl2==3.0.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-version=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-hcl2==3.0.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-lockfile=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/terraform/hcl2.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=terraform-hcl2-parser`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-validate-skip" + ], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "help": "Don't use `terraform validate` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-xml-dir=", + "config_key": "xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-xml-dir=" + ], + "env_var": "PANTS_TEST_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run that supports producing them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-dependency-inference" + ], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine>=3.7.1,<3.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-version=" + ], + "env_var": "PANTS_TWINE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine>=3.7.1,<3.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "colorama>=0.4.3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "colorama>=0.4.3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-lockfile=" + ], + "env_var": "PANTS_TWINE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/subsystems/twine.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=twine`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use the default CA certificate.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "help": "Don't use Twine when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPi and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "yapf", + "black" + ], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--update-build-files-formatter=" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-formatter" + ], + "typ": "Formatter", + "unscoped_cmd_line_args": [ + "--formatter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-python-macros", + "config_key": "fix_python_macros", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-python-macros" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_PYTHON_MACROS", + "help": "Update references to targets generated from `python_requirements` and `poetry_requirements` from the old deprecated macro mechanism to the new target generation mechanism described at https://www.pantsbuild.org/v2.11/docs/targets#target-generation.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-python-macros", + "--no-update-build-files-fix-python-macros" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-python-macros", + "--no-fix-python-macros" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.11/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf==0.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf==0.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.11.1/src/python/pants/backend/python/lint/yapf/yapf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=yapf`.\n\nAs explained at https://www.pantsbuild.org/v2.11/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "help": "Don't use yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.12.x/reference/help-all.json b/versioned_docs/version-2.12.x/reference/help-all.json new file mode 100644 index 000000000..1874a7d31 --- /dev/null +++ b/versioned_docs/version-2.12.x/reference/help-all.json @@ -0,0 +1,36958 @@ +{ + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "", + "check" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.core" + }, + "export": { + "consumed_scopes": [ + "" + ], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": [ + "" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.backend.docker" + }, + "filedeps": { + "consumed_scopes": [ + "", + "filedeps" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter", + "provider": "pants.backend.project_info" + }, + "fmt": { + "consumed_scopes": [ + "", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "generate-lockfiles" + ], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": [ + "", + "lint" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": [ + "" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": [ + "", + "paths" + ], + "description": "List the paths between two addresses.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": [ + "", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": [ + "", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": [ + "", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.12/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "\nAny tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.12/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [docker].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. \"/\".\n\nIt uses the `[docker].default_repository` by default.\n\nrepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory` and `parent_directory`.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nlabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: default|[=|[,]])\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this image to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_run_shell_command": { + "alias": "experimental_run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n experimental_run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `experimental_shell_command`, in addition to `workdir` you only have the `command` and `dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the current working directory of the command, relative to the project root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "experimental_shell_command": { + "alias": "experimental_shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n experimental_shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n dependencies=[\":scripts\"],\n outputs=[\"results/\", \"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output from the command logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "outputs", + "default": null, + "description": "Specify the shell command output files and directories.\n\nUse a trailing slash on directory names, i.e. `my_dir/`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": null, + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `file` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go', '*.s')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) when running this package's tests.\n\nIf this field is not set, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_artifact": { + "alias": "helm_artifact", + "description": "A third party Helm artifact.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registry", + "default": null, + "description": "Either registry alias (prefixed by `@`) configured in `[helm.registries]` for the Helm artifact or the full OCI registry URL.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repository", + "default": null, + "description": "Either a HTTP(S) URL to a classic repository, or a path inside an OCI registry (when `registry` is provided).", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "Artifact name of the chart, without version number.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The `version` part of a third party Helm chart.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A third party Helm artifact." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'templates/*.yaml', 'templates/*.tpl')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "repository", + "default": null, + "description": "Repository to use in the Helm registry where this chart is going to be published.\n\nIf no value is given and `[helm].default-registry-repository` is undefined too, then the chart will be pushed to the root of the OCI registry.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any OCI registries to use for the built chart.\n\nThe address is an `oci://` prefixed domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [helm].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [helm.registries.my-registry-alias]\n address = \"oci://myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n helm_chart(\n registries = [\n \"@my-registry-alias\",\n \"oci://myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this helm chart to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart." + }, + "helm_unittest_test": { + "alias": "helm_unittest_test", + "description": "A single helm-unittest suite file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A single helm-unittest suite file." + }, + "helm_unittest_tests": { + "alias": "helm_unittest_tests", + "description": "Generates a `helm_unittest_test` target per each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.yaml',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "Generates a `helm_unittest_test` target per each file in the `sources` field." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "excludes", + "default": null, + "description": "A list of unversioned coordinates (i.e. `group:artifact`) that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nThese values are passed directly to Coursier, and if specified incorrectly will show a parse error from Coursier.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., web.xml) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "kotlin_source": { + "alias": "kotlin_source", + "description": "A single Kotlin source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin source file containing application or library code." + }, + "kotlin_sources": { + "alias": "kotlin_sources", + "description": "Generate a `kotlin_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_source` target for each file in the `sources` field." + }, + "kotlinc_plugin": { + "alias": "kotlinc_plugin", + "description": "A plugin for `kotlinc`.\n\nTo enable a `kotlinc` plugin, define a target with this target type, and set the `artifact` field to the address of a `jvm_artifact` target that provides the plugin. Set the `plugin_id` field to the ID of the plugin if that name cannot be inferred from the `name` of this target.\n\nThe standard `kotlinc` plugins are available via the following artifact coordinates and IDs: * All-open: `org.jetbrains.kotlin:kotlin-allopen:VERSION` (ID: `all-open`) * No-arg: `org.jetbrains.kotlin:kotlin-noarg:VERSION` (ID: `no-arg`) * SAM with receiver: `org.jetbrains.kotlin:kotlin-sam-with-receiver:VERSION` (ID: `sam-with-receiver`) * kapt (annotation processor): `org.jetbrains.kotlin:org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:VERSION` (ID: `kapt3`) * Seralization: `org.jetbrains.kotlin:kotlin-serialization:VERSION` (ID: `serialization`)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `kotlinc`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_id", + "default": null, + "description": "The ID for `kotlinc` to use when setting options for the plugin.\n\nIf not set, the plugin ID defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "plugin_args", + "default": null, + "description": "Optional list of argument to pass to the plugin.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A plugin for `kotlinc`." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants. The generated targets will have the correct version based on the `version` in your `pants.toml`, and they will work with dependency inference.\n\nBecause the Plugin API is not yet stable, the version is set automatically for you to improve stability. If you're currently using a dev release, the version will be set to that exact dev release. If you're using an alpha release, release candidate (rc), or stable release, the version will allow any non-dev-release release within the release series, e.g. `>=2.12.0rc0,<2.13`.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n ```\n overrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n }\n ```\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same entry_point in multiple keys, so long as you don't override the same field more than one time for the entry_point.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.12/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs: Python: https://www.pantsbuild.org/v2.12/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.12/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `protobuf_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.proto\": {\"grpc\": True},\n \"bar.proto\": {\"description\": \"our user model\"},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.12/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the `name` of the `pyoxidizer_target`. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by $ or surrounded with ${ }.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted entry_point passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or []).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets filesystem_resources.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.12/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.12/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: 'path.to.module'.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.12/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the Pex. This is most useful with Lambda Layers to make code uploads smaller when deps are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.12/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\n Example:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies ", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.12/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing setup.py, setup.cfg, pyproject.toml files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the long_description field in setup.py.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.12/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'cloud_function.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.", + "provider": "", + "required": false, + "type_hint": "'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be 'event' or 'http'. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to --trigger-http.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style file from the `source` field.\n\nThis works with pip-style requirements files: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style file from the `source` field." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.12/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.py\": {\"timeout\": 120]},\n \"bar_test.py\": {\"timeout\": 200]},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `resource` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala')).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala'))." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shell_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shunit2_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.sh\": {\"timeout\": 120]},\n \"bar_test.sh\": {\"timeout\": 200]},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee language-specific docs: Python: https://www.pantsbuild.org/v2.12/docs/thrift-python", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `thrift_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.12/docs/targets#target-addresses and https://www.pantsbuild.org/v2.12/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + } + }, + "rule_output_type_to_rule_infos": { + "AddressToDependees": [ + { + "description": "Map all targets to their dependees", + "help": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.project_info.dependees.map_addresses_to_dependees", + "output_desc": "AddressToDependees(mapping: pants.util.frozendict.FrozenDict[pants.build_graph.address.Address, pants.util.ordered_set.FrozenOrderedSet[pants.build_graph.address.Address]])", + "output_type": "AddressToDependees", + "provider": "pants.backend.project_info" + } + ], + "AllAssetTargets": [ + { + "description": "Find all assets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets", + "AllAssetTargetsRequest" + ], + "name": "pants.core.target_types.find_all_assets", + "output_desc": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "output_type": "AllAssetTargets", + "provider": "pants.core" + } + ], + "AllAssetTargetsByPath": [ + { + "description": "Mapping assets by path", + "help": null, + "input_gets": [], + "input_types": [ + "AllAssetTargets" + ], + "name": "pants.core.target_types.map_assets_by_path", + "output_desc": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + } + ], + "AllGoTargets": [ + { + "description": "Find all Go targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.find_all_go_targets", + "output_desc": null, + "output_type": "AllGoTargets", + "provider": "pants.backend.experimental.go" + } + ], + "AllHelmArtifactTargets": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_artifact_targets", + "output_desc": null, + "output_type": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm" + } + ], + "AllHelmChartTargets": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_chart_targets", + "output_desc": null, + "output_type": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm" + } + ], + "AllHelmUnitTestTestTargets": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "output_desc": null, + "output_type": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm" + } + ], + "AllJavaTargets": [ + { + "description": "Find all Java targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_desc": null, + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + } + ], + "AllJvmArtifactTargets": [ + { + "description": "Find all jvm_artifact targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_desc": null, + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + } + ], + "AllJvmTypeProvidingTargets": [ + { + "description": "Find all targets with experimental_provides fields in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_desc": null, + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + } + ], + "AllKotlinTargets": [ + { + "description": "Find all Kotlin targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "output_desc": null, + "output_type": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin" + } + ], + "AllKotlincPluginTargets": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "output_desc": null, + "output_type": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin" + } + ], + "AllOwnedSources": [ + { + "description": "Determine all files already owned by targets", + "help": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_desc": "All files in the project already owned by targets.", + "output_type": "AllOwnedSources", + "provider": "pants.core" + } + ], + "AllProtobufTargets": [ + { + "description": "Find all Protobuf targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_desc": null, + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "AllPytestPluginSetups": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": [ + "AllPytestPluginSetupsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_desc": null, + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + } + ], + "AllPythonTargets": [ + { + "description": "Find all Python targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_desc": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + } + ], + "AllScalaPluginTargets": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_desc": null, + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + } + ], + "AllScalaTargets": [ + { + "description": "Find all Scala targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_desc": null, + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + } + ], + "AllShellTargets": [ + { + "description": "Find all Shell targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_desc": null, + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + } + ], + "AllSourceRoots": [ + { + "description": "Compute all source roots", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootConfig" + ], + "name": "pants.source.source_root.all_roots", + "output_desc": null, + "output_type": "AllSourceRoots", + "provider": "pants.core" + } + ], + "AllThirdPartyPackages": [ + { + "description": "Download and analyze all third-party Go packages", + "help": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": [ + "AllThirdPartyPackagesRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_desc": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + } + ], + "AllThriftTargets": [ + { + "description": "Find all Thrift targets in project", + "help": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_desc": null, + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "AnalyzeScalaSourceRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "SourceFilesRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "output_desc": "AnalyzeScalaSourceRequest(source_files: 'SourceFiles', scala_version: 'str', source3: 'bool')", + "output_type": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala" + } + ], + "AnalyzedThirdPartyModule": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyModuleRequest", + "PackageAnalyzerSetup", + "GolangSubsystem" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_desc": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + } + ], + "AncestorFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "AncestorFilesRequest" + ], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_desc": "Any ancestor files found.", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + } + ], + "AnonymousTelemetry": [ + { + "description": null, + "help": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_desc": null, + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + } + ], + "ApacheThriftSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_desc": "ApacheThriftSetup(path: 'str')", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ApacheThriftSubsystem": [ + { + "description": null, + "help": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_desc": null, + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ArtifactRequirements": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "GatherJvmCoordinatesRequest" + ], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_desc": "An ordered list of Coordinates used as requirements.", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + } + ], + "AssemblyPostCompilation": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPostCompilationRequest" + ], + "name": "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "output_desc": "AssemblyPostCompilation(result: 'FallibleProcessResult', merged_output_digest: 'Digest | None')", + "output_type": "AssemblyPostCompilation", + "provider": "pants.backend.experimental.go" + } + ], + "Autoflake": [ + { + "description": null, + "help": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_autoflake", + "output_desc": null, + "output_type": "Autoflake", + "provider": "pants.backend.experimental.python.lint.autoflake" + } + ], + "AvailableThirdPartyArtifacts": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_desc": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + } + ], + "BSPBuildTargetInternal": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "_ParseOneBSPMappingRequest" + ], + "name": "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "output_desc": "BSPBuildTargetInternal(name: 'str', specs: 'Specs', definition: 'BSPTargetDefinition')", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "BuildTargetIdentifier", + "BSPBuildTargets" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier", + "output_desc": "BSPBuildTargetInternal(name: 'str', specs: 'Specs', definition: 'BSPTargetDefinition')", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + } + ], + "BSPBuildTargetSourcesInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "output_desc": "Source files and roots for a BSP build target.\n\nIt is a separate class so that it is computed lazily only when called for by an RPC call.", + "output_type": "BSPBuildTargetSourcesInfo", + "provider": "pants.core" + } + ], + "BSPBuildTargets": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(BSPBuildTargetInternal, _ParseOneBSPMappingRequest, ..)" + ], + "input_types": [ + "BSPGoal" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "output_desc": "BSPBuildTargets(targets_mapping: 'FrozenDict[str, BSPBuildTargetInternal]')", + "output_type": "BSPBuildTargets", + "provider": "pants.core" + } + ], + "BSPBuildTargetsMetadataResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "JavaBSPBuildTargetsMetadataRequest" + ], + "name": "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "output_desc": "Response type for a BSPBuildTargetsMetadataRequest.", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(MaterializeScalaRuntimeJarsResult, MaterializeScalaRuntimeJarsRequest, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsMetadataRequest", + "JvmSubsystem", + "ScalaSubsystem", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "output_desc": "Response type for a BSPBuildTargetsMetadataRequest.", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.scala" + } + ], + "BSPCompileResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPCompileResult, BSPCompileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileOneBSPTargetRequest", + "BSPContext", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.compile.compile_bsp_target", + "output_desc": "Result of compilation of a target capable of target compilation.", + "output_type": "BSPCompileResult", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "JavaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_desc": "Result of compilation of a target capable of target compilation.", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ScalaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_desc": "Result of compilation of a target capable of target compilation.", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + } + ], + "BSPContext": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "SessionValues" + ], + "name": "pants.bsp.rules.bsp_context", + "output_desc": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "output_type": "BSPContext", + "provider": "pants.core" + } + ], + "BSPDependencyModulesResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPDependencyModulesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "output_desc": "BSPDependencyModulesResult(modules: 'tuple[DependencyModule, ...]', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala" + } + ], + "BSPGoal": [ + { + "description": null, + "help": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_bsp", + "output_desc": null, + "output_type": "BSPGoal", + "provider": "pants.core" + } + ], + "Bandit": [ + { + "description": null, + "help": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_bandit", + "output_desc": null, + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + } + ], + "BashBinary": [ + { + "description": "Finding the `bash` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "BashBinaryRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_bash", + "output_desc": "The `bash` binary.", + "output_type": "BashBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_desc": "The `bash` binary.", + "output_type": "BashBinary", + "provider": "pants.core" + } + ], + "BinaryPaths": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryPathRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_desc": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "output_type": "BinaryPaths", + "provider": "pants.core" + } + ], + "BinaryShims": [ + { + "description": null, + "help": "Creates a bin directory with shims for all requested binaries.\n\nUseful as input digest for a Process to setup a `bin` directory for PATH.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryShimsRequest", + "BashBinary", + "MkdirBinary", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_desc": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `bin_directory` added to\nPATH so that the binaries are available for execution.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "output_type": "BinaryShims", + "provider": "pants.core" + } + ], + "Black": [ + { + "description": null, + "help": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_black", + "output_desc": null, + "output_type": "Black", + "provider": "pants.core" + } + ], + "BufSubsystem": [ + { + "description": null, + "help": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buf", + "output_desc": null, + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + } + ], + "BuildGoPackageRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "FallibleBuildGoPackageRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_desc": null, + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + } + ], + "BuildPexResult": [ + { + "description": null, + "help": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexCliProcess, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PexRequest", + "PythonSetup", + "PythonRepos", + "Platform", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_desc": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "output_type": "BuildPexResult", + "provider": "pants.core" + } + ], + "BuildSystem": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "BuildSystemRequest", + "Setuptools" + ], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_desc": "A PEP 517/518 build system configuration.", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + } + ], + "BuiltGoPackage": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "FallibleBuiltGoPackage" + ], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_desc": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + } + ], + "BuiltPackage": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": [ + "ArchiveFieldSet" + ], + "name": "pants.core.target_types.package_archive_target", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + { + "description": "Create Python AWS Lambda", + "help": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonAwsLambdaFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.awslambda.python.rules.package_python_awslambda", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "ProcessCleanupOption" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + { + "description": "Package Go binary", + "help": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Package Helm chart", + "help": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmPackageFieldSet" + ], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + { + "description": null, + "help": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Producing a ZIP file containing _only_ the JAR manifest file for the `main_class`\n3. Creating a deploy jar with a broken ZIP index by concatenating all dependency JARs together,\n followed by the thin JAR we created\n4. Using the unix `zip` utility's repair function to fix the broken fat jar", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BashBinary", + "ZipBinary", + "DeployJarFieldSet" + ], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "PackageWarFileFieldSet", + "BashBinary", + "ZipBinary" + ], + "name": "pants.jvm.package.war.package_war", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + { + "description": "Create Python Google Cloud Function", + "help": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonGoogleCloudFunctionFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(Pex, PexFromTargetsRequest, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup" + ], + "name": "pants.backend.python.goals.setup_py.package_python_dist", + "output_desc": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + } + ], + "BuiltPackageDependencies": [ + { + "description": "Build runtime package dependencies for tests", + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "BuildPackageDependenciesRequest" + ], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_desc": null, + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + } + ], + "Check": [ + { + "description": "`check` goal", + "help": null, + "input_gets": [ + "Get(CheckResults, CheckRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "FilteredTargets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_desc": null, + "output_type": "Check", + "provider": "pants.core" + } + ], + "CheckResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_desc": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "CheckResults": [ + { + "description": "Check Go compilation", + "help": null, + "input_gets": [ + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": [ + "GoCheckRequest" + ], + "name": "pants.backend.go.goals.check.check_go", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Check javac compilation", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "JavacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.goals.check.javac_check", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Check compilation for Kotlin", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "KotlincCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.kotlin.goals.check.kotlinc_check", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.kotlin" + }, + { + "description": "Check compilation for Scala", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ScalacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(StyleSetup, StyleSetupRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": [ + "TerraformCheckRequest", + "TerraformValidateSubsystem" + ], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": "Typecheck using MyPy", + "help": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_desc": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "CheckSubsystem": [ + { + "description": null, + "help": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_check", + "output_desc": null, + "output_type": "CheckSubsystem", + "provider": "pants.core" + } + ], + "ChmodBinary": [ + { + "description": "Finding the `chmod` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_desc": null, + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ChmodBinaryRequest", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_chmod_wrapper", + "output_desc": null, + "output_type": "ChmodBinary", + "provider": "pants.core" + } + ], + "ChosenPythonResolve": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "ChosenPythonResolveRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_desc": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + } + ], + "Classpath": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "ClasspathEntryRequestFactory" + ], + "name": "pants.jvm.classpath.classpath", + "output_desc": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + } + ], + "ClasspathEntry": [ + { + "description": null, + "help": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "CoursierLockfileEntry" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_desc": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "ScalaLibraryRequest" + ], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_desc": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "FallibleClasspathEntry" + ], + "name": "pants.jvm.compile.required_classfiles", + "output_desc": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + } + ], + "ClasspathEntryRequestFactory": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "UnionMembership" + ], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_desc": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + } + ], + "ClasspathEntryRequests": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_desc": null, + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + } + ], + "CompileResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPCompileResult, CompileOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_desc": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "output_type": "CompileResult", + "provider": "pants.core" + } + ], + "CompletePlatforms": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "PexCompletePlatformsField" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_desc": null, + "output_type": "CompletePlatforms", + "provider": "pants.core" + } + ], + "ConfigFiles": [ + { + "description": "Find config files", + "help": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ConfigFilesRequest" + ], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_desc": "Config files used by a tool run by Pants.", + "output_type": "ConfigFiles", + "provider": "pants.core" + } + ], + "CountLinesOfCode": [ + { + "description": "`count-loc` goal", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsSnapshot" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_desc": null, + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + } + ], + "CountLinesOfCodeSubsystem": [ + { + "description": null, + "help": "Count lines of code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_count_loc", + "output_desc": null, + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Coursier": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBinary" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_desc": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierResolveInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_desc": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierResolveKey": [ + { + "description": null, + "help": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": [ + "Get(Digest, PathGlobs, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_desc": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierResolvedLockfile": [ + { + "description": null, + "help": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_desc": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "CoursierResolveKey" + ], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_desc": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + } + ], + "CoursierSubsystem": [ + { + "description": null, + "help": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coursier", + "output_desc": null, + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "CoverageConfig": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_desc": "CoverageConfig(digest: 'Digest', path: 'str')", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + } + ], + "CoverageReports": [ + { + "description": "Generate Pytest coverage reports", + "help": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "ProcessCleanupOption", + "DistDir" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_desc": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + } + ], + "CoverageSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_desc": "CoverageSetup(pex: 'VenvPex')", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + } + ], + "CoverageSubsystem": [ + { + "description": null, + "help": "Configuration for Python test coverage measurement.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_desc": null, + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + } + ], + "Dependees": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DependeesRequest", + "AddressToDependees" + ], + "name": "pants.backend.project_info.dependees.find_dependees", + "output_desc": null, + "output_type": "Dependees", + "provider": "pants.backend.project_info" + } + ], + "DependeesGoal": [ + { + "description": "`dependees` goal", + "help": null, + "input_gets": [ + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "DependeesSubsystem", + "Console" + ], + "name": "pants.backend.project_info.dependees.dependees_goal", + "output_desc": null, + "output_type": "DependeesGoal", + "provider": "pants.backend.project_info" + } + ], + "DependeesSubsystem": [ + { + "description": null, + "help": "List all targets that depend on any of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependees", + "output_desc": null, + "output_type": "DependeesSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Dependencies": [ + { + "description": "`dependencies` goal", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "Addresses", + "DependenciesSubsystem" + ], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_desc": null, + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + } + ], + "DependenciesSubsystem": [ + { + "description": null, + "help": "List the dependencies of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependencies", + "output_desc": null, + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + } + ], + "DependencyModulesResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DependencyModulesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_desc": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + } + ], + "DependencySourcesResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DependencySourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_desc": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + } + ], + "DiffBinary": [ + { + "description": "Finding the `diff` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_desc": null, + "output_type": "DiffBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DiffBinaryRequest", + "DiffBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_diff_wrapper", + "output_desc": null, + "output_type": "DiffBinary", + "provider": "pants.core" + } + ], + "Digest": [ + { + "description": "Creating an archive file", + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ZipBinary, ZipBinaryRequest, ..)", + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CreateArchive" + ], + "name": "pants.core.util_rules.archive.create_archive", + "output_desc": null, + "output_type": "Digest", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "HelmChartMetadata" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "output_desc": null, + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + } + ], + "DisjointSourcePutativeTarget": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, AddressSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PutativeTarget" + ], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_desc": "Putative target whose sources don't overlap with those of any existing targets.", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + } + ], + "DistBuildChroot": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.generate_chroot", + "output_desc": "A chroot containing PEP 517 build setup and the sources it operates on.", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + } + ], + "DistBuildResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DistBuildRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_desc": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + } + ], + "DistBuildSources": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_sources", + "output_desc": "The sources required to build a distribution.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + } + ], + "DistDir": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GlobalOptions", + "BuildRoot" + ], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_desc": "The directory to which we write distributable files.", + "output_type": "DistDir", + "provider": "pants.core" + } + ], + "Docformatter": [ + { + "description": null, + "help": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docformatter", + "output_desc": null, + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + } + ], + "DockerBinary": [ + { + "description": "Finding the `docker` binary and related tooling", + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": [ + "DockerBinaryRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_binary.find_docker", + "output_desc": "The `docker` binary.", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DockerBinary, DockerBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_desc": "The `docker` binary.", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + } + ], + "DockerBuildArgs": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DockerBuildArgsRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_desc": null, + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + } + ], + "DockerBuildContext": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "DockerBuildContextRequest" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_desc": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', upstream_image_ids: 'tuple[str, ...]', dockerfile: 'str', interpolation_context: 'DockerInterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + } + ], + "DockerBuildEnvironment": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_desc": "DockerBuildEnvironment(environment: 'Environment')", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + } + ], + "DockerOptions": [ + { + "description": null, + "help": "Options for interacting with Docker.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docker", + "output_desc": null, + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + } + ], + "DockerfileInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": [ + "DockerfileInfoRequest" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_desc": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', putative_target_addresses: 'tuple[str, ...]' = (), version_tags: 'tuple[str, ...]' = (), build_args: 'DockerBuildArgs' = DockerBuildArgs(), from_image_build_arg_names: 'tuple[str, ...]' = (), copy_sources: 'tuple[str, ...]' = ())", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + } + ], + "DockerfileParser": [ + { + "description": null, + "help": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_desc": null, + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + } + ], + "DownloadedExternalTool": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ExternalToolRequest" + ], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_desc": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + } + ], + "EditedBuildFiles": [ + { + "description": "Edit BUILD files with new targets", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "EditBuildFilesRequest", + "TailorSubsystem" + ], + "name": "pants.core.goals.tailor.edit_build_files", + "output_desc": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + } + ], + "Export": [ + { + "description": "`export` goal", + "help": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir" + ], + "name": "pants.core.goals.export.export", + "output_desc": null, + "output_type": "Export", + "provider": "pants.core" + } + ], + "ExportCodegen": [ + { + "description": "`export-codegen` goal", + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "FilteredTargets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_desc": null, + "output_type": "ExportCodegen", + "provider": "pants.backend.docker" + } + ], + "ExportCodegenSubsystem": [ + { + "description": null, + "help": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_desc": null, + "output_type": "ExportCodegenSubsystem", + "provider": "pants.backend.docker" + } + ], + "ExportPythonTool": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AutoflakeExportSentinel", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PyUpgradeExportSentinel", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + { + "description": "Determine all Python interpreter versions used by Pytest in your project (for `export` goal)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "PytestExportSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.pytest_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by Bandit in your project (for `export` goal)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditExportSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.bandit_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": "Determine Black interpreter constraints (for `export` goal)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackExportSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.black_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.black" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DocformatterExportSentinel", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for `export` goal)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8ExportSentinel", + "Flake8", + "Flake8FirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "IsortExportSentinel", + "Isort" + ], + "name": "pants.backend.python.lint.isort.subsystem.isort_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": "Determine all Python interpreter versions used by Pylint in your project (for `export` goal)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "PylintExportSentinel", + "Pylint", + "PylintFirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pylint" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "YapfExportSentinel", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.subsystem.yapf_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": "Determine MyPy interpreter constraints (for `export` goal)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyExportSentinel", + "MyPy", + "PythonSetup", + "MyPyFirstPartyPlugins" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "output_desc": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "ExportResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "_ExportVenvRequest", + "PythonSetup", + "PexPEX" + ], + "name": "pants.backend.python.goals.export.export_virtualenv", + "output_desc": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = ())", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ExportPythonTool", + "PexPEX" + ], + "name": "pants.backend.python.goals.export.export_tool", + "output_desc": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = ())", + "output_type": "ExportResult", + "provider": "pants.backend.python" + } + ], + "ExportResults": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ExportResult, _ExportVenvRequest, ..)", + "Get(ExportPythonTool, ExportPythonToolSentinel, ..)", + "Get(ExportResult, ExportPythonTool, ..)" + ], + "input_types": [ + "ExportVenvsRequest", + "PythonSetup", + "DistDir", + "UnionMembership" + ], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_desc": null, + "output_type": "ExportResults", + "provider": "pants.backend.python" + } + ], + "ExportSubsystem": [ + { + "description": null, + "help": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export", + "output_desc": null, + "output_type": "ExportSubsystem", + "provider": "pants.core" + } + ], + "ExportedTarget": [ + { + "description": "Get exporting owner for target", + "help": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, AddressSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "OwnedDependency" + ], + "name": "pants.backend.python.goals.setup_py.get_exporting_owner", + "output_desc": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + } + ], + "ExportedTargetRequirements": [ + { + "description": "Compute distribution's 3rd party requirements", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.get_requirements", + "output_desc": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + } + ], + "ExternalHelmPluginRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestPluginBinding", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.subsystems.unittest.download_plugin_request", + "output_desc": "ExternalHelmPluginRequest(plugin_name: 'str', tool_request: 'ExternalToolRequest')", + "output_type": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm" + } + ], + "ExtractedArchive": [ + { + "description": "Extracting an archive file", + "help": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary, UnzipBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(GunzipBinary, GunzipBinaryRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MaybeExtractArchiveRequest" + ], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_desc": "The result of extracting an archive.", + "output_type": "ExtractedArchive", + "provider": "pants.core" + } + ], + "FallibleAssemblyPreCompilation": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPreCompilationRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "output_desc": "FallibleAssemblyPreCompilation(result: 'AssemblyPreCompilation | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleAssemblyPreCompilation", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleBuildGoPackageRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "ImportPathToPackages", + "GoProtobufImportPathMapping", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_desc": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": [ + "GoCodegenBuildProtobufRequest", + "GoProtobufImportPathMapping" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_desc": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + { + "description": "Set up Go compilation request", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_desc": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleBuiltGoPackage": [ + { + "description": "Compile with Go", + "help": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(FallibleAssemblyPreCompilation, AssemblyPreCompilationRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(AssemblyPostCompilation, AssemblyPostCompilationRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BuildGoPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_desc": "Fallible version of `BuiltGoPackage` with error details.", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleClasspathEntries": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ClasspathEntryRequests" + ], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_desc": null, + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + } + ], + "FallibleClasspathEntry": [ + { + "description": "Fetch with coursier", + "help": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierFetchRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Compile with scalac", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "Scalac", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Compile with javac", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": [ + "DeployJarClasspathEntryRequest" + ], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Assemble resources", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Compile with kotlinc", + "help": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(KotlincPluginTargetsForTarget, KotlincPluginsForTargetRequest, ..)", + "Get(KotlincPlugins, KotlincPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinSubsystem", + "KotlincSubsystem", + "CompileKotlinSourceRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "output_desc": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.kotlin" + } + ], + "FallibleFirstPartyPkgAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgAnalysisRequest", + "PackageAnalyzerSetup", + "GolangSubsystem" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_desc": "Metadata for a Go package, but fallible if our analysis failed.", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleFirstPartyPkgDigest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgDigestRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_desc": "The source files for a Go package, but fallible if embed preparation failed.", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + } + ], + "FallibleJavaSourceDependencyAnalysisResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_desc": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + } + ], + "FallibleKotlinSourceDependencyAnalysisResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinParserCompiledClassfiles", + "SourceFiles" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "output_desc": "FallibleKotlinSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "output_type": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin" + } + ], + "FallibleScalaSourceDependencyAnalysisResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "AnalyzeScalaSourceRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_desc": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + } + ], + "FallibleThirdPartyPkgAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyPackageRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_desc": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + } + ], + "FetchedHelmArtifacts": [ + { + "description": "Fetch third party Helm Chart artifacts", + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ResolvedHelmArtifact, HelmArtifact, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "FetchHelmArfifactsRequest" + ], + "name": "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "output_desc": null, + "output_type": "FetchedHelmArtifacts", + "provider": "pants.backend.experimental.helm" + } + ], + "FieldDefaultFactoryResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "JvmResolveFieldDefaultFactoryRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.target_types.jvm_resolve_field_default_factory", + "output_desc": "A wrapper for a function which computes the default value of a Field.", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PythonResolveFieldDefaultFactoryRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "output_desc": "A wrapper for a function which computes the default value of a Field.", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.python" + } + ], + "FileDigest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "ExtractFileDigest" + ], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_desc": null, + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + } + ], + "Filedeps": [ + { + "description": "`filedeps` goal", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, Address, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "Console", + "FiledepsSubsystem", + "BuildRoot", + "Addresses" + ], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_desc": null, + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + } + ], + "FiledepsSubsystem": [ + { + "description": null, + "help": "List all source and BUILD files a target depends on.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filedeps", + "output_desc": null, + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + } + ], + "FilterGoal": [ + { + "description": "`filter` goal", + "help": null, + "input_gets": [], + "input_types": [ + "UnexpandedTargets", + "FilterSubsystem", + "Console", + "RegisteredTargetTypes" + ], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_desc": null, + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + } + ], + "FilterSubsystem": [ + { + "description": null, + "help": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filter", + "output_desc": null, + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + } + ], + "FinalizedSetupKwargs": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "output_desc": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + } + ], + "FirstPartyHelmChartMapping": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "output_desc": null, + "output_type": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm" + } + ], + "FirstPartyPkgImportPath": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": [ + "FirstPartyPkgImportPathRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_desc": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + } + ], + "FirstPartyPythonMappingImpl": [ + { + "description": "Creating map of first party Python targets to Python modules", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_desc": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + { + "description": "Creating map of Protobuf targets to generated Python modules", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_desc": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Creating map of Thrift targets to generated Python modules", + "help": null, + "input_gets": [ + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_desc": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "FirstPartyPythonModuleMapping": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_desc": "A merged mapping of each resolve name to the first-party module names contained and their\nowning addresses.\n\nThis mapping may have been constructed from multiple distinct implementations, e.g.\nimplementations for each codegen backends.", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + } + ], + "Flake8": [ + { + "description": null, + "help": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_flake8", + "output_desc": null, + "output_type": "Flake8", + "provider": "pants.backend.python.lint.flake8" + } + ], + "Flake8FirstPartyPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Flake8" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_desc": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + } + ], + "Fmt": [ + { + "description": "`fmt` goal", + "help": null, + "input_gets": [ + "Get(_LanguageFmtResults, _LanguageFmtRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_desc": null, + "output_type": "Fmt", + "provider": "pants.core" + } + ], + "FmtResult": [ + { + "description": "Format with buf format", + "help": null, + "input_gets": [ + "Get(ProcessResult, BufFormatRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "BufFormatRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + { + "description": "Format with gofmt", + "help": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GofmtRequest", + "GofmtSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Format with Google Java Format", + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GoogleJavaFormatRequest", + "GoogleJavaFormatSubsystem", + "InternalJdk" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": "Format with Ktlint", + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KtlintToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "KtlintRequest", + "KtlintSubsystem", + "InternalJdk" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + { + "description": "Format with Autoflake", + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "AutoflakeRequest", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": "Format with pyupgrade", + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PyUpgradeRequest", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + { + "description": "Format with scalafmt", + "help": null, + "input_gets": [ + "Get(Setup, ScalafmtRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ScalafmtRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + { + "description": "Format with `terraform fmt`", + "help": null, + "input_gets": [ + "Get(StyleSetup, StyleSetupRequest, ..)", + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "TffmtRequest", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": "Format with Black", + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "BlackRequest", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.black" + }, + { + "description": "Format with docformatter", + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DocformatterRequest", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": "Format with isort", + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "IsortRequest", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": "Format with yapf", + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "YapfRequest", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": "Format with shfmt", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ShfmtRequest", + "Shfmt" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_desc": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "output_type": "FmtResult", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "FmtSubsystem": [ + { + "description": null, + "help": "Autoformat source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fmt", + "output_desc": null, + "output_type": "FmtSubsystem", + "provider": "pants.core" + } + ], + "GenerateJvmLockfile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_desc": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', artifacts: 'ArtifactRequirements')", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": [ + "GenerateJvmLockfileFromTool" + ], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_desc": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', artifacts: 'ArtifactRequirements')", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + } + ], + "GenerateJvmLockfileFromTool": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalapbcToolLockfileSentinel", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "JavaParserToolLockfileSentinel" + ], + "name": "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "JunitToolLockfileSentinel", + "JUnit" + ], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KotlinParserToolLockfileSentinel" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KtlintToolLockfileSentinel", + "KtlintSubsystem" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalatestToolLockfileSentinel", + "Scalatest" + ], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaParserToolLockfileSentinel" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalafmtToolLockfileSentinel", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_desc": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "GenerateLockfileResult": [ + { + "description": "Generate Python lockfile", + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, PexCliProcess, ..)", + "Get(MaybeWarnPythonRepos, MaybeWarnPythonReposRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "PoetrySubsystem", + "GenerateLockfilesSubsystem", + "PythonRepos", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_desc": "The result of generating a lockfile for a particular resolve.", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.docker" + }, + { + "description": "Generate JVM lockfile", + "help": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_desc": "The result of generating a lockfile for a particular resolve.", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + } + ], + "GenerateLockfilesGoal": [ + { + "description": "`generate-lockfiles` goal", + "help": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, RequestedUserResolveNames, ..)", + "Get(WrappedGenerateLockfile, GenerateToolLockfileSentinel, ..)", + "Get(GenerateLockfileResult, GenerateLockfile, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_desc": null, + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + } + ], + "GenerateLockfilesSubsystem": [ + { + "description": null, + "help": "Generate lockfiles for Python third-party dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_desc": null, + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + } + ], + "GenerateOneBSPBuildTargetResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPBuildTargetsMetadataResult, BSPBuildTargetsMetadataRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "GenerateOneBSPBuildTargetRequest", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "output_desc": "GenerateOneBSPBuildTargetResult(build_target: 'BuildTarget', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core" + } + ], + "GeneratePythonLockfile": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "LambdexLockfileSentinel", + "Lambdex", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "MypyProtobufLockfileSentinel", + "PythonProtobufMypyPlugin", + "PythonSetup" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DockerfileParserLockfileSentinel", + "DockerfileParser", + "PythonSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "TwineLockfileSentinel", + "TwineSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AutoflakeLockfileSentinel", + "Autoflake", + "PythonSetup" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PyUpgradeLockfileSentinel", + "PyUpgrade", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "TerraformHcl2ParserLockfileSentinel", + "TerraformHcl2Parser", + "PythonSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "CoveragePyLockfileSentinel", + "CoverageSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by iPython in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "IPythonLockfileSentinel", + "IPython", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by Pytest in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "PytestLockfileSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by setuptools in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "SetuptoolsLockfileSentinel", + "Setuptools", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + { + "description": "Determine all Python interpreter versions used by Bandit in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditLockfileSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": "Determine Black interpreter constraints (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackLockfileSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.black" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "DocformatterLockfileSentinel", + "Docformatter", + "PythonSetup" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.docformatter" + }, + { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8LockfileSentinel", + "Flake8FirstPartyPlugins", + "Flake8", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "IsortLockfileSentinel", + "Isort", + "PythonSetup" + ], + "name": "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.isort" + }, + { + "description": "Determine all Python interpreter versions used by Pylint in your project (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "PylintLockfileSentinel", + "PylintFirstPartyPlugins", + "Pylint", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pylint" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "YapfLockfileSentinel", + "Yapf", + "PythonSetup" + ], + "name": "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.yapf" + }, + { + "description": "Determine MyPy interpreter constraints (for lockfile generation)", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyLockfileSentinel", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "output_desc": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "GeneratedSetupPy": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.generate_setup_py", + "output_desc": "GeneratedSetupPy(digest: 'Digest')", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + } + ], + "GeneratedSources": [ + { + "description": "Relocating loose files for `relocated_files` targets", + "help": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "RelocateFilesViaCodegenRequest" + ], + "name": "pants.core.target_types.relocate_files", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + { + "description": "Generate Python from Protobuf", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Generate Python from Thrift", + "help": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateDockerContextFiles" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateDockerfileRequest" + ], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + { + "description": "Generate Go source files from Protobuf", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + { + "description": "Generate Java from Protobuf", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + { + "description": "Generate Scala from Protobuf", + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + { + "description": "Running shell command", + "help": null, + "input_gets": [ + "Get(ProcessResult, ShellCommandProcessRequest, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "GenerateFilesFromShellCommandRequest" + ], + "name": "pants.backend.shell.shell_command.run_shell_command", + "output_desc": "GeneratedSources(snapshot: 'Snapshot')", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + } + ], + "GeneratedTargets": [ + { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "help": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromGoModRequest", + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateTargetsFromPexBinaries", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "PythonSetup" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + { + "description": "Generate `python_requirement` targets from requirements.txt", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_desc": "A mapping of the address of generated targets to the targets themselves.", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + } + ], + "GeneratedTestMain": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GenerateTestMainRequest" + ], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_desc": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + } + ], + "GeneratedThriftSources": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "GenerateThriftSourcesRequest", + "ApacheThriftSetup" + ], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_desc": "GeneratedThriftSources(snapshot: 'Snapshot')", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "GitBinary": [ + { + "description": "Finding the `git` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_git", + "output_desc": null, + "output_type": "GitBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GitBinaryRequest", + "GitBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_git_wrapper", + "output_desc": null, + "output_type": "GitBinary", + "provider": "pants.core" + } + ], + "GlobalOptions": [ + { + "description": null, + "help": "Options to control the overall behavior of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_", + "output_desc": null, + "output_type": "GlobalOptions", + "provider": "pants.core" + } + ], + "GlobalRequirementConstraints": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_desc": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + } + ], + "GoBinaryMainPackage": [ + { + "description": "Determine first-party package used by `go_binary` target", + "help": null, + "input_gets": [ + "Get(WrappedTarget, AddressInput, ..)", + "Get(Targets, AddressSpecs, ..)", + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "GoBinaryMainPackageRequest" + ], + "name": "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary", + "output_desc": "GoBinaryMainPackage(address: 'Address')", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + } + ], + "GoCompileActionIdResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)" + ], + "input_types": [ + "GoCompileActionIdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_desc": "GoCompileActionIdResult(action_id: 'str')", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + } + ], + "GoModInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoModInfoRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_desc": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + } + ], + "GoProtobufImportPathMapping": [ + { + "description": "Map import paths for all Go Protobuf targets.", + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_desc": "Maps import paths of Go Protobuf packages to the addresses.", + "output_type": "GoProtobufImportPathMapping", + "provider": "pants.backend.experimental.codegen.protobuf.go" + } + ], + "GoRoot": [ + { + "description": "Find Go binary", + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GolangSubsystem" + ], + "name": "pants.backend.go.subsystems.golang.setup_goroot", + "output_desc": "Path to the Go installation (the `GOROOT`).", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + } + ], + "GoSdkRunSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_desc": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + } + ], + "GoSdkToolIDResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoSdkToolIDRequest" + ], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_desc": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + } + ], + "GoStdLibImports": [ + { + "description": "Determine Go std lib's imports", + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "output_desc": "A mapping of standard library import paths to the `.a` static file paths for that import\npath.\n\nFor example, \"net/smtp\": \"/absolute_path_to_goroot/pkg/darwin_arm64/net/smtp.a\".", + "output_type": "GoStdLibImports", + "provider": "pants.backend.experimental.go" + } + ], + "GoTestSubsystem": [ + { + "description": null, + "help": "Options for Go tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_test", + "output_desc": null, + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + } + ], + "GofmtSubsystem": [ + { + "description": null, + "help": "Gofmt-specific options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_gofmt", + "output_desc": null, + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + } + ], + "GolangSubsystem": [ + { + "description": null, + "help": "Options for Golang support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_golang", + "output_desc": null, + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + } + ], + "GoogleJavaFormatSubsystem": [ + { + "description": null, + "help": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_desc": null, + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + } + ], + "GrpcPythonPlugin": [ + { + "description": null, + "help": "The gRPC Protobuf plugin for Python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_desc": null, + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "GunzipBinary": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PythonBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip", + "output_desc": "GunzipBinary(python: 'PythonBinary')", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GunzipBinaryRequest", + "GunzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip_wrapper", + "output_desc": "GunzipBinary(python: 'PythonBinary')", + "output_type": "GunzipBinary", + "provider": "pants.core" + } + ], + "Hadolint": [ + { + "description": null, + "help": "A linter for Dockerfiles.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_hadolint", + "output_desc": null, + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + } + ], + "HandleJavacOptionsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)" + ], + "input_types": [ + "HandleJavacOptionsRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_desc": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + } + ], + "HandleScalacOptionsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "HandleScalacOptionsRequest", + "BuildRoot", + "Workspace" + ], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_desc": "HandleScalacOptionsResult(item: 'ScalacOptionsItem')", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + } + ], + "HelmBinary": [ + { + "description": "Download and configure Helm", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "HelmSubsystem", + "HelmPlugins" + ], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_desc": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmChart": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "FetchedHelmArtifact" + ], + "name": "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "output_desc": "HelmChart(address: 'Address', metadata: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + { + "description": "Collect all source code and subcharts of a Helm Chart", + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(FetchedHelmArtifacts, FetchHelmArfifactsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchedHelmArtifact, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_desc": "HelmChart(address: 'Address', metadata: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmChartMetadata": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParseHelmChartMetadataDigest" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "output_desc": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "HelmChartMetaSourceField" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "output_desc": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmChartSourceFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartSourceFilesRequest" + ], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_desc": "HelmChartSourceFiles(snapshot: 'Snapshot')", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmPlugin": [ + { + "description": "Download an external Helm plugin", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ExternalHelmPluginRequest" + ], + "name": "pants.backend.helm.util_rules.plugins.download_external_helm_plugin", + "output_desc": "HelmPlugin(metadata: 'HelmPluginMetadata', digest: 'Digest')", + "output_type": "HelmPlugin", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HelmPlugin, ExternalHelmPluginBinding, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.helm.util_rules.plugins.all_helm_plugins", + "output_desc": null, + "output_type": "HelmPlugins", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmSubsystem": [ + { + "description": null, + "help": "The Helm command line (https://helm.sh)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm", + "output_desc": null, + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + } + ], + "HelmUnitTestSubsystem": [ + { + "description": null, + "help": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_unittest", + "output_desc": null, + "output_type": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm" + } + ], + "IPython": [ + { + "description": null, + "help": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ipython", + "output_desc": null, + "output_type": "IPython", + "provider": "pants.backend.python" + } + ], + "ImportConfig": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ImportConfigRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.util_rules.import_analysis.generate_import_config", + "output_desc": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + } + ], + "ImportPathToPackages": [ + { + "description": "Map all Go targets to their import paths", + "help": null, + "input_gets": [ + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "AllGoTargets" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_desc": "ImportPathToPackages(mapping: 'FrozenDict[str, tuple[Address, ...]]')", + "output_type": "ImportPathToPackages", + "provider": "pants.backend.experimental.go" + } + ], + "InferredDependencies": [ + { + "description": "Inferring Python dependencies by analyzing source", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargets, AllAssetTargetsRequest, ..)", + "Get(AllAssetTargetsByPath, AllAssetTargets, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + { + "description": "Inferring Protobuf dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "InferProtobufDependencies", + "ProtobufMapping", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Inferring Thrift dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": "Infer dependencies on Protobuf sources for first-party Go packages", + "help": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoProtobufDependenciesRequest", + "GoProtobufImportPathMapping" + ], + "name": "pants.backend.codegen.protobuf.go.rules.infer_go_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + { + "description": "Infer dependencies for first-party Go packages", + "help": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoPackageDependenciesRequest", + "GoStdLibImports", + "ImportPathToPackages" + ], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Inferring Helm chart dependencies", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "InferHelmChartDependenciesRequest", + "FirstPartyHelmChartMapping", + "ThirdPartyHelmArtifactMapping", + "HelmSubsystem" + ], + "name": "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + { + "description": "Inferring Java dependencies by source analysis", + "help": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": [ + "InferJavaSourceDependencies" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Inferring Kotlin dependencies by analyzing sources", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferKotlinSourceDependencies", + "KotlinInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + { + "description": "Inferring Scala dependencies by analyzing sources", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, AddressSpecs, ..)" + ], + "input_types": [ + "InferTerraformModuleDependenciesRequest" + ], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": "Inferring dependencies on `__init__.py` files", + "help": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + { + "description": "Inferring dependencies on `conftest.py` files", + "help": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + { + "description": "Inferring Shell dependencies by analyzing imports", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": [ + "InferShellDependencies", + "ShellMapping", + "ShellSetup" + ], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_desc": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + } + ], + "InitializeBuildResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "InitializeBuildParams", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_desc": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + } + ], + "InjectedDependencies": [ + { + "description": "Inferring dependency from the python_awslambda `handler` field", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonLambdaHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.awslambda.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "InjectPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "InjectApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": null, + "help": "Inspects COPY instructions in the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Addresses, AddressSpecs, ..)", + "Get(Targets, Addresses, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)" + ], + "input_types": [ + "InjectDockerDependencies" + ], + "name": "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.docker" + }, + { + "description": "Infer dependencies for third-party Go packages", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InjectGoThirdPartyPackageDependenciesRequest", + "GoStdLibImports", + "ImportPathToPackages" + ], + "name": "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "InjectGoBinaryMainDependencyRequest" + ], + "name": "pants.backend.go.target_type_rules.inject_go_binary_main_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ScalaPBRuntimeForResolve, ScalaPBRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InjectScalaPBRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.inject_scalapb_runtime_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)" + ], + "input_types": [ + "InjectHelmUnitTestChartDependencyRequest", + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.unittest.inject_chart_dependency_into_unittests", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.helm" + }, + { + "description": "Inject dependency on Kotlin runtime artifacts for Kotlin targets.", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(KotlinRuntimeForResolve, KotlinRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InjectKotlinRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.inject_kotlin_stdlib_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + { + "description": "Inject dependency on scala-library artifact for Scala target.", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InjectScalaLibraryDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Inject dependency on scala plugin artifacts for Scala target.", + "help": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": [ + "InjectScalaPluginDependenciesRequest" + ], + "name": "pants.backend.scala.dependency_inference.rules.inject_scala_plugin_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Inferring dependency from the python_google_cloud_function `handler` field", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonCloudFunctionHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.google_cloud_function.python" + }, + { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": "Inject dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.inject_python_distribution_dependencies", + "output_desc": null, + "output_type": "InjectedDependencies", + "provider": "pants.backend.python" + } + ], + "InternalJdk": [ + { + "description": null, + "help": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)" + ], + "input_types": [ + "JvmSubsystem" + ], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_desc": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + } + ], + "InterpreterConstraints": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "InterpreterConstraintsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_desc": null, + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + } + ], + "Isort": [ + { + "description": null, + "help": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_isort", + "output_desc": null, + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + } + ], + "JUnit": [ + { + "description": null, + "help": "The JUnit test framework (https://junit.org)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_junit", + "output_desc": null, + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + } + ], + "JavaInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_java_infer", + "output_desc": null, + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "JavaInferredDependencies": [ + { + "description": "Inferring Java dependencies and exports by source analysis", + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_desc": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + } + ], + "JavaParserCompiledClassfiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.java.dependency_inference.java_parser.build_processors", + "output_desc": "JavaParserCompiledClassfiles(digest: 'Digest')", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + } + ], + "JavaSourceDependencyAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "ProcessCleanupOption" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_desc": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + } + ], + "JavaSourceDependencyAnalysisRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "SourceFiles" + ], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_desc": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + } + ], + "JavacOptionsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": [ + "JavacOptionsParams" + ], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_desc": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + } + ], + "JavacSubsystem": [ + { + "description": null, + "help": "The javac Java source compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_javac", + "output_desc": null, + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "JdkEnvironment": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_desc": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int', global_jvm_options: 'tuple[str, ...]')", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + } + ], + "JvmSubsystem": [ + { + "description": null, + "help": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jvm", + "output_desc": null, + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + } + ], + "KnownUserResolveNames": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KnownPythonUserResolveNamesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_desc": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KnownJVMUserResolveNamesRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_desc": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + } + ], + "KotlinInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Kotlin targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin_infer", + "output_desc": null, + "output_type": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin" + } + ], + "KotlinParserCompiledClassfiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "output_desc": null, + "output_type": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin" + } + ], + "KotlinRuntimeForResolve": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KotlinRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "output_desc": "KotlinRuntimeForResolve(addresses: 'frozenset[Address]')", + "output_type": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin" + } + ], + "KotlinSourceDependencyAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleKotlinSourceDependencyAnalysisResult", + "ProcessCleanupOption" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "output_desc": "KotlinSourceDependencyAnalysis(package: 'str', imports: 'frozenset[KotlinImport]', named_declarations: 'frozenset[str]', consumed_symbols_by_scope: 'FrozenDict[str, frozenset[str]]', scopes: 'frozenset[str]')", + "output_type": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin" + } + ], + "KotlinSubsystem": [ + { + "description": null, + "help": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin", + "output_desc": null, + "output_type": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin" + } + ], + "KotlincPluginTargetsForTarget": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "KotlincPluginsForTargetRequest", + "AllKotlincPluginTargets", + "JvmSubsystem", + "KotlincSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "output_desc": "KotlincPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "output_type": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin" + } + ], + "KotlincPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "KotlincPluginsRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "output_desc": "KotlincPlugins(ids: 'tuple[str, ...]', classpath: 'ClasspathEntry', plugin_args: 'FrozenDict[str, tuple[str, ...]]')", + "output_type": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin" + } + ], + "KotlincPluginsForTargetRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "KotlincPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "output_desc": "KotlincPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "output_type": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin" + } + ], + "KotlincSubsystem": [ + { + "description": null, + "help": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlinc", + "output_desc": null, + "output_type": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin" + } + ], + "KtlintSubsystem": [ + { + "description": null, + "help": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ktlint", + "output_desc": null, + "output_type": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + } + ], + "Lambdex": [ + { + "description": null, + "help": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lambdex", + "output_desc": null, + "output_type": "Lambdex", + "provider": "pants.backend.awslambda.python" + } + ], + "LinkedGoBinary": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "LinkGoBinaryRequest" + ], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_desc": "A linked Go binary stored in a `Digest`.", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + } + ], + "Lint": [ + { + "description": "`lint` goal", + "help": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsSnapshot, Specs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(LintResults, LintTargetsRequest, ..)", + "Get(FmtResult, FmtRequest, ..)", + "Get(LintResults, LintFilesRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Specs", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_desc": null, + "output_type": "Lint", + "provider": "pants.core" + } + ], + "LintResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "BanditPartition", + "Bandit" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "output_desc": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Flake8Partition", + "Flake8", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "output_desc": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "PylintPartition", + "Pylint", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "output_desc": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + } + ], + "LintResults": [ + { + "description": "Lint with regex patterns", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "RegexLintRequest", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.project_info" + }, + { + "description": "Lint with buf lint", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BufLintRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + { + "description": "Lint with Hadolint", + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "HadolintRequest", + "Hadolint" + ], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.docker.lint.hadolint" + }, + { + "description": "Lint Helm charts", + "help": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)" + ], + "input_types": [ + "HelmLintRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.experimental.helm" + }, + { + "description": "Lint with Bandit", + "help": null, + "input_gets": [ + "Get(LintResult, BanditPartition, ..)" + ], + "input_types": [ + "BanditRequest", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.bandit" + }, + { + "description": "Lint with Flake8", + "help": null, + "input_gets": [ + "Get(LintResult, Flake8Partition, ..)" + ], + "input_types": [ + "Flake8Request", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.flake8" + }, + { + "description": "Lint using Pylint", + "help": null, + "input_gets": [ + "Get(PylintPartitions, PylintRequest, ..)", + "Get(LintResult, PylintPartition, ..)" + ], + "input_types": [ + "PylintRequest", + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.pylint" + }, + { + "description": "Lint with Shellcheck", + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ShellcheckRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_desc": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "output_type": "LintResults", + "provider": "pants.backend.shell.lint.shellcheck" + } + ], + "LintSubsystem": [ + { + "description": null, + "help": "Run all linters and/or formatters in check mode.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lint", + "output_desc": null, + "output_type": "LintSubsystem", + "provider": "pants.core" + } + ], + "List": [ + { + "description": "`list` goal", + "help": null, + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "Addresses", + "ListSubsystem", + "Console" + ], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_desc": null, + "output_type": "List", + "provider": "pants.backend.project_info" + } + ], + "ListSubsystem": [ + { + "description": null, + "help": "Lists all targets matching the file or target arguments.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_list", + "output_desc": null, + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + } + ], + "LoadedGoBinary": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "LoadedGoBinaryRequest" + ], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_desc": "LoadedGoBinary(digest: 'Digest')", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + } + ], + "LoadedLockfile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "LoadedLockfileRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_desc": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "output_type": "LoadedLockfile", + "provider": "pants.core" + } + ], + "LocalDistWheels": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, Address, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_desc": "Contains the wheels isolated from a single local Python distribution.", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + } + ], + "LocalDistsPex": [ + { + "description": "Building local distributions", + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "LocalDistsPexRequest" + ], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_desc": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + } + ], + "MaterializeBuildTargetSourcesResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "MaterializeBuildTargetSourcesRequest", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_desc": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + } + ], + "MaterializeScalaRuntimeJarsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "MaterializeScalaRuntimeJarsRequest" + ], + "name": "pants.backend.scala.bsp.rules.materialize_scala_runtime_jars", + "output_desc": "MaterializeScalaRuntimeJarsResult(content: 'Snapshot')", + "output_type": "MaterializeScalaRuntimeJarsResult", + "provider": "pants.backend.experimental.scala" + } + ], + "MaterializedJvmPlugin": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "MaterializeJvmPluginRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_desc": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + } + ], + "MaterializedJvmPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "MaterializeJvmPluginsRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_desc": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + } + ], + "MaybeExtractArchiveRequest": [ + { + "description": null, + "help": "Backwards-compatibility helper.", + "input_gets": [], + "input_types": [ + "Digest" + ], + "name": "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest", + "output_desc": "A request to extract a single archive file (otherwise returns the input digest).\n\n:param digest: The digest of the archive to maybe extract. If the archive contains a single file\n which matches a known suffix, the `ExtractedArchive` will contain the extracted digest.\n Otherwise the `ExtractedArchive` will contain this digest.\n:param use_suffix: If provided, extracts the single file archive as if it had this suffix.\n Useful in situations where the file is archived then renamed.\n (E.g. A Python `.whl` is a renamed `.zip`, so the client should provide `\".zip\"`)", + "output_type": "MaybeExtractArchiveRequest", + "provider": "pants.core" + } + ], + "MaybeGitBinary": [ + { + "description": "Finding the `git` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.maybe_find_git", + "output_desc": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "MaybeGitBinaryRequest", + "MaybeGitBinary" + ], + "name": "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "output_desc": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + } + ], + "MaybeGitWorktree": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GitWorktreeRequest", + "MaybeGitBinary" + ], + "name": "pants.vcs.git.get_git_worktree", + "output_desc": "MaybeGitWorktree(git_worktree: 'GitWorktree | None' = None)", + "output_type": "MaybeGitWorktree", + "provider": "pants.core" + } + ], + "MaybeWarnPythonRepos": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "MaybeWarnPythonReposRequest", + "PythonRepos" + ], + "name": "pants.backend.python.goals.lockfile.maybe_warn_python_repos", + "output_desc": null, + "output_type": "MaybeWarnPythonRepos", + "provider": "pants.backend.docker" + } + ], + "MergedCoverageData": [ + { + "description": "Merge Pytest coverage data", + "help": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_desc": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + } + ], + "MkdirBinary": [ + { + "description": "Finding the `mkdir` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_desc": null, + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "MkdirBinaryRequest", + "MkdirBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_mkdir_wrapper", + "output_desc": null, + "output_type": "MkdirBinary", + "provider": "pants.core" + } + ], + "ModuleDescriptors": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ModuleDescriptorsRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_desc": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + } + ], + "MyPy": [ + { + "description": null, + "help": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy", + "output_desc": null, + "output_type": "MyPy", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "MyPyConfigFile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_desc": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "MyPyFirstPartyPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_desc": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "MyPyPartitions": [ + { + "description": "Determine if necessary to partition MyPy input", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_desc": null, + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + } + ], + "Nailgun": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_desc": "Nailgun(classpath_entry: 'ClasspathEntry')", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + } + ], + "OptionalPex": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)" + ], + "input_types": [ + "OptionalPexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_desc": "OptionalPex(maybe_pex: 'Pex | None')", + "output_type": "OptionalPex", + "provider": "pants.core" + } + ], + "OptionalPexRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)" + ], + "input_types": [ + "_RepositoryPexRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_desc": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_desc": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + } + ], + "OptionalSourceRoot": [ + { + "description": null, + "help": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest", + "SourceRootConfig" + ], + "name": "pants.source.source_root.get_optional_source_root", + "output_desc": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + } + ], + "OptionalSourceRootsResult": [ + { + "description": null, + "help": "Rule to request source roots that may not exist.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_optional_source_roots", + "output_desc": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + } + ], + "OwnedDependencies": [ + { + "description": "Find all code to be published in the distribution", + "help": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_owned_dependencies", + "output_desc": null, + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + } + ], + "OwningGoMod": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(UnexpandedTargets, AddressSpecs, ..)" + ], + "input_types": [ + "OwningGoModRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_go_mod", + "output_desc": "OwningGoMod(address: 'Address')", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + } + ], + "Package": [ + { + "description": "`package` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "DistDir" + ], + "name": "pants.core.goals.package.package_asset", + "output_desc": null, + "output_type": "Package", + "provider": "pants.core" + } + ], + "PackageAnalyzerSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_desc": "PackageAnalyzerSetup(digest: Digest, path: str)", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + } + ], + "PackageSubsystem": [ + { + "description": null, + "help": "Create a distributable package.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_package", + "output_desc": null, + "output_type": "PackageSubsystem", + "provider": "pants.core" + } + ], + "ParsedPythonDependencies": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ParsePythonDependenciesRequest", + "ParserScript" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_desc": "ParsedPythonDependencies(imports: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonImports, assets: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonAssetPaths)", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + } + ], + "ParsedShellImports": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ParseShellImportsRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_desc": null, + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + } + ], + "ParsedThrift": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParsedThriftRequest" + ], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_desc": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ParserScript": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "output_desc": "ParserScript(digest: Digest)", + "output_type": "ParserScript", + "provider": "pants.backend.python" + } + ], + "ParserSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_desc": "ParserSetup(pex: 'VenvPex')", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "TerraformHcl2Parser" + ], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_desc": "ParserSetup(pex: 'VenvPex')", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + } + ], + "Partition": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)" + ], + "input_types": [ + "SetupScalafmtPartition", + "InternalJdk" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "output_desc": "Partition(process: 'JvmProcess', description: 'str')", + "output_type": "Partition", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "PathsGoal": [ + { + "description": "`paths` goal", + "help": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "PathsSubsystem" + ], + "name": "pants.backend.project_info.paths.paths", + "output_desc": null, + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + } + ], + "PathsSubsystem": [ + { + "description": null, + "help": "List the paths between two addresses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_paths", + "output_desc": null, + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Peek": [ + { + "description": "`peek` goal", + "help": null, + "input_gets": [ + "Get(TargetDatas, UnexpandedTargets, ..)" + ], + "input_types": [ + "Console", + "PeekSubsystem", + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.peek", + "output_desc": null, + "output_type": "Peek", + "provider": "pants.backend.project_info" + } + ], + "PeekSubsystem": [ + { + "description": null, + "help": "Display BUILD target info", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_peek", + "output_desc": "Display detailed target information in JSON form.", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Pex": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)" + ], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_desc": "Wrapper for a digest containing a pex file created with some filename.", + "output_type": "Pex", + "provider": "pants.core" + } + ], + "PexBinaryDefaults": [ + { + "description": null, + "help": "Default settings for creating PEX executables.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_desc": null, + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + } + ], + "PexCli": [ + { + "description": null, + "help": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_desc": null, + "output_type": "PexCli", + "provider": "pants.core" + } + ], + "PexEnvironment": [ + { + "description": "Prepare environment for running PEXes", + "help": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBinary", + "PexRuntimeEnvironment", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_desc": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonExecutable | None' = None, venv_use_symlinks: 'bool' = False)", + "output_type": "PexEnvironment", + "provider": "pants.core" + } + ], + "PexFromTargetsRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RequirementsPexRequest" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirementspexrequest", + "output_desc": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None) -> 'None'", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + } + ], + "PexPEX": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "PexCli" + ], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_desc": "The Pex PEX binary.", + "output_type": "PexPEX", + "provider": "pants.core" + } + ], + "PexRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_desc": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None) -> 'None'", + "output_type": "PexRequest", + "provider": "pants.backend.python" + } + ], + "PexRequirements": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_desc": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + } + ], + "PexResolveInfo": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "VenvPex" + ], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_desc": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ProcessResult, PexProcess, ..)" + ], + "input_types": [ + "PexPEX", + "Pex" + ], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_desc": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "output_type": "PexResolveInfo", + "provider": "pants.core" + } + ], + "PexRuntimeEnvironment": [ + { + "description": null, + "help": "How Pants uses Pex to run Python subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex", + "output_desc": null, + "output_type": "PexRuntimeEnvironment", + "provider": "pants.core" + } + ], + "PoetrySubsystem": [ + { + "description": null, + "help": "Used to generate lockfiles for third-party Python dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_poetry", + "output_desc": null, + "output_type": "PoetrySubsystem", + "provider": "pants.backend.docker" + } + ], + "Process": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonNativeCode", + "GlobalOptions", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DiffBinary, DiffBinaryRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "BufFormatRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "DockerfileParseRequest", + "ParserSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "GolangSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "Coursier", + "CoursierFetchProcess" + ], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess", + "GlobalOptions" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "HelmProcess", + "HelmBinary" + ], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseTerraformModuleSources", + "ParserSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TerraformProcess", + "TerraformTool" + ], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ShellCommandProcessRequest", + "ShellSetup", + "BashBinary" + ], + "name": "pants.backend.shell.shell_command.prepare_shell_command_process", + "output_desc": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "output_type": "Process", + "provider": "pants.backend.shell" + } + ], + "ProtobufMapping": [ + { + "description": "Creating map of Protobuf file names to Protobuf targets", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_desc": "A mapping of stripped .proto file names to their owning file address.", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "Protoc": [ + { + "description": null, + "help": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protoc", + "output_desc": null, + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "Publish": [ + { + "description": "`publish` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "PublishSubsystem" + ], + "name": "pants.core.goals.publish.run_publish", + "output_desc": null, + "output_type": "Publish", + "provider": "pants.core" + } + ], + "PublishProcesses": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(PublishProcesses, PublishRequest, ..)" + ], + "input_types": [ + "PublishProcessesRequest" + ], + "name": "pants.core.goals.publish.package_for_publish", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + { + "description": "Push Helm chart to OCI registries", + "help": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "PublishHelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.publish.publish_helm_chart", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.helm" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_desc": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + } + ], + "PublishSubsystem": [ + { + "description": null, + "help": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_publish", + "output_desc": null, + "output_type": "PublishSubsystem", + "provider": "pants.core" + } + ], + "PutativeTargets": [ + { + "description": "Determine candidate Protobuf targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": "Determine candidate Thrift targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": "Determine candidate Docker targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + { + "description": "Determine candidate Go targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, AddressSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Determine candidate Helm chart targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeHelmChartTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.helm" + }, + { + "description": "Determine candidate Java targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Determine candidate Kotlin targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeKotlinTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.kotlin.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.kotlin" + }, + { + "description": "Determine candidate Scala targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Determine candidate Terraform targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeTerraformTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + { + "description": "Determine candidate Python targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, AddressSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + { + "description": "Determine candidate shell targets to create", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources" + ], + "name": "pants.backend.shell.tailor.find_putative_targets", + "output_desc": null, + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + } + ], + "PyConstraintsGoal": [ + { + "description": "`py-constraints` goal", + "help": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_desc": null, + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + } + ], + "PyConstraintsSubsystem": [ + { + "description": null, + "help": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_desc": null, + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + } + ], + "PyOxidizer": [ + { + "description": null, + "help": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_desc": null, + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + } + ], + "PyTest": [ + { + "description": null, + "help": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pytest", + "output_desc": null, + "output_type": "PyTest", + "provider": "pants.backend.python" + } + ], + "PyUpgrade": [ + { + "description": null, + "help": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_desc": null, + "output_type": "PyUpgrade", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + } + ], + "Pylint": [ + { + "description": null, + "help": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pylint", + "output_desc": null, + "output_type": "Pylint", + "provider": "pants.backend.python.lint.pylint" + } + ], + "PylintFirstPartyPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_desc": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + } + ], + "PylintPartitions": [ + { + "description": "Determine if necessary to partition Pylint input", + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "PylintRequest", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "output_desc": null, + "output_type": "PylintPartitions", + "provider": "pants.backend.python.lint.pylint" + } + ], + "PyoxidizerRunnerScript": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_desc": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + } + ], + "PytestPluginSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "RuntimePackagesPluginRequest" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_desc": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + } + ], + "PythonBinary": [ + { + "description": "Finding a `python` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "PythonBootstrap" + ], + "name": "pants.core.util_rules.system_binaries.find_python", + "output_desc": "A Python3 interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nPython is usable for `@rule` scripting independently of `pants.backend.python`, but currently\nthirdparty dependencies are not supported, because PEX lives in that backend.\n\nTODO: Consider extracting PEX out into the core in order to support thirdparty dependencies.", + "output_type": "PythonBinary", + "provider": "pants.core" + } + ], + "PythonBootstrap": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "PythonBootstrapSubsystem" + ], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_desc": "PythonBootstrap(environment: 'Environment', options: 'OptionValueContainer')", + "output_type": "PythonBootstrap", + "provider": "pants.core" + } + ], + "PythonBootstrapSubsystem": [ + { + "description": null, + "help": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_desc": null, + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + } + ], + "PythonExecutable": [ + { + "description": "Find Python interpreter for constraints", + "help": null, + "input_gets": [ + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_desc": "The BinaryPath of a Python executable.", + "output_type": "PythonExecutable", + "provider": "pants.core" + } + ], + "PythonInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_infer", + "output_desc": null, + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + } + ], + "PythonModuleOwners": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_desc": "The target(s) that own a Python module.\n\nIf >1 targets own the same module, and they're implementations (vs .pyi type stubs), they will\nbe put into `ambiguous` instead of `unambiguous`. `unambiguous` should never be > 2.", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + } + ], + "PythonNativeCode": [ + { + "description": null, + "help": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_desc": null, + "output_type": "PythonNativeCode", + "provider": "pants.core" + } + ], + "PythonProtobufMypyPlugin": [ + { + "description": null, + "help": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_desc": null, + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "PythonProtobufSubsystem": [ + { + "description": null, + "help": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.12/docs/protobuf-python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_desc": null, + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + } + ], + "PythonRepos": [ + { + "description": null, + "help": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_repos", + "output_desc": null, + "output_type": "PythonRepos", + "provider": "pants.core" + } + ], + "PythonSetup": [ + { + "description": null, + "help": "Options for Pants's Python backend.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python", + "output_desc": null, + "output_type": "PythonSetup", + "provider": "pants.core" + } + ], + "PythonSourceFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "PythonSourceFilesRequest", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_desc": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + } + ], + "RegexLintSubsystem": [ + { + "description": null, + "help": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files. To run on those, use `lint '**'` rather than `lint ::`, for example. Unfortunately, `--changed-since=` does not yet cause this linter to run. We are exploring how to improve both these gotchas.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_desc": null, + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + } + ], + "RenamedFieldTypes": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_field_types", + "output_desc": "Map deprecated field names to their new name, per target.", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + } + ], + "RenamedTargetTypes": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_target_types", + "output_desc": "Deprecated target type names to new names.", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + } + ], + "RenderedEmbedConfig": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_desc": "RenderedEmbedConfig(digest: 'Digest')", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + } + ], + "RenderedWarContent": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "RenderWarContentRequest" + ], + "name": "pants.jvm.package.war.render_war_content", + "output_desc": "RenderedWarContent(digest: Digest)", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + } + ], + "RenderedWarDeploymentDescriptor": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderWarDeploymentDescriptorRequest" + ], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_desc": "RenderedWarDeploymentDescriptor(digest: Digest)", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + } + ], + "Repl": [ + { + "description": "`repl` goal", + "help": null, + "input_gets": [ + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "ReplSubsystem", + "FilteredTargets", + "BuildRoot", + "UnionMembership", + "GlobalOptions", + "CompleteEnvironment" + ], + "name": "pants.core.goals.repl.run_repl", + "output_desc": null, + "output_type": "Repl", + "provider": "pants.core" + } + ], + "ReplRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaRepl", + "BashBinary", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_desc": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonRepl", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_desc": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_desc": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + } + ], + "ReplSubsystem": [ + { + "description": null, + "help": "Open a REPL with the specified code loadable.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_repl", + "output_desc": null, + "output_type": "ReplSubsystem", + "provider": "pants.core" + } + ], + "ResolveOneDependencyModuleResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(BSPDependencyModulesResult, BSPDependencyModulesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResolveOneDependencyModuleRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_desc": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + } + ], + "ResolvedClasspathEntries": [ + { + "description": null, + "help": "Fetch every artifact in a lockfile.", + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [ + "CoursierResolvedLockfile" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_desc": "A collection of resolved classpath entries.", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + } + ], + "ResolvedHelmArtifact": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "HelmArtifact", + "HelmSubsystem" + ], + "name": "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "output_desc": "ResolvedHelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address', location_url: 'str')", + "output_type": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm" + } + ], + "ResolvedPexEntryPoint": [ + { + "description": "Determining the entry point for a `pex_binary` target", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePexEntryPointRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_desc": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + } + ], + "ResolvedPythonAwsHandler": [ + { + "description": "Determining the handler for a `python_awslambda` target", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonAwsHandlerRequest" + ], + "name": "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "output_desc": "ResolvedPythonAwsHandler(val: str, file_name_used: bool)", + "output_type": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python" + } + ], + "ResolvedPythonDistributionEntryPoints": [ + { + "description": "Determining the entry points for a `python_distribution` target", + "help": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "ResolvePythonDistributionEntryPointsRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_desc": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + } + ], + "ResolvedPythonGoogleHandler": [ + { + "description": "Determining the handler for a `python_google_cloud_function` target", + "help": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonGoogleHandlerRequest" + ], + "name": "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "output_desc": "ResolvedPythonGoogleHandler(val: str, file_name_used: bool)", + "output_type": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python" + } + ], + "RewrittenBuildFile": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithYapfRequest", + "Yapf" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithBlackRequest", + "Black" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": "Check for deprecated target type names", + "help": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedTargetsRequest", + "RenamedTargetTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + { + "description": "Check for deprecated field type names", + "help": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedFieldsRequest", + "RenamedFieldTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_desc": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + } + ], + "Roots": [ + { + "description": "`roots` goal", + "help": null, + "input_gets": [], + "input_types": [ + "Console", + "RootsSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_desc": null, + "output_type": "Roots", + "provider": "pants.backend.project_info" + } + ], + "RootsSubsystem": [ + { + "description": null, + "help": "List the repo's registered source roots.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_roots", + "output_desc": null, + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + } + ], + "Run": [ + { + "description": "`run` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(WrappedTarget, Address, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "GlobalOptions", + "Workspace", + "BuildRoot", + "CompleteEnvironment" + ], + "name": "pants.core.goals.run.run", + "output_desc": null, + "output_type": "Run", + "provider": "pants.core" + } + ], + "RunRequest": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(__RuntimeJvm, JdkEnvironment, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "PexEnvironment" + ], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)", + "Get(Process, ShellCommandProcessRequest, ..)" + ], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.backend.shell.shell_command.run_shell_command_request", + "output_desc": "RunRequest(*, digest: Digest, args: Iterable[str], extra_env: Optional[Mapping[str, str]] = None)", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + } + ], + "RunSubsystem": [ + { + "description": null, + "help": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_run", + "output_desc": null, + "output_type": "RunSubsystem", + "provider": "pants.core" + } + ], + "ScalaInferSubsystem": [ + { + "description": null, + "help": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_desc": null, + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaMainClassesResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaMainClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request", + "output_desc": "ScalaMainClassesResult(items: 'tuple[ScalaMainClassesItem, ...]', origin_id: 'str | None' = None)", + "output_type": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaPBRuntimeForResolve": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaPBRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "output_desc": "ScalaPBRuntimeForResolve(addresses: 'frozenset[Address]')", + "output_type": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + } + ], + "ScalaPBShimCompiledClassfiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ScalaPBSubsystem", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_desc": null, + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + } + ], + "ScalaPBSubsystem": [ + { + "description": null, + "help": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalapb", + "output_desc": null, + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + } + ], + "ScalaParserCompiledClassfiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_desc": null, + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaPluginTargetsForTarget": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_desc": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaPlugins": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaPluginsRequest" + ], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_desc": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaPluginsForTargetRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_desc": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaRuntimeForResolve": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_desc": "ScalaRuntimeForResolve(addresses: 'frozenset[Address]')", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaSourceDependencyAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleScalaSourceDependencyAnalysisResult", + "ProcessCleanupOption" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_desc": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[str]', provided_symbols_encoded: 'FrozenOrderedSet[str]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaSubsystem": [ + { + "description": null, + "help": "Scala programming language", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala", + "output_desc": null, + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalaTestClassesResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaTestClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request", + "output_desc": "ScalaTestClassesResult(items: 'tuple[ScalaTestClassesItem, ...]', origin_id: 'str | None' = None)", + "output_type": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala" + } + ], + "Scalac": [ + { + "description": null, + "help": "The Scala compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalac", + "output_desc": null, + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalacOptionsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": [ + "ScalacOptionsParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_desc": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + } + ], + "ScalafmtConfigFiles": [ + { + "description": null, + "help": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "GatherScalafmtConfigFilesRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_desc": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "ScalafmtSubsystem": [ + { + "description": null, + "help": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_desc": null, + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "Scalatest": [ + { + "description": null, + "help": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalatest", + "output_desc": null, + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + } + ], + "Setup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partition, SetupScalafmtPartition, ..)" + ], + "input_types": [ + "ScalafmtRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "output_desc": "Setup(partitions: 'tuple[Partition, ...]', original_snapshot: 'Snapshot')", + "output_type": "Setup", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + } + ], + "SetupKwargs": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SetupKwargs, SetupKwargsRequest, ..)" + ], + "input_types": [ + "ExportedTarget", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "output_desc": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + } + ], + "SetupPyGeneration": [ + { + "description": null, + "help": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_desc": null, + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + } + ], + "Setuptools": [ + { + "description": null, + "help": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools", + "output_desc": null, + "output_type": "Setuptools", + "provider": "pants.backend.python" + } + ], + "ShellMapping": [ + { + "description": "Creating map of Shell file names to Shell targets", + "help": null, + "input_gets": [], + "input_types": [ + "AllShellTargets" + ], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_desc": "A mapping of Shell file names to their owning file address.", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + } + ], + "ShellSetup": [ + { + "description": null, + "help": "Options for Pants's Shell support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_desc": null, + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + } + ], + "Shellcheck": [ + { + "description": null, + "help": "A linter for shell scripts.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_desc": null, + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + } + ], + "Shfmt": [ + { + "description": null, + "help": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shfmt", + "output_desc": null, + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + } + ], + "Shunit2Runner": [ + { + "description": "Determine shunit2 shell", + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Shunit2RunnerRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_desc": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + } + ], + "SourceFiles": [ + { + "description": "Get all relevant source files", + "help": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFilesRequest" + ], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_desc": "A merged snapshot of the `sources` fields of multiple targets.", + "output_type": "SourceFiles", + "provider": "pants.core" + } + ], + "SourceRoot": [ + { + "description": null, + "help": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest" + ], + "name": "pants.source.source_root.get_source_root", + "output_desc": "SourceRoot(path: 'str')", + "output_type": "SourceRoot", + "provider": "pants.core" + } + ], + "SourceRootConfig": [ + { + "description": null, + "help": "Configuration for roots of source trees.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_source", + "output_desc": null, + "output_type": "SourceRootConfig", + "provider": "pants.core" + } + ], + "SourceRootsResult": [ + { + "description": null, + "help": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_source_roots", + "output_desc": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "output_type": "SourceRootsResult", + "provider": "pants.core" + } + ], + "SourcesResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": [ + "SourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_desc": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "output_type": "SourcesResult", + "provider": "pants.core" + } + ], + "StatsAggregatorSubsystem": [ + { + "description": null, + "help": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_stats", + "output_desc": null, + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + } + ], + "StrippedFileName": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "StrippedFileNameRequest" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_desc": "StrippedFileName(value: str)", + "output_type": "StrippedFileName", + "provider": "pants.core" + } + ], + "StrippedPythonSourceFiles": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFiles, ..)" + ], + "input_types": [ + "PythonSourceFiles" + ], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_desc": "A PythonSourceFiles that has had its source roots stripped.", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + } + ], + "StrippedSourceFileNames": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourcesPaths" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_desc": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + } + ], + "StrippedSourceFiles": [ + { + "description": null, + "help": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFiles" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_desc": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + } + ], + "StyleSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "StyleSetupRequest" + ], + "name": "pants.backend.terraform.style.setup_terraform_style", + "output_desc": "StyleSetup(directory_to_process: 'dict[str, tuple[TerraformProcess, tuple[Address, ...]]]', original_snapshot: 'Snapshot')", + "output_type": "StyleSetup", + "provider": "pants.backend.experimental.terraform" + } + ], + "SubprocessEnvironment": [ + { + "description": null, + "help": "Environment settings for forked subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_desc": null, + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + } + ], + "SubprocessEnvironmentVars": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "SubprocessEnvironment" + ], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_desc": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + } + ], + "SuccinctCodeCounter": [ + { + "description": null, + "help": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scc", + "output_desc": null, + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + } + ], + "SymbolMap": [ + { + "description": "Map all first party Java targets to their packages", + "help": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_desc": "The first party symbols provided by a single inference implementation.", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Map all first party Kotlin targets to their symbols", + "help": null, + "input_gets": [ + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyKotlinTargetsMappingRequest", + "AllKotlinTargets", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "output_desc": "The first party symbols provided by a single inference implementation.", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.kotlin" + }, + { + "description": "Map all first party Scala targets to their symbols", + "help": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_desc": "The first party symbols provided by a single inference implementation.", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + } + ], + "SymbolMapping": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SymbolMap, FirstPartyMappingRequest, ..)" + ], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem", + "ThirdPartySymbolMapping" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "output_desc": "The merged first and third party symbols provided by all inference implementations.", + "output_type": "SymbolMapping", + "provider": "pants.backend.experimental.java" + } + ], + "TailorGoal": [ + { + "description": "`tailor` goal", + "help": null, + "input_gets": [ + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_desc": null, + "output_type": "TailorGoal", + "provider": "pants.core" + } + ], + "TailorSubsystem": [ + { + "description": null, + "help": "Auto-generate BUILD file targets for new source files.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_tailor", + "output_desc": null, + "output_type": "TailorSubsystem", + "provider": "pants.core" + } + ], + "TarBinary": [ + { + "description": "Finding the `tar` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_desc": null, + "output_type": "TarBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "TarBinaryRequest", + "TarBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_tar_wrapper", + "output_desc": null, + "output_type": "TarBinary", + "provider": "pants.core" + } + ], + "TargetDatas": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.get_target_data", + "output_desc": null, + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + } + ], + "TargetFilesGeneratorSettings": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ScalaSettingsRequest" + ], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ShellGeneratorSettingsRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.target_types.generator_settings", + "output_desc": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + } + ], + "Targets": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Targets, AddressSpecs, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal", + "UnionMembership", + "FieldDefaults" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "output_desc": "A heterogeneous collection of instances of Target subclasses.\n\nWhile every element will be a subclass of `Target`, there may be many different `Target` types\nin this collection, e.g. some `FileTarget` and some `PythonTestTarget`.\n\nOften, you will want to filter out the relevant targets by looking at what fields they have\nregistered, e.g.:\n\n valid_tgts = [tgt for tgt in tgts if tgt.has_fields([Compatibility, PythonSources])]\n\nYou should not check the Target's actual type because this breaks custom target types;\nfor example, prefer `tgt.has_field(PythonTestsSourcesField)` to\n`isinstance(tgt, PythonTestsTarget)`.", + "output_type": "Targets", + "provider": "pants.core" + } + ], + "TerraformHcl2Parser": [ + { + "description": null, + "help": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_desc": null, + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + } + ], + "TerraformTool": [ + { + "description": null, + "help": "Terraform (https://terraform.io)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_desc": null, + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + } + ], + "TerraformValidateSubsystem": [ + { + "description": null, + "help": "Terraform validate options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_desc": null, + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + } + ], + "Test": [ + { + "description": "`test` goal", + "help": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(TestDebugRequest, TestFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(TestResult, TestFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, CoverageDataCollection, ..)", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId" + ], + "name": "pants.core.goals.test.run_tests", + "output_desc": null, + "output_type": "Test", + "provider": "pants.core" + } + ], + "TestDebugRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GoTestFieldSet" + ], + "name": "pants.backend.go.goals.test.generate_go_tests_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.go" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestFieldSet" + ], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.helm" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Set up Pytest to run interactively", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "PythonTestFieldSet" + ], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + { + "description": "Setup Shunit2 to run interactively", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Shunit2FieldSet" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_desc": "TestDebugRequest(process: 'InteractiveProcess | None')", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + } + ], + "TestExtraEnv": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "TestSubsystem" + ], + "name": "pants.core.goals.test.get_filtered_environment", + "output_desc": "TestExtraEnv(env: 'Environment')", + "output_type": "TestExtraEnv", + "provider": "pants.core" + } + ], + "TestResult": [ + { + "description": "Test with Go", + "help": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GoTestFieldSet", + "TestSubsystem", + "GoTestSubsystem" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + { + "description": "Run Helm Unittest", + "help": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "HelmUnitTestFieldSet", + "TestSubsystem", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.test.unittest.run_helm_unittest", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.helm" + }, + { + "description": "Run JUnit", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.run_junit_test", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + { + "description": "Run Scalatest", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + { + "description": "Run Pytest", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "PythonTestFieldSet", + "TestSubsystem" + ], + "name": "pants.backend.python.goals.pytest_runner.run_python_test", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + { + "description": "Run tests with Shunit2", + "help": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Shunit2FieldSet", + "TestSubsystem" + ], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_desc": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "output_type": "TestResult", + "provider": "pants.backend.shell" + } + ], + "TestSetup": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_desc": "TestSetup(process: pants.jvm.jdk_rules.JvmProcess, reports_dir_prefix: str)", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_desc": "TestSetup(process: pants.jvm.jdk_rules.JvmProcess, reports_dir_prefix: str)", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "PythonSetup", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_desc": "TestSetup(process: pants.engine.process.Process, results_file_name: Optional[str])", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + { + "description": "Setup shunit2", + "help": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "ShellSetup", + "TestSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_desc": "TestSetup(process: pants.engine.process.Process)", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + } + ], + "TestSubsystem": [ + { + "description": null, + "help": "Run tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_test", + "output_desc": null, + "output_type": "TestSubsystem", + "provider": "pants.core" + } + ], + "TfFmtSubsystem": [ + { + "description": null, + "help": "Terraform fmt options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_desc": null, + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + } + ], + "ThirdPartyHelmArtifactMapping": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(ResolvedHelmArtifact, HelmArtifact, ..)" + ], + "input_types": [ + "AllHelmArtifactTargets" + ], + "name": "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "output_desc": null, + "output_type": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm" + } + ], + "ThirdPartyPkgAnalysis": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "ThirdPartyPkgAnalysisRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_desc": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + } + ], + "ThirdPartyPythonModuleMapping": [ + { + "description": "Creating map of third party targets to Python modules", + "help": null, + "input_gets": [], + "input_types": [ + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_desc": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + } + ], + "ThirdPartySymbolMapping": [ + { + "description": null, + "help": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "output_desc": "The third party symbols provided by all `jvm_artifact` targets.", + "output_type": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java" + } + ], + "ThriftMapping": [ + { + "description": "Creating map of Thrift file names to Thrift targets", + "help": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllThriftTargets" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_desc": "A mapping of stripped .thrift file names to their owning file address.", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ThriftPythonSubsystem": [ + { + "description": null, + "help": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_desc": null, + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ThriftSubsystem": [ + { + "description": null, + "help": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_thrift", + "output_desc": null, + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + } + ], + "ToolClasspath": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "ToolClasspathRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_desc": "A fully fetched and merged classpath for running a JVM tool.", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + } + ], + "TwineSubsystem": [ + { + "description": null, + "help": "The utility for publishing Python distributions to PyPi and other Python repositories.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_twine", + "output_desc": null, + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + } + ], + "UniquelyNamedPutativeTargets": [ + { + "description": null, + "help": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": [ + "PutativeTargets", + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_desc": "Putative targets that have no name conflicts with existing targets (or each other).", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + } + ], + "UnzipBinary": [ + { + "description": "Finding the `unzip` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_desc": null, + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "UnzipBinaryRequest", + "UnzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "output_desc": null, + "output_type": "UnzipBinary", + "provider": "pants.core" + } + ], + "UpdateBuildFilesGoal": [ + { + "description": "Update all BUILD files", + "help": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_desc": null, + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + } + ], + "UpdateBuildFilesSubsystem": [ + { + "description": null, + "help": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.12/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_desc": null, + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + } + ], + "UserGenerateLockfiles": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_desc": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_desc": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + } + ], + "ValidateJvmArtifactsForResolveResult": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_desc": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + } + ], + "ValidatedDependencies": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(WrappedTarget, Address, ..)" + ], + "input_types": [ + "PythonValidateDependenciesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.validate_python_dependencies", + "output_desc": "ValidatedDependencies()", + "output_type": "ValidatedDependencies", + "provider": "pants.backend.python" + } + ], + "VenvPex": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexRequest", + "BashBinary", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_desc": "VenvPex(digest: 'Digest', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "output_type": "VenvPex", + "provider": "pants.core" + } + ], + "VenvPexRequest": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_desc": "VenvPexRequest(pex_request: 'PexRequest', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "output_type": "VenvPexRequest", + "provider": "pants.core" + } + ], + "WorkspaceBuildTargetsResult": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(GenerateOneBSPBuildTargetResult, GenerateOneBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "BSPBuildTargets", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_desc": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + } + ], + "WorkunitsCallbackFactory": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "AnonymousTelemetryCallbackFactoryRequest", + "AnonymousTelemetry" + ], + "name": "pants.goal.anonymous_telemetry.construct_callback", + "output_desc": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_desc": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + } + ], + "WrappedGenerateLockfile": [ + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GeneratePythonLockfile" + ], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_desc": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.docker" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_desc": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + } + ], + "Yapf": [ + { + "description": null, + "help": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yapf", + "output_desc": null, + "output_type": "Yapf", + "provider": "pants.core" + } + ], + "ZipBinary": [ + { + "description": "Finding the `zip` binary", + "help": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_desc": null, + "output_type": "ZipBinary", + "provider": "pants.core" + }, + { + "description": null, + "help": null, + "input_gets": [], + "input_types": [ + "ZipBinaryRequest", + "ZipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_zip_wrapper", + "output_desc": null, + "output_type": "ZipBinary", + "provider": "pants.core" + } + ], + "_LanguageFmtResults": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FmtResult, FmtRequest, ..)" + ], + "input_types": [ + "_LanguageFmtRequest" + ], + "name": "pants.core.goals.fmt.fmt_language", + "output_desc": "_LanguageFmtResults(results: 'tuple[FmtResult, ...]', input: 'Digest', output: 'Digest')", + "output_type": "_LanguageFmtResults", + "provider": "pants.core" + } + ], + "_SetupGoProtocPlugin": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_desc": "_SetupGoProtocPlugin(digest: 'Digest')", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + } + ], + "__RuntimeJvm": [ + { + "description": null, + "help": null, + "input_gets": [ + "Get(Process, JvmProcess, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "JdkEnvironment" + ], + "name": "pants.jvm.run_deploy_jar.ensure_jdk_for_pants_run", + "output_desc": "Allows Coursier to download a JDK into a Digest, rather than an append-only cache for use\nwith `pants run`.\n\nThis is a hideous stop-gap, which will no longer be necessary once `InteractiveProcess` supports\nappend-only caches. (See #13852 for details on how to do this.)", + "output_type": "__RuntimeJvm", + "provider": "pants.backend.experimental.java" + } + ] + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.12.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.12/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.12.1" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.12.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": null, + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": null, + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-total-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-per-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": { + "user-agent": "pants/2.12.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.12.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-read-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": { + "user-agent": "pants/2.12.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.12.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.12/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-level=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "indicatif-spinner", + "experimental-prodash" + ], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dynamic-ui-renderer=" + ], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.12/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.12/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.12/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-thrift-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--thrift-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-expected-version=" + ], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake==1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-version=" + ], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake==1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-lockfile=" + ], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/lint/autoflake/autoflake.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=autoflake`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "help": "Don't use Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-export" + ], + "env_var": "PANTS_AUTOFLAKE_EXPORT", + "help": "If true, export a virtual environment with Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-export", + "--no-autoflake-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython==3.1.18" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython==3.1.18" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/lint/bandit/bandit.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=bandit`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-export" + ], + "env_var": "PANTS_BANDIT_EXPORT", + "help": "If true, export a virtual environment with Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-export", + "--no-bandit-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==22.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==22.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/lint/black/black.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-export" + ], + "env_var": "PANTS_BLACK_EXPORT", + "help": "If true, export a virtual environment with Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-export", + "--no-black-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-version=" + ], + "env_var": "PANTS_BUF_VERSION", + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-template=" + ], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-format-skip" + ], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "help": "Don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-skip", + "--no-buf-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--format-skip", + "--no-format-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-lint-skip" + ], + "env_var": "PANTS_BUF_LINT_SKIP", + "help": "Don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-skip", + "--no-buf-lint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-skip", + "--no-lint-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--format-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--lint-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.12/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--check-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_CHECK_ONLY", + "help": "Only run these checkerss and skip all others.\n\nThe checkers names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkerss.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--check-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependees=transitive\"\n\nThis would allow you to run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 green all-changed`, which is shorthand for `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependees=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.0-M5-18-gfebf9838c", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.0-M5-18-gfebf9838c" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.5,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.5,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/subsystems/coverage_py.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=coverage-py`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil'].\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees. If unspecified, list direct dependees only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/lint/docformatter/docformatter.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=docformatter`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-export" + ], + "env_var": "PANTS_DOCFORMATTER_EXPORT", + "help": "If true, export a virtual environment with docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-export", + "--no-docformatter-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find the Docker client and any tools required.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-tools=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_TOOLS", + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tools" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tools" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-context-root=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-context-root" + ], + "typ": "workspace_path", + "unscoped_cmd_line_args": [ + "--default-context-root" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-verbose" + ], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-verbose", + "--no-build-verbose" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-version=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-lockfile=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/docker/subsystems/dockerfile.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=dockerfile-parser`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.0.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.0.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.0.7|macos_arm64 |cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.0.7|macos_arm64 |cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]experimental-bsp-server" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--server", + "--no-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": [ + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-runner-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runner-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-groups-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--groups-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-bsp" + }, + "export": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.backend.docker", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.9.2,<4.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.9.2,<4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/lint/flake8/flake8.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=flake8`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add 'build-support/flake8' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.12/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n ```\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n ```\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[flake8].extra_requirements`.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Flake8 plugins such as 'flake8-plugins' so that the third-party requirements used by your plugin, like `flake8`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-export" + ], + "env_var": "PANTS_FLAKE8_EXPORT", + "help": "If true, export a virtual environment with Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-export", + "--no-flake8-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.flake8", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-batch-size=" + ], + "env_var": "PANTS_FMT_BATCH_SIZE", + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FMT_ONLY", + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from the option `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for Python third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "go-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "help": "Don't use gofmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-expected-version=", + "config_key": "expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-expected-version=" + ], + "env_var": "PANTS_GOLANG_EXPECTED_VERSION", + "help": "The Go version you are using, such as `1.17`.\n\nPants will only use Go distributions from `--go-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "help": "Don't use Google Java Format when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.8.0|macos_x86_64|27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|macos_arm64 |27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|linux_x86_64|9dfc155139a1e1e9b3b28f3de9907736b9dfe7cead1c3a0ae7ff0158f3191674|5895708" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.8.0|macos_x86_64|27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|macos_arm64 |27985f257a216ecab06a16e643e8cb0123e7145b5d526cfcb4ce7a31fe99f357|2428944", + "v2.8.0|linux_x86_64|9dfc155139a1e1e9b3b28f3de9907736b9dfe7cead1c3a0ae7ff0158f3191674|5895708" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "help": "Don't use Hadolint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-version=" + ], + "env_var": "PANTS_HELM_VERSION", + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-template=" + ], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-lint-strict" + ], + "env_var": "PANTS_HELM_LINT_STRICT", + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-strict", + "--no-lint-strict" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-default-registry-repository=" + ], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-default-registry-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-registry-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "helm-unittest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.2.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.2.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-template=" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "XUnit", + "NUnit", + "JUnit" + ], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "help": "Output type used for the test report", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-output-type" + ], + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": [ + "--output-type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-unittest" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/subsystems/ipython.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=ipython`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/lint/isort/isort.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=isort`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-export" + ], + "env_var": "PANTS_ISORT_EXPORT", + "help": "If true, export a virtual environment with isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-export", + "--no-isort-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-third-party-imports", + "config_key": "third_party_imports", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.13.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]java-infer-third-party-imports" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORTS", + "help": "Infer a target's third-party dependencies using Java import statements.", + "removal_hint": "Controlled by the `--imports` flag.", + "removal_version": "2.13.0.dev0", + "scoped_cmd_line_args": [ + "--java-infer-third-party-imports", + "--no-java-infer-third-party-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--third-party-imports", + "--no-third-party-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-tool-jdk=" + ], + "env_var": "PANTS_JVM_TOOL_JDK", + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-tool-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--tool-jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-global-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-global-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--global-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like ['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "kotlin": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-version-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin" + }, + "kotlin-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-imports" + ], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-consumed-types" + ], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Kotlin targets.", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin-infer" + }, + "kotlinc": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-plugins-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlinc" + }, + "ktlint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-version=" + ], + "env_var": "PANTS_KTLINT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.pinterest:ktlint:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.pinterest:ktlint:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-lockfile=" + ], + "env_var": "PANTS_KTLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ktlint-skip" + ], + "env_var": "PANTS_KTLINT_SKIP", + "help": "Don't use Ktlint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-skip", + "--no-ktlint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "scope": "ktlint" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/subsystems/lambdex.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=lambdex`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "provider": "pants.backend.awslambda.python", + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-batch-size=" + ], + "env_var": "PANTS_LINT_BATCH_SIZE", + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_LINT_ONLY", + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.910", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.910" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/typecheck/mypy/mypy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`. Tip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your MyPy plugins such as 'mypy-plugins' so that the third-party requirements used by your plugin, like `mypy`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement` target. Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-export" + ], + "env_var": "PANTS_MYPY_EXPORT", + "help": "If true, export a virtual environment with MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-export", + "--no-mypy-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python.typecheck.mypy", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-protobuf`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FROM", + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.90", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-version=" + ], + "env_var": "PANTS_PEX_CLI_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.90,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.90" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.90|macos_arm64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345", + "v2.1.90|macos_x86_64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345", + "v2.1.90|linux_x86_64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.90|macos_arm64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345", + "v2.1.90|macos_x86_64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345", + "v2.1.90|linux_x86_64|2781255baf77c2a8fdc85c5e830f7191a6048fd91d2e20b5c7a20e5a0b7beb66|3755345" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.90,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-template=" + ], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "poetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-version=", + "config_key": "version", + "default": "poetry==1.1.14", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-version=" + ], + "env_var": "PANTS_POETRY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "poetry==1.1.14" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to generate lockfiles for third-party Python dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "poetry" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.11.0,<2.12", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.11.0,<2.12" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/lint/pylint/pylint.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pylint`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.12/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Pylint plugins such as 'pylint-plugins' so that the third-party requirements used by your plugin, like `pylint`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-export" + ], + "env_var": "PANTS_PYLINT_EXPORT", + "help": "If true, export a virtual environment with Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-export", + "--no-pylint-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pylint", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-version=", + "config_key": "version", + "default": "pyoxidizer==0.18.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-version=" + ], + "env_var": "PANTS_PYOXIDIZER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer==0.18.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.8,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.8,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-console-script=" + ], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-entry-point=" + ], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest==7.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest==7.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/subsystems/pytest.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pytest`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-export" + ], + "env_var": "PANTS_PYTEST_EXPORT", + "help": "If true, export a virtual environment with Pytest when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-export", + "--no-pytest-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.12/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-resolves" + ], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nWarning: the `generate-lockfiles` goal does not yet work if you have local requirements, regardless of using Pex vs. Poetry for the lockfile generator. Support is coming in a future Pants release. In the meantime, the workaround is to host the files in a custom repository with `[python-repos]` (https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies#custom-repositories).\n\nYou may also run into issues generating lockfiles when using Poetry as the generator, rather than Pex. See the option `[python].lockfile_generator` for more information.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.12/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-default-resolve=" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python.interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use ['==3.9.*'] via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to ['==3.7.*'], then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated. Use `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": [ + "pex", + "poetry" + ], + "comma_separated_choices": "pex, poetry", + "comma_separated_display_args": "--python-lockfile-generator=", + "config_key": "lockfile_generator", + "default": "pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-lockfile-generator=" + ], + "env_var": "PANTS_PYTHON_LOCKFILE_GENERATOR", + "help": "Whether to use Pex or Poetry with the `generate-lockfiles` goal.\n\nPoetry does not support these features:\n\n 1) `[python-repos]` for custom indexes/cheeseshops.\n 2) VCS (Git) requirements.\n 3) `[GLOBAL].ca_certs_path`.\n\nIf you use any of these features, you should use Pex.\n\nSeveral users have also had issues with how Poetry's lockfile generation handles environment markers for transitive dependencies; certain dependencies end up with nonsensical environment markers which cause the dependency to not be installed, then for Pants/Pex to complain the dependency is missing, even though it's in the lockfile. There is a workaround: for `[python].resolves`, manually create a `python_requirement` target for the problematic transitive dependencies so that they are seen as direct requirements, rather than transitive. For tool lockfiles, add the problematic transitive dependency to `[tool].extra_requirements`, e.g. `[isort].extra_requirements`. Then, regenerate the lockfile(s) with the `generate-lockfiles` goal. Alternatively, use Pex for generation.\n\nFinally, installing from a Poetry-generated lockfile is slower than installing from a Pex lockfile. When using a Pex lockfile, Pants will only install the subset needed for the current task.\n\nHowever, Pex lockfile generation is a new feature. Given how vast the Python packaging ecosystem is, it is possible you may experience edge cases / bugs we haven't yet covered. Bug reports are appreciated! https://github.com/pantsbuild/pants/issues/new/choose\n\nNote that while Pex generates locks in a proprietary JSON format, you can use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export` goal for Pants to create a virtual environment for interoperability with tools like IDEs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-lockfile-generator" + ], + "typ": "LockfileGenerator", + "unscoped_cmd_line_args": [ + "--lockfile-generator" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolves-generate-lockfiles" + ], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles as a workaround for the issues described in the `[python].lockfile_generator` option, if you are not yet ready to use Pex.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nWe generally do not recommend this if `[python].lockfile_generator` is set to `\"pex\"` thanks to performance enhancements we've made. When using Pex lockfiles, you should get similar performance to using this option but without the downsides mentioned below.\n\nOtherwise, if not using Pex lockfiles, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile changes, rather than just those that depend on the changed requirement. 2) Requirements unneeded by a test/run/repl will be present on the sys.path, which might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "Don't tailor `python_sources` targets for solitary `__init__.py` files, as those usually exist as import scaffolding rather than true library code.\n\nSet to False if you commonly have packages containing real code in `__init__.py` and there are no other .py files in the package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-solitary-init-files", + "--no-python-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "help": "Tailor python_requirements() targets for requirements files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "help": "Tailor pex_binary() targets for Python entry point files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-no-binary=\"['', '', ...]\"", + "config_key": "no_binary", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-no-binary=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NO_BINARY", + "help": "Do not use binary packages (i.e., wheels) for these 3rdparty projects.\n\nAlso accepts `:all:` to disable all binary packages.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.\n\nNote: Only takes effect if you use Pex lockfiles. Set `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-no-binary" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--no-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-only-binary=\"['', '', ...]\"", + "config_key": "only_binary", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-only-binary=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_ONLY_BINARY", + "help": "Do not use source packages (i.e., sdists) for these 3rdparty projects.\n\nAlso accepts `:all:` to disable all source packages.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.\n\nNote: Only takes effect if you use Pex lockfiles. Set `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-only-binary" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "help": "A list of paths to search for Python interpreters.\n\nWhich interpeters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n * ``, the contents of the PATH env var\n * ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n * ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n * ``, all Python versions under $(pyenv root)/versions\n * ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n * ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings.\n\nTo ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-assets" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--assets", + "--no-assets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-assets-min-slashes=" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "help": "If --assets is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets-min-slashes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--assets-min-slashes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor `__init__.py` files, only they will not be 'proper' dependencies, e.g. they will not show up in `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "ignore", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ignore" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.12/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-thrift-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.31.0,<2.32", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-version=" + ], + "env_var": "PANTS_PYUPGRADE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.31.0,<2.32" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-lockfile=" + ], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/lint/pyupgrade/pyupgrade.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pyupgrade`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "help": "Don't use pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-export" + ], + "env_var": "PANTS_PYUPGRADE_EXPORT", + "help": "If true, export a virtual environment with pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-export", + "--no-pyupgrade-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-detail-level=" + ], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files. To run on those, use `lint '**'` rather than `lint ::`, for example. Unfortunately, `--changed-since=` does not yet cause this linter to run. We are exploring how to improve both these gotchas.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-cleanup", + "config_key": "cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-cleanup" + ], + "env_var": "PANTS_RUN_CLEANUP", + "help": "Whether to clean up the temporary directory in which the binary is chrooted. Set to false to retain the directory, e.g., for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-cleanup", + "--no-run-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cleanup", + "--no-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "help": "Don't use scalafmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-version=" + ], + "env_var": "PANTS_SCALAPB_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-lockfile=" + ], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set --scalapb-runtime-dependencies appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=63.1.0,<64.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=63.1.0,<64.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/subsystems/setuptools.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "Don't use Shellcheck when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.12/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "Don't use shfmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.12/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-memory-summary" + ], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--memory-summary", + "--no-memory-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.12/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.12/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-fmt-skip" + ], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "help": "Don't use `terraform fmt` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-version=", + "config_key": "version", + "default": "python-hcl2==3.0.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-version=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-hcl2==3.0.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-lockfile=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/terraform/hcl2.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=terraform-hcl2-parser`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-validate-skip" + ], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "help": "Don't use `terraform validate` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-report" + ], + "env_var": "PANTS_TEST_REPORT", + "help": "Write test reports to --report-dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report", + "--no-test-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--report", + "--no-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-report-dir=" + ], + "env_var": "PANTS_TEST_REPORT_DIR", + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--report-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-xml-dir=", + "config_key": "xml_dir", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.13.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--test-xml-dir=" + ], + "env_var": "PANTS_TEST_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run that supports producing them.", + "removal_hint": "Set the `report` option in [test] scope to emit reports to a standard location under dist/. Set the `report-dir` option to customize that location.", + "removal_version": "2.13.0.dev0", + "scoped_cmd_line_args": [ + "--test-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-dependency-inference" + ], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine>=3.7.1,<3.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-version=" + ], + "env_var": "PANTS_TWINE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine>=3.7.1,<3.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "colorama>=0.4.3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "colorama>=0.4.3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-lockfile=" + ], + "env_var": "PANTS_TWINE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/subsystems/twine.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=twine`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use the default CA certificate.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "help": "Don't use Twine when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPi and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "yapf", + "black" + ], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--update-build-files-formatter=" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-formatter" + ], + "typ": "Formatter", + "unscoped_cmd_line_args": [ + "--formatter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-python-macros", + "config_key": "fix_python_macros", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.13.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]update-build-files-fix-python-macros" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_PYTHON_MACROS", + "help": "Deprecated.", + "removal_hint": "No longer does anything as the old macros have been removed in favor of target generators.", + "removal_version": "2.13.0.dev0", + "scoped_cmd_line_args": [ + "--update-build-files-fix-python-macros", + "--no-update-build-files-fix-python-macros" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-python-macros", + "--no-fix-python-macros" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.12/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf==0.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf==0.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.12.1/src/python/pants/backend/python/lint/yapf/yapf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=yapf`.\n\nAs explained at https://www.pantsbuild.org/v2.12/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "help": "Don't use yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-export" + ], + "env_var": "PANTS_YAPF_EXPORT", + "help": "If true, export a virtual environment with yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-export", + "--no-yapf-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.13.x/reference/help-all.json b/versioned_docs/version-2.13.x/reference/help-all.json new file mode 100644 index 000000000..cf63217e3 --- /dev/null +++ b/versioned_docs/version-2.13.x/reference/help-all.json @@ -0,0 +1,60159 @@ +{ + "name_to_api_type_info": { + "builtins.AddPrefix": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "AddPrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.shell_command.run_shell_command", + "pants.core.goals.export.export", + "pants.core.target_types.relocate_files", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "builtins.Digest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata", + "pants.engine.process" + ], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "Digest", + "provider": "builtins, pants.backend.experimental.helm, pants.core", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.core.util_rules.archive.create_archive" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_analysis.generate_import_config", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.plugins.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.generate_setup_py", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "builtins.FileDigest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.util_rules" + ], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "FileDigest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "builtins.MergeDigests": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "MergeDigests", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.terraform.style.setup_terraform_style", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.source_files.determine_source_files", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "builtins.RemovePrefix": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "RemovePrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda" + ], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonAwsLambdaFieldSet(address: 'Address', handler: 'PythonAwsLambdaHandlerField', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PexCompletePlatformsField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.target_types.InjectPythonLambdaHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency" + ], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "InjectPythonLambdaHandlerDependency", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.target_types.ResolvePythonAwsHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler" + ], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [], + "documentation": "ResolvePythonAwsHandlerRequest(field: pants.backend.awslambda.python.target_types.PythonAwsLambdaHandlerField)", + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "ResolvePythonAwsHandlerRequest", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency" + ] + }, + "pants.backend.awslambda.python.target_types.ResolvedPythonAwsHandler": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "ResolvedPythonAwsHandler(val: str, file_name_used: bool)", + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency" + ] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegen": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegen", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegenSubsystem": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegenSubsystem", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GenerateGoFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GenerateGoFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GoCodegenBuildProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg_target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GoCodegenBuildProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoCodegenBuildRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GoProtobufImportPathMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.infer_go_dependencies", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "Maps import paths of Go Protobuf packages to the addresses.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GoProtobufImportPathMapping", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.InferGoProtobufDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.infer_go_dependencies" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "InferGoProtobufDependenciesRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtobufPackageBuildRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [], + "documentation": "Request type used to trigger setup of a BuildGoPackageRequest for entire generated Go\nProtobuf package.\n\nThis type is separate so that a build of the full package can be cached no matter which one of\nits component source files was requested. This occurs because a request to build any one of the\nsource files will be converted into this type and then built.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtobufPackageBuildRequest", + "provider": "pants.backend.codegen.protobuf.go.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtocPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.platform", + "pants.engine.process" + ], + "documentation": "_SetupGoProtocPlugin(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.InjectProtobufJavaRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.inject_protobuf_java_runtime_dependency" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "InjectProtobufJavaRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "documentation": "ProtobufJavaRuntimeForResolve(addresses: FrozenSet[pants.build_graph.address.Address])", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.inject_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [], + "documentation": "ProtobufJavaRuntimeForResolveRequest(resolve_name: str)", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.inject_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.rules.GenerateJavaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GenerateJavaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.BufFormatRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format" + ], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.format_rules", + "name": "BufFormatRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format" + ] + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.BufLintRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.lint_rules", + "name": "BufLintRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufFormatField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufFormatField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufLintField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufLintField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.subsystem.BufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.subsystem", + "name": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [ + "construct_scope_buf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.InferProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "InferProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.ProtobufMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A mapping of stripped .proto file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protoc.Protoc": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protoc", + "name": "Protoc", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_protoc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonInterpreterConstraintsField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonInterpreterConstraintsField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonResolveField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonResolveField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.PythonSourceRootField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "PythonSourceRootField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.grpc_python_plugin.GrpcPythonPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.grpc_python_plugin", + "name": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_grpc_python_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.PythonProtobufMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper", + "name": "PythonProtobufMappingMarker", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.InjectPythonProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "InjectPythonProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.MypyProtobufLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "MypyProtobufLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufMypyPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_mypy_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_python_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.rules.GeneratePythonFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.rules", + "name": "GeneratePythonFromProtobufRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.InjectScalaPBRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.inject_scalapb_runtime_dependency" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "InjectScalaPBRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.dependency_inference", + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPBRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.inject_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [], + "documentation": "ScalaPBRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.scala.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.inject_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.GenerateScalaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "GenerateScalaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [], + "documentation": "MaterializeJvmPluginRequest(plugin: 'PluginArtifactSpec')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [], + "documentation": "MaterializeJvmPluginsRequest(plugins: 'tuple[PluginArtifactSpec, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginsRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugin": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.java", + "pants.jvm.resolve.common" + ], + "documentation": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugins": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalaPBShimCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalapbcToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalapbcToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.scala.rules, pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ] + }, + "pants.backend.codegen.protobuf.scala.subsystem.ScalaPBSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.subsystem", + "name": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "construct_scope_scalapb" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.tailor.PutativeProtobufTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeProtobufTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.codegen.protobuf.tailor", + "name": "PutativeProtobufTargetsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.AllProtobufTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.additional_fields.ThriftPythonResolveField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.additional_fields", + "name": "ThriftPythonResolveField", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.PythonThriftMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper", + "name": "PythonThriftMappingMarker", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.GeneratePythonFromThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "GeneratePythonFromThriftRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.InjectApacheThriftPythonDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "InjectApacheThriftPythonDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.subsystem.ThriftPythonSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.subsystem", + "name": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_python_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.ApacheThriftSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.environment", + "pants.engine.process" + ], + "documentation": "ApacheThriftSetup(path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.GenerateThriftSourcesRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [], + "documentation": "GenerateThriftSourcesRequest(thrift_source_field: 'ThriftSourceField', lang_id: 'str', lang_options: 'tuple[str, ...]', lang_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GenerateThriftSourcesRequest", + "provider": "pants.backend.codegen.thrift.apache.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.rules.GeneratedThriftSources": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.thrift.apache.rules", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "GeneratedThriftSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.subsystem.ApacheThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.subsystem", + "name": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_apache_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.InferThriftDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "InferThriftDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.ThriftMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A mapping of stripped .thrift file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.subsystem.ThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.subsystem", + "name": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.tailor.PutativeThriftTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeThriftTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.codegen.thrift.tailor", + "name": "PutativeThriftTargetsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.AllThriftTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThrift": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.backend.codegen.thrift.thrift_parser", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [], + "documentation": "ParsedThriftRequest(sources_field: 'ThriftSourceField')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThriftRequest", + "provider": "pants.backend.codegen.thrift.thrift_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.docker.goals.package_image.DockerFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "DockerFieldSet(address: 'Address', context_root: 'DockerImageContextRootField', registries: 'DockerImageRegistriesField', repository: 'DockerImageRepositoryField', source: 'DockerImageSourceField', tags: 'DockerImageTagsField', target_stage: 'DockerImageTargetStageField')", + "is_union": false, + "module": "pants.backend.docker.goals.package_image", + "name": "DockerFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageFieldSet": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core" + ], + "documentation": "PublishDockerImageFieldSet(address: 'Address', registries: 'DockerImageRegistriesField', skip_push: 'DockerImageSkipPushField')", + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.docker.goals.tailor.PutativeDockerTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeDockerTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.goals.tailor", + "name": "PutativeDockerTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.rules.HadolintRequest": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint" + ], + "dependees": [ + "pants.backend.docker.lint.hadolint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.rules", + "name": "HadolintRequest", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.skip_field.SkipHadolintField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.skip_field", + "name": "SkipHadolintField", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.subsystem.Hadolint": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint" + ], + "dependees": [ + "pants.backend.docker.lint.hadolint" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.subsystem", + "name": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [ + "construct_scope_hadolint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.DockerOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "DockerOptions", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.docker.lint.hadolint" + ], + "dependencies": [ + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', build_args: 'DockerBuildArgs' = DockerBuildArgs(), copy_source_paths: 'tuple[str, ...]' = (), from_image_build_args: 'DockerBuildArgs' = DockerBuildArgs(), version_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfo", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfoRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerfileInfoRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfoRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParseRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerfileParseRequest(sources_digest: 'Digest', args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParseRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParser": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParser", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_dockerfile_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParserLockfileSentinel", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.core" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "ParserSetup", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.dependencies.InjectDockerDependencies": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dependencies", + "name": "InjectDockerDependencies", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinary": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core", + "pants.engine.environment" + ], + "documentation": "The `docker` binary.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinary", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_binary.get_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.find_docker" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerBinaryRequest()", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinaryRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgs": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgs", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerBuildArgsRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContext": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', upstream_image_ids: 'tuple[str, ...]', dockerfile: 'str', interpolation_context: 'DockerInterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContext", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContextRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerBuildContextRequest(address: 'Address', build_upstream_images: 'bool' = False)", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContextRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.GenerateDockerContextFiles": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "This translates all files from acceptable Source fields for the docker context using the\n`codegen` machinery.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "GenerateDockerContextFiles", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironment": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.environment" + ], + "documentation": "DockerBuildEnvironment(environment: 'Environment')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironment", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerBuildEnvironmentRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironmentRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.dockerfile.GenerateDockerfileRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dockerfile", + "name": "GenerateDockerfileRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinary": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.go_sources.load_go_binary", + "pants.core" + ], + "documentation": "LoadedGoBinary(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "LoadedGoBinaryRequest(dir_name: 'str', file_names: 'tuple[str, ...]', output_name: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinaryRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.goals.check.GoCheckRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.check.check_go" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.check", + "name": "GoCheckRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.package_binary.GoBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "GoBinaryFieldSet(address: 'Address', main: pants.backend.go.target_types.GoBinaryMainPackageField, output_path: pants.core.goals.package.OutputPathField)", + "is_union": false, + "module": "pants.backend.go.goals.package_binary", + "name": "GoBinaryFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.tailor.PutativeGoTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeGoTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "PutativeGoTargetsRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.GoTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request", + "pants.backend.go.goals.test.generate_go_tests_debug_request", + "pants.backend.go.goals.test.run_go_tests" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "GoTestFieldSet(address: 'Address', sources: 'GoPackageSourcesField', dependencies: 'Dependencies', timeout: 'GoTestTimeoutField', extra_env_vars: 'GoTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.rules.GofmtRequest": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.rules", + "name": "GofmtRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.skip_field.SkipGofmtField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.skip_field", + "name": "SkipGofmtField", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.subsystem.GofmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.subsystem", + "name": "GofmtSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_gofmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.GoRoot": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core", + "pants.engine.environment", + "pants.engine.process" + ], + "documentation": "Path to the Go installation (the `GOROOT`).", + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "GoRoot", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.subsystems.golang.setup_goroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.GolangSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.subsystems.golang.setup_goroot", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "GolangSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_golang" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.gotest.GoTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.gotest", + "name": "GoTestSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_go_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.AllGoTargets": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "AllGoTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.find_all_go_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GenerateTargetsFromGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GenerateTargetsFromGoModRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.ImportPathToPackages": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "ImportPathToPackages(mapping: 'FrozenDict[str, tuple[Address, ...]]')", + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "ImportPathToPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InferGoPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InjectGoBinaryMainDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.inject_go_binary_main_dependency" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InjectGoBinaryMainDependencyRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InjectGoThirdPartyPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InjectGoThirdPartyPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_types.GoBinaryMainPackage": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.target_types", + "pants.build_graph.address", + "pants.core", + "pants.engine.target" + ], + "documentation": "GoBinaryMainPackage(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.target_types", + "name": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.target_type_rules.inject_go_binary_main_dependency" + ] + }, + "pants.backend.go.target_types.GoBinaryMainPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoBinaryMainPackageRequest(field: 'GoBinaryMainPackageField')", + "is_union": false, + "module": "pants.backend.go.target_types", + "name": "GoBinaryMainPackageRequest", + "provider": "pants.backend.go.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.target_type_rules.inject_go_binary_main_dependency" + ] + }, + "pants.backend.go.util_rules.assembly.AssemblyPostCompilation": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "documentation": "AssemblyPostCompilation(result: 'FallibleProcessResult', merged_output_digest: 'Digest | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssemblyPostCompilation", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.AssemblyPostCompilationRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Link the assembly_digests into the compilation_result.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssemblyPostCompilationRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.AssemblyPreCompilationRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Add a `symabis` file for consumption by Go compiler and assemble all `.s` files.\n\nSee https://github.com/bazelbuild/rules_go/issues/1893.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssemblyPreCompilationRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleAssemblyPreCompilation": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "documentation": "FallibleAssemblyPreCompilation(result: 'AssemblyPreCompilation | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleAssemblyPreCompilation", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go, pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuiltGoPackage": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.go.rules", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.build_pkg", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuiltGoPackage": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.build_pkg", + "pants.core", + "pants.engine.process" + ], + "documentation": "Fallible version of `BuiltGoPackage` with error details.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoCompileActionIdRequest(build_request: 'BuildGoPackageRequest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg" + ], + "documentation": "GoCompileActionIdResult(action_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "RenderEmbedConfigRequest(embed_config: 'EmbedConfig | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderedEmbedConfig": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "documentation": "RenderedEmbedConfig(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Build a `go_package`, `go_third_party_package`, or Go codegen target and its dependencies as\n`__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageTargetRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.GoCodegenBuildRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [], + "documentation": "The plugin hook to build/compile Go code.\n\nNote that you should still use the normal `GenerateSourcesRequest` plugin hook from\n`pants.engine.target` too, which is necessary for integrations like the `export-codegen` goal.\nHowever, that is only helpful to generate the raw `.go` files; you also need to use this\nplugin hook so that Pants knows how to compile those generated `.go` files.\n\nSubclass this and set the class property `generate_from`. Define a rule that goes from your\nsubclass to `BuildGoPackageRequest` - the request must result in valid compilation, which you\nshould test for by using `rule_runner.request(BuiltGoPackage, BuildGoPackageRequest)` in your\ntests. For example, make sure to set up any third-party packages needed by the generated code.\nFinally, register `UnionRule(GoCodegenBuildRequest, MySubclass)`.", + "is_union": true, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "GoCodegenBuildRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [ + "GoCodegenBuildProtobufRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "Metadata for a Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.infer_go_dependencies", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgDigest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "The source files for a Go package, but fallible if embed preparation failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "FirstPartyPkgAnalysisRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.infer_go_dependencies", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgDigestRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "FirstPartyPkgDigestRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgDigestRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPath": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.first_party_pkg" + ], + "documentation": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "FirstPartyPkgImportPathRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPathRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.go_mod.GoModInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfo", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.GoModInfoRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoModInfoRequest(source: 'Address | GoModSourcesField')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfoRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoMod": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "documentation": "OwningGoMod(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoMod", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_go_mod" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "OwningGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibImports": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "pants.backend.go.util_rules.import_analysis.generate_import_config" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.process" + ], + "documentation": "A mapping of standard library import paths to the `.a` static file paths for that import\npath.\n\nFor example, \"net/smtp\": \"/absolute_path_to_goroot/pkg/darwin_arm64/net/smtp.a\".", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibImports", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.ImportConfig": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.import_analysis", + "pants.core" + ], + "documentation": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "ImportConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.generate_import_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.import_analysis.ImportConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_analysis.generate_import_config" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Create an `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "ImportConfigRequest", + "provider": "pants.backend.go.util_rules.import_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.link.LinkGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Link a Go binary from package archives and an import configuration.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkGoBinaryRequest", + "provider": "pants.backend.go.util_rules.link", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.link.LinkedGoBinary": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.link", + "pants.engine.process" + ], + "documentation": "A linked Go binary stored in a `Digest`.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.pkg_analyzer.PackageAnalyzerSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "PackageAnalyzerSetup(digest: Digest, path: str)", + "is_union": false, + "module": "pants.backend.go.util_rules.pkg_analyzer", + "name": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkProcess": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoSdkProcess(command: 'Iterable[str]', *, description: 'str', env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), working_dir: 'str | None' = None, output_files: 'Iterable[str]' = (), output_directories: 'Iterable[str]' = (), allow_downloads: 'bool' = False, platform: 'Platform | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkProcess", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkRunSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoSdkToolIDRequest(tool_name: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDRequest", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.sdk", + "pants.engine.process" + ], + "documentation": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GenerateTestMainRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GenerateTestMainRequest(digest: 'Digest', test_paths: 'FrozenOrderedSet[str]', xtest_paths: 'FrozenOrderedSet[str]', import_path: 'str', address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GenerateTestMainRequest", + "provider": "pants.backend.go.util_rules.tests_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GeneratedTestMain": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.tests_analysis", + "pants.core", + "pants.engine.process" + ], + "documentation": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GeneratedTestMain", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackages": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core" + ], + "documentation": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "AllThirdPartyPackagesRequest(go_mod_digest: 'Digest', go_mod_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackagesRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyModuleRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "AnalyzeThirdPartyModuleRequest(go_mod_digest: 'Digest', go_mod_path: 'str', import_path: 'str', name: 'str', version: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyModuleRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "AnalyzeThirdPartyPackageRequest(pkg_json: 'FrozenDict[str, Any]', module_sources_digest: 'Digest', module_sources_path: 'str', module_import_path: 'str', package_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyPackageRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzedThirdPartyModule": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.third_party_pkg", + "pants.engine.process" + ], + "documentation": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.FallibleThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core", + "pants.engine.process" + ], + "documentation": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptors": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.third_party_pkg", + "pants.engine.process" + ], + "documentation": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptors", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "ModuleDescriptorsRequest(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptorsRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.third_party_pkg" + ], + "documentation": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Request the info and digest needed to build a third-party package.\n\nThe package's module must be included in the input `go.mod`/`go.sum`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.google_cloud_function.python.rules.PythonGoogleCloudFunctionFieldSet": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ], + "dependees": [ + "pants.backend.google_cloud_function.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonGoogleCloudFunctionFieldSet(address: 'Address', handler: 'PythonGoogleCloudFunctionHandlerField', runtime: 'PythonGoogleCloudFunctionRuntime', complete_platforms: 'PexCompletePlatformsField', type: 'PythonGoogleCloudFunctionType', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.rules", + "name": "PythonGoogleCloudFunctionFieldSet", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.google_cloud_function.python.target_types.InjectPythonCloudFunctionHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency" + ], + "dependees": [ + "pants.backend.google_cloud_function.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "InjectPythonCloudFunctionHandlerDependency", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.google_cloud_function.python.target_types.ResolvePythonGoogleHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler" + ], + "dependees": [ + "pants.backend.google_cloud_function.python" + ], + "dependencies": [], + "documentation": "ResolvePythonGoogleHandlerRequest(field: pants.backend.google_cloud_function.python.target_types.PythonGoogleCloudFunctionHandlerField)", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "ResolvePythonGoogleHandlerRequest", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency" + ] + }, + "pants.backend.google_cloud_function.python.target_types.ResolvedPythonGoogleHandler": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.google_cloud_function.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "ResolvedPythonGoogleHandler(val: str, file_name_used: bool)", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency" + ] + }, + "pants.backend.helm.dependency_inference.chart.FirstPartyHelmChartMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.InferHelmChartDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "InferHelmChartDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.unittest.InjectHelmUnitTestChartDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.inject_chart_dependency_into_unittests" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.unittest", + "name": "InjectHelmUnitTestChartDependencyRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.lint.HelmLintRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.lint", + "name": "HelmLintRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.package.HelmPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.package.run_helm_package" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "HelmPackageFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', output_path: 'HelmChartOutputPathField')", + "is_union": false, + "module": "pants.backend.helm.goals.package", + "name": "HelmPackageFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.HelmPublishFieldSet": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core" + ], + "documentation": "HelmPublishFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', registries: 'HelmRegistriesField', repository: 'HelmChartRepositoryField', skip_push: 'HelmSkipPushField')", + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "HelmPublishFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.PublishHelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.publish.publish_helm_chart" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "PublishHelmChartRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.tailor.PutativeHelmChartTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.tailor.find_putative_helm_targets" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeHelmChartTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.helm.goals.tailor", + "name": "PutativeHelmChartTargetsRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.resolve.artifacts.HelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "HelmArtifact", + "provider": "pants.backend.helm.resolve.artifacts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ] + }, + "pants.backend.helm.resolve.artifacts.ResolvedHelmArtifact": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.helm.resolve.artifacts" + ], + "documentation": "ResolvedHelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address', location_url: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ] + }, + "pants.backend.helm.resolve.artifacts.ThirdPartyHelmArtifactMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.resolve.fetch.FetchHelmArfifactsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "FetchHelmArfifactsRequest(field_sets: 'Iterable[HelmArtifactFieldSet]', *, description_of_origin: 'str') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchHelmArfifactsRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "FetchedHelmArtifact(artifact: 'ResolvedHelmArtifact', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifact", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifacts": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.helm.resolve.fetch", + "pants.core", + "pants.engine.process" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifacts", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.subsystems.helm.HelmSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.helm", + "name": "HelmSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestPluginBinding": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_plugin_request" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.helm.util_rules.plugins" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestPluginBinding", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExternalHelmPluginBinding", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_plugin_request", + "pants.backend.helm.test.unittest.run_helm_unittest" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_unittest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmChartTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.unittest.inject_chart_dependency_into_unittests" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_chart_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmUnitTestTestTargets": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_unittest_test_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.HelmChartMetaSourceField": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "HelmChartMetaSourceField", + "provider": "pants.backend.helm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request", + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "pants.backend.helm.test.unittest.run_helm_unittest" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "HelmUnitTestFieldSet(address: 'Address', sources: 'SourcesField', source: pants.backend.helm.target_types.HelmUnitTestSourceField, dependencies: pants.backend.helm.target_types.HelmUnitTestDependenciesField)", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.chart.HelmChart": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.helm.resolve.fetch", + "pants.backend.helm.util_rules.chart", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core" + ], + "documentation": "HelmChart(address: 'Address', metadata: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChart", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmChartRequest(field_set: 'HelmChartFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChartRequest", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.HelmChartMetadata": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.helm.target_types", + "pants.core", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm, pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.ParseHelmChartMetadataDigest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "ParseHelmChartMetadataDigest(digest: 'Digest', description_of_origin: 'str', prefix: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "ParseHelmChartMetadataDigest", + "provider": "pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.plugins.ExternalHelmPluginBinding": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "ExternalHelmPluginBinding(name: 'str')", + "is_union": true, + "module": "pants.backend.helm.util_rules.plugins", + "name": "ExternalHelmPluginBinding", + "provider": "pants.backend.helm.util_rules.plugins", + "returned_by_rules": [], + "union_members": [ + "HelmUnitTestPluginBinding" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.plugins.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.plugins.ExternalHelmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.plugins.download_external_helm_plugin" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "ExternalHelmPluginRequest(plugin_name: 'str', tool_request: 'ExternalToolRequest')", + "is_union": false, + "module": "pants.backend.helm.util_rules.plugins", + "name": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.plugins.HelmPlugin": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.core", + "pants.engine.fs" + ], + "documentation": "HelmPlugin(metadata: 'HelmPluginMetadata', digest: 'Digest')", + "is_union": false, + "module": "pants.backend.helm.util_rules.plugins", + "name": "HelmPlugin", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.plugins.download_external_helm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.plugins.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.plugins.HelmPlugins": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.util_rules.plugins", + "name": "HelmPlugins", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.plugins.all_helm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.helm.util_rules.sources", + "pants.core" + ], + "documentation": "HelmChartSourceFiles(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmChartSourceFilesRequest(field_set: 'HelmChartFieldSet', include_resources: 'bool', include_files: 'bool', include_metadata: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFilesRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.tool.HelmBinary": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.core", + "pants.engine.environment" + ], + "documentation": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmBinary", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmProcess": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmProcess(argv: 'Iterable[str]', *, input_digest: 'Digest', description: 'str', level: 'LogLevel' = , output_directories: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, extra_env: 'Mapping[str, str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, cache_scope: 'ProcessCacheScope | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmProcess", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.test.unittest.run_helm_unittest" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "HandleJavacOptionsRequest(bsp_target_id: pants.bsp.spec.base.BuildTargetIdentifier)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsRequest", + "provider": "pants.backend.java.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.java.bsp.rules", + "pants.base.build_root" + ], + "documentation": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.JavaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "JavaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPCompileRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPLanguageSupport", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "JavaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavacOptionsHandlerMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.java.bsp.spec.JavacOptionsResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.java.bsp.spec" + ], + "documentation": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.spec", + "name": "JavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.compile.javac.CompileJavaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.compile.javac", + "name": "CompileJavaSourceRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.FallibleJavaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.java.dependency_inference.java_parser", + "pants.core", + "pants.engine.process" + ], + "documentation": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "documentation": "JavaParserCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors" + ] + }, + "pants.backend.java.dependency_inference.java_parser.JavaSourceDependencyAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.InferJavaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "InferJavaSourceDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependencies": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.java.dependency_inference.rules", + "pants.core", + "pants.engine.target" + ], + "documentation": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependenciesAndExportsRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "JavaInferredDependenciesAndExportsRequest(source: 'SourcesField')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependenciesAndExportsRequest", + "provider": "pants.backend.java.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.symbol_mapper.AllJavaTargets": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "AllJavaTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.symbol_mapper.FirstPartyJavaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "FirstPartyJavaTargetsMappingRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.types.JavaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "documentation": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.types", + "name": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ] + }, + "pants.backend.java.goals.check.JavacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.check.javac_check" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.goals.check", + "name": "JavacCheckRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.java.goals.tailor.PutativeJavaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeJavaTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.java.goals.tailor", + "name": "PutativeJavaTargetsRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatRequest": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ], + "dependees": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatRequest", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatToolLockfileSentinel", + "provider": "pants.backend.experimental.java.lint.google_java_format, pants.backend.java.lint.google_java_format.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ] + }, + "pants.backend.java.lint.google_java_format.skip_field.SkipGoogleJavaFormatField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.skip_field", + "name": "SkipGoogleJavaFormatField", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.subsystem.GoogleJavaFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ], + "dependees": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.subsystem", + "name": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [ + "construct_scope_google_java_format" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.java_infer.JavaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.java_infer", + "name": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_java_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.javac.JavacSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.javac", + "name": "JavacSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_javac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.junit.JUnit": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.junit", + "name": "JUnit", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_junit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc.CompileKotlinSourceRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc", + "name": "CompileKotlinSourceRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.AllKotlincPluginTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.build_graph.address", + "pants.core" + ], + "documentation": "KotlincPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPlugins": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core", + "pants.engine.target" + ], + "documentation": "KotlincPlugins(ids: 'tuple[str, ...]', classpath: 'ClasspathEntry', plugin_args: 'FrozenDict[str, tuple[str, ...]]')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "documentation": "KotlincPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [], + "documentation": "KotlincPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsRequest", + "provider": "pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.FallibleKotlinSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "documentation": "FallibleKotlinSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.dependency_inference.kotlin_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "documentation": "KotlinSourceDependencyAnalysis(package: 'str', imports: 'frozenset[KotlinImport]', named_declarations: 'frozenset[str]', consumed_symbols_by_scope: 'FrozenDict[str, frozenset[str]]', scopes: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinSourceDependencies", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.InjectKotlinRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.inject_kotlin_stdlib_dependency" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InjectKotlinRuntimeDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.dependency_inference.rules" + ], + "documentation": "KotlinRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.inject_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [], + "documentation": "KotlinRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolveRequest", + "provider": "pants.backend.kotlin.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.inject_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.AllKotlinTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.FirstPartyKotlinTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "FirstPartyKotlinTargetsMappingRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.check.KotlincCheckRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.check.kotlinc_check" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.goals.check", + "name": "KotlincCheckRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.tailor.PutativeKotlinTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeKotlinTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.kotlin.goals.tailor", + "name": "PutativeKotlinTargetsRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt" + ], + "dependees": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintRequest", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin.lint.ktlint, pants.backend.kotlin.lint.ktlint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt" + ] + }, + "pants.backend.kotlin.lint.ktlint.skip_field.SkipKtlintField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.skip_field", + "name": "SkipKtlintField", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.subsystem.KtlintSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt" + ], + "dependees": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.subsystem", + "name": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [ + "construct_scope_ktlint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin.KotlinSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin", + "name": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin_infer.KotlinInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin_infer", + "name": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlinc.KotlincSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlinc", + "name": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlinc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.InjectKotlinJunitTestDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.inject_kotlin_junit_dependency" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "InjectKotlinJunitTestDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.test.junit" + ], + "documentation": "KotlinJunitLibrariesForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.inject_kotlin_junit_dependency" + ] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [], + "documentation": "KotlinJunitLibrariesForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolveRequest", + "provider": "pants.backend.kotlin.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.inject_kotlin_junit_dependency" + ] + }, + "pants.backend.plugin_development.pants_requirements.GenerateFromPantsRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements" + ], + "dependees": [ + "pants.backend.plugin_development" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.plugin_development.pants_requirements", + "name": "GenerateFromPantsRequirementsRequest", + "provider": "pants.backend.plugin_development", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCode": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.process" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCode", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCodeSubsystem": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.SuccinctCodeCounter": { + "consumed_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "SuccinctCodeCounter", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_scc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependees.AddressToDependees": { + "consumed_by_rules": [ + "pants.backend.project_info.dependees.find_dependees" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "AddressToDependees(mapping: pants.util.frozendict.FrozenDict[pants.build_graph.address.Address, pants.util.ordered_set.FrozenOrderedSet[pants.build_graph.address.Address]])", + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "AddressToDependees", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependees.map_addresses_to_dependees" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependees.Dependees": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.project_info", + "pants.backend.python.mixed_interpreter_constraints" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "Dependees", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependees.find_dependees" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependees.dependees_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependees.DependeesGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.console" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "DependeesGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependees.dependees_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependees.DependeesRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.dependees.find_dependees" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [], + "documentation": "DependeesRequest(addresses: Iterable[pants.build_graph.address.Address], *, transitive: bool, include_roots: bool)", + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "DependeesRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependees.dependees_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependees.DependeesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependees.dependees_goal" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "DependeesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependees" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.Dependencies": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "Dependencies", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.DependenciesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "DependenciesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.Filedeps": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.base.build_root", + "pants.build_graph.address", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "Filedeps", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.FiledepsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "FiledepsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filedeps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.console" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.Roots": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core", + "pants.engine.console" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "Roots", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.RootsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "RootsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.List": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "List", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.ListSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "ListSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_list" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core", + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.Peek": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "Peek", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.PeekSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.peek" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": "Display detailed target information in JSON form.", + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "PeekSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.TargetDatas": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "TargetDatas", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.get_target_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.peek.peek" + ] + }, + "pants.backend.project_info.regex_lint.RegexLintRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintFilesRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.regex_lint.RegexLintSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_regex_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.AllPythonTargets": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "AllPythonTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImpl": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.python, pants.backend.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImplMarker": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "An entry point for a specific implementation of mapping module names to owning targets for\nPython import dependency inference.\n\nAll implementations will be merged together. Any modules that show up in multiple\nimplementations will be marked ambiguous.", + "is_union": true, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImplMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "FirstPartyPythonTargetsMappingMarker", + "PythonProtobufMappingMarker", + "PythonThriftMappingMarker", + "PythonVCSVersionMappingMarker" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.engine.unions" + ], + "documentation": "A merged mapping of each resolve name to the first-party module names contained and their\nowning addresses.\n\nThis mapping may have been constructed from multiple distinct implementations, e.g.\nimplementations for each codegen backends.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonTargetsMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonTargetsMappingMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwners": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "The target(s) that own a Python module.\n\nIf >1 targets own the same module, and they're implementations (vs .pyi type stubs), they will\nbe put into `ambiguous` instead of `unambiguous`. `unambiguous` should never be > 2.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwnersRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "PythonModuleOwnersRequest(module: 'str', resolve: 'str | None')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwnersRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.ThirdPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsePythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "ParsePythonDependenciesRequest(source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints, string_imports: bool, string_imports_min_dots: int, assets: bool, assets_min_slashes: int)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsePythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonDependencies": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process" + ], + "documentation": "ParsedPythonDependencies(imports: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonImports, assets: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonAssetPaths)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParserScript": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "ParserScript(digest: Digest)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParserScript", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferConftestDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferConftestDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferInitDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferInitDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferPythonImportDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferPythonImportDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.PythonInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies", + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "PythonInferSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_python_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageConfig": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs" + ], + "documentation": "CoverageConfig(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageConfig", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoveragePyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoveragePyLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSetup": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "CoverageSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_coverage_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.MergedCoverageData": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.engine.process" + ], + "documentation": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "MergedCoverageData", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.PytestCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "PytestCoverageDataCollection", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.ExportPythonTool": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_tool" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.python, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pylint, pants.backend.python.lint.yapf, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportPythonToolSentinel": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "Python tools use this as an entry point to say how to export their tool virtualenv.\n\nEach tool should subclass `ExportPythonToolSentinel` and set up a rule that goes from\nthe subclass -> `ExportPythonTool`. Register a union rule for the `ExportPythonToolSentinel`\nsubclass.\n\nIf the tool is in `pantsbuild/pants`, update `export_integration_test.py`.", + "is_union": true, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonToolSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "AutoflakeExportSentinel", + "BanditExportSentinel", + "BlackExportSentinel", + "DocformatterExportSentinel", + "Flake8ExportSentinel", + "IsortExportSentinel", + "MyPyExportSentinel", + "PyUpgradeExportSentinel", + "PylintExportSentinel", + "PytestExportSentinel", + "YapfExportSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportVenvsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "ExportVenvsRequest(targets: 'Sequence[Target]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportVenvsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.export._ExportVenvRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "_ExportVenvRequest(resolve: 'str | None', root_python_targets: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.lockfile.GeneratePythonLockfile": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.docker, pants.backend.experimental.python, pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.experimental.terraform, pants.backend.python, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pylint, pants.backend.python.lint.yapf, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.terraform.dependency_inference.setup_lockfile_request" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.KnownPythonUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "KnownPythonUserResolveNamesRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.MaybeWarnPythonRepos": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "MaybeWarnPythonRepos", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.maybe_warn_python_repos" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile" + ] + }, + "pants.backend.python.goals.lockfile.MaybeWarnPythonReposRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.maybe_warn_python_repos" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "MaybeWarnPythonReposRequest()", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "MaybeWarnPythonReposRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile" + ] + }, + "pants.backend.python.goals.lockfile.RequestedPythonUserResolveNames": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "RequestedPythonUserResolveNames", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.backend.python.goals.package_pex_binary.PexBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PexBinaryFieldSet(address: 'Address', entry_point: pants.backend.python.target_types.PexEntryPointField, script: pants.backend.python.target_types.PexScriptField, output_path: pants.core.goals.package.OutputPathField, emit_warnings: pants.backend.python.target_types.PexEmitWarningsField, ignore_errors: pants.backend.python.target_types.PexIgnoreErrorsField, inherit_path: pants.backend.python.target_types.PexInheritPathField, shebang: pants.backend.python.target_types.PexShebangField, strip_env: pants.backend.python.target_types.PexStripEnvField, platforms: pants.backend.python.target_types.PexPlatformsField, complete_platforms: pants.backend.python.target_types.PexCompletePlatformsField, resolve_local_platforms: pants.backend.python.target_types.PexResolveLocalPlatformsField, layout: pants.backend.python.target_types.PexLayoutField, execution_mode: pants.backend.python.target_types.PexExecutionModeField, include_requirements: pants.backend.python.target_types.PexIncludeRequirementsField, include_sources: pants.backend.python.target_types.PexIncludeSourcesField, include_tools: pants.backend.python.target_types.PexIncludeToolsField)", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexBinaryFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary" + ] + }, + "pants.backend.python.goals.publish.PublishPythonPackageFieldSet": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core" + ], + "documentation": "PublishPythonPackageFieldSet(address: 'Address', repositories: 'PythonRepositoriesField', skip_twine: 'SkipTwineUploadField')", + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageFieldSet", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PublishPythonPackageRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PythonRepositoriesField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PythonRepositoriesField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.SkipTwineUploadField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "SkipTwineUploadField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetups": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetups", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetupsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "AllPytestPluginSetupsRequest(address: pants.build_graph.address.Address)", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetupsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetupRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to set up the test environment before Pytest runs, e.g. to set up databases.\n\nTo use, subclass PytestPluginSetupRequest, register the rule\n`UnionRule(PytestPluginSetupRequest, MyCustomPytestPluginSetupRequest)`, and add a rule that\ntakes your subclass as a parameter and returns `PytestPluginSetup`.", + "is_union": true, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "RuntimePackagesPluginRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.RuntimePackagesPluginRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "RuntimePackagesPluginRequest(target: pants.engine.target.Target)", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "RuntimePackagesPluginRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.TestSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "TestSetup(process: pants.engine.process.Process, results_file_name: Optional[str])", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_test" + ] + }, + "pants.backend.python.goals.pytest_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "TestSetupRequest(field_set: pants.backend.python.subsystems.pytest.PythonTestFieldSet, is_debug: bool, main: Optional[pants.backend.python.target_types.MainSpecification] = None, prepend_argv: Tuple[str, ...] = (), additional_pexes: Tuple[pants.backend.python.util_rules.pex.Pex, ...] = ())", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_test" + ] + }, + "pants.backend.python.goals.repl.IPythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "IPythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.repl.PythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_python_repl_request" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "PythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_source.PythonSourceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonSourceFieldSet(address: 'Address', source: pants.backend.python.target_types.PythonSourceField, run_goal_use_sandbox: pants.backend.python.target_types.PythonRunGoalUseSandboxField)", + "is_union": false, + "module": "pants.backend.python.goals.run_python_source", + "name": "PythonSourceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request" + ] + }, + "pants.backend.python.goals.setup_py.DependencyOwner": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "An ExportedTarget in its role as an owner of other targets.\n\nWe need this type to prevent rule ambiguities when computing the list of targets owned by an\nExportedTarget (which involves going from ExportedTarget -> dep -> owner (which is itself an\nExportedTarget) and checking if owner is the original ExportedTarget.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DependencyOwner", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_sources" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildChroot": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "documentation": "A chroot containing PEP 517 build setup and the sources it operates on.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildChroot", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildChrootRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_sources" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to create a chroot for building a dist in.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildChrootRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildEnvironment": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "Various extra information that might be needed to build a dist.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildEnvironmentRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "DistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": true, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildEnvironmentRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "MyPycDistBuildEnvironmentRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildSources": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "The source-root-stripped sources required to build a distribution with a generated setup.py.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildSources", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ] + }, + "pants.backend.python.goals.setup_py.ExportedTarget": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "ExportedTarget", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_exporting_owner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.ExportedTargetRequirements": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "ExportedTargetRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_requirements" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.goals.setup_py.FinalizedSetupKwargs": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.fs" + ], + "documentation": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "FinalizedSetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_setup_py" + ] + }, + "pants.backend.python.goals.setup_py.GenerateSetupPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.generate_setup_py" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "GenerateSetupPyRequest(exported_target: 'ExportedTarget', sources: 'DistBuildSources', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "GenerateSetupPyRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.generate_setup_py" + ] + }, + "pants.backend.python.goals.setup_py.GeneratedSetupPy": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "GeneratedSetupPy(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "GeneratedSetupPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.generate_setup_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ] + }, + "pants.backend.python.goals.setup_py.OwnedDependencies": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "OwnedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_sources" + ] + }, + "pants.backend.python.goals.setup_py.OwnedDependency": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.get_exporting_owner" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A target that is owned by some ExportedTarget.\n\nCode in this target is published in the owner's distribution.\n\nThe owner of a target T is T's closest filesystem ancestor among the python_distribution\ntargets that directly or indirectly depend on it (including T itself).", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "OwnedDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.SetupKwargs": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.unions" + ], + "documentation": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.SetupKwargsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to allow setting the kwargs passed to the `setup()` function.\n\nBy default, Pants will pass the kwargs provided in the BUILD file unchanged. To customize this\nbehavior, subclass `SetupKwargsRequest`, register the rule `UnionRule(SetupKwargsRequest,\nMyCustomSetupKwargsRequest)`, and add a rule that takes your subclass as a parameter and returns\n`SetupKwargs`.", + "is_union": true, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupKwargsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ] + }, + "pants.backend.python.goals.setup_py.SetupPyGeneration": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_requirements" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupPyGeneration", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setup_py_generation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.tailor.PutativePythonTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativePythonTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.python.goals.tailor", + "name": "PutativePythonTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.rules.AutoflakeRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fmt" + ], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.rules", + "name": "AutoflakeRequest", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.skip_field.SkipAutoflakeField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.skip_field", + "name": "SkipAutoflakeField", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.Autoflake": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "Autoflake", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [ + "construct_scope_autoflake" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.AutoflakeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.autoflake_export" + ], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "AutoflakeExportSentinel", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.AutoflakeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "AutoflakeLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.rules.BanditPartition": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint_partition" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [], + "documentation": "BanditPartition(field_sets: Tuple[pants.backend.python.lint.bandit.subsystem.BanditFieldSet, ...], interpreter_constraints: pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints)", + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditPartition", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint" + ] + }, + "pants.backend.python.lint.bandit.rules.BanditRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditRequest", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.skip_field.SkipBanditField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.skip_field", + "name": "SkipBanditField", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.Bandit": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "Bandit", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [ + "construct_scope_bandit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditExportSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditLockfileSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.rules.BlackRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.rules.black_fmt" + ], + "dependees": [ + "pants.backend.python.lint.black" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.rules", + "name": "BlackRequest", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.skip_field.SkipBlackField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.skip_field", + "name": "SkipBlackField", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.Black": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependees": [ + "pants.backend.python.lint.black", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "Black", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_black" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.black_export" + ], + "dependees": [ + "pants.backend.python.lint.black" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackExportSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.setup_black_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.black" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackLockfileSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.rules.DocformatterRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt" + ], + "dependees": [ + "pants.backend.python.lint.docformatter" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.rules", + "name": "DocformatterRequest", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.skip_field.SkipDocformatterField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.skip_field", + "name": "SkipDocformatterField", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.Docformatter": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.python.lint.docformatter" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "Docformatter", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [ + "construct_scope_docformatter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.DocformatterExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.subsystem.docformatter_export" + ], + "dependees": [ + "pants.backend.python.lint.docformatter" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "DocformatterExportSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.DocformatterLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.python.lint.docformatter" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "DocformatterLockfileSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.rules.Flake8Partition": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint_partition" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [], + "documentation": "Flake8Partition(field_sets: Tuple[pants.backend.python.lint.flake8.subsystem.Flake8FieldSet, ...], interpreter_constraints: pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints)", + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Partition", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint" + ] + }, + "pants.backend.python.lint.flake8.rules.Flake8Request": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Request", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.skip_field.SkipFlake8Field": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.skip_field", + "name": "SkipFlake8Field", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "construct_scope_flake8" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8ExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_export" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8ExportSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8FirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8LockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8LockfileSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.rules.IsortRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt" + ], + "dependees": [ + "pants.backend.python.lint.isort" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.rules", + "name": "IsortRequest", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.skip_field.SkipIsortField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.skip_field", + "name": "SkipIsortField", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.Isort": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.isort" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "Isort", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [ + "construct_scope_isort" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.IsortExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.subsystem.isort_export" + ], + "dependees": [ + "pants.backend.python.lint.isort" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "IsortExportSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.IsortLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.isort" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "IsortLockfileSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.rules.PylintPartition": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint_partition" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [], + "documentation": "PylintPartition(root_field_sets: 'FrozenOrderedSet[PylintFieldSet]', closure: 'FrozenOrderedSet[Target]', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintPartition", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint" + ] + }, + "pants.backend.python.lint.pylint.rules.PylintPartitions": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintPartitions", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint" + ] + }, + "pants.backend.python.lint.pylint.rules.PylintRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.lint.pylint.rules.pylint_lint" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintRequest", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint" + ] + }, + "pants.backend.python.lint.pylint.skip_field.SkipPylintField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.skip_field", + "name": "SkipPylintField", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.Pylint": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "Pylint", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "construct_scope_pylint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_export" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintExportSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintLockfileSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.rules.PyUpgradeRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt" + ], + "dependees": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.rules", + "name": "PyUpgradeRequest", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.skip_field.SkipPyUpgradeField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.skip_field", + "name": "SkipPyUpgradeField", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgrade": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgrade", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [ + "construct_scope_pyupgrade" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgradeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export" + ], + "dependees": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgradeExportSentinel", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgradeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgradeLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.rules.YapfRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.rules.yapf_fmt" + ], + "dependees": [ + "pants.backend.python.lint.yapf" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.rules", + "name": "YapfRequest", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.skip_field.SkipYapfField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.skip_field", + "name": "SkipYapfField", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.Yapf": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependees": [ + "pants.backend.python.lint.yapf", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "Yapf", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_yapf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.YapfExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.subsystem.yapf_export" + ], + "dependees": [ + "pants.backend.python.lint.yapf" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "YapfExportSentinel", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.YapfLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.yapf" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "YapfLockfileSentinel", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.macros.pipenv_requirements.GenerateFromPipenvRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.pipenv_requirements", + "name": "GenerateFromPipenvRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.poetry_requirements.GenerateFromPoetryRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.poetry_requirements", + "name": "GenerateFromPoetryRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.python_requirements.GenerateFromPythonRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.python_requirements.generate_from_python_requirement" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.python_requirements", + "name": "GenerateFromPythonRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.project_info", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependees": [ + "pants.backend.python.mixed_interpreter_constraints" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "construct_scope_py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyOxidizerFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary" + ], + "dependees": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PyOxidizerFieldSet(address: 'Address', entry_point: 'PyOxidizerEntryPointField', dependencies: 'PyOxidizerDependenciesField', unclassified_resources: 'PyOxidizerUnclassifiedResources', template: 'PyOxidizerConfigSourceField', output_path: 'PyOxidizerOutputPathField')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyOxidizerFieldSet", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyoxidizerRunnerScript": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependees": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyOxidizer": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependees": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "construct_scope_pyoxidizer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPy": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_debugpy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPyLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPython": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPython", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_ipython" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPythonLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPythonLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.Lambdex": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "Lambdex", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "construct_scope_lambdex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.LambdexLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile" + ], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "LambdexLockfileSentinel", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.poetry.PoetrySubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.poetry", + "name": "PoetrySubsystem", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_poetry" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PyTest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PyTest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pytest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.pytest_export" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestExportSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PythonTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_test" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'PythonTestSourceField', interpreter_constraints: 'InterpreterConstraintsField', timeout: 'PythonTestsTimeoutField', runtime_package_dependencies: 'RuntimePackageDependenciesField', extra_env_vars: 'PythonTestsExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PythonTestFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.PythonNativeCode": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "PythonNativeCode", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_native_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.repos.PythonRepos": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.maybe_warn_python_repos", + "pants.backend.python.util_rules.pex.build_pex" + ], + "dependees": [ + "pants.backend.docker", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.repos", + "name": "PythonRepos", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_repos" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup.PythonSetup": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "pants.backend.terraform.dependency_inference.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup", + "name": "PythonSetup", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.PythonDistributionFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonDistributionFieldSet(address: 'Address', provides: pants.backend.python.target_types.PythonProvidesField)", + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "PythonDistributionFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.subsystems.setuptools.Setuptools": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "Setuptools", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setuptools" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.SetuptoolsLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "SetuptoolsLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCM": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_setuptools_scm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCMLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCMLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.twine.setup_twine_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.subsystems.twine.setup_twine_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_twine" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexBinaryDefaults": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexBinaryDefaults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pex_binary_defaults" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexCompletePlatformsField": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexCompletePlatformsField", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.target_types.PythonFilesGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PythonFilesGeneratorSettingsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types.ResolvePexEntryPointRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Determine the `entry_point` for a `pex_binary` after applying all syntactic sugar.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePexEntryPointRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvePythonDistributionEntryPointsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Looks at the entry points to see if it is a setuptools entry point, or a BUILD target address\nthat should be resolved into a setuptools entry point.\n\nIf the `entry_points_field` is present, inspect the specified entry points.\nIf the `provides_field` is present, inspect the `provides_field.kwargs[\"entry_points\"]`.\n\nThis is to support inspecting one or the other depending on use case, using the same\nlogic for resolving pex_binary addresses etc.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePythonDistributionEntryPointsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies" + ] + }, + "pants.backend.python.target_types.ResolvedPexEntryPoint": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPexEntryPoint", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvedPythonDistributionEntryPoints": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.addresses" + ], + "documentation": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies" + ] + }, + "pants.backend.python.target_types_rules.GenerateTargetsFromPexBinaries": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "GenerateTargetsFromPexBinaries", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InjectPexBinaryEntryPointDependency": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InjectPexBinaryEntryPointDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InjectPythonDistributionDependencies": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InjectPythonDistributionDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonValidateDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonValidateDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.MyPycDistBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": "MyPycDistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "MyPycDistBuildEnvironmentRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "DistBuildEnvironmentRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.UsesMyPycField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "UsesMyPycField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "MyPyPartition(root_field_sets: 'FrozenOrderedSet[MyPyFieldSet]', closure: 'FrozenOrderedSet[Target]', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartition", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartitions": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.skip_field.SkipMyPyField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.skip_field", + "name": "SkipMyPyField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPy": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPy", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "construct_scope_mypy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyConfigFile": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_export" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyExportSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.backend.python", + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyLockfileSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "documentation": "Any ancestor files found.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request for ancestor files of the given names.\n\n\"Ancestor files\" means all files with one of the given names that are siblings of, or in parent\ndirectories of, a `.py` or `.pyi` file in the input_files.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystem": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.fs" + ], + "documentation": "A PEP 517/518 build system configuration.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystemRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to find build system config in the given dir of the given digest.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystemRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to build dists via a PEP 517 build backend.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process" + ], + "documentation": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.interpreter_constraints", + "name": "InterpreterConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistWheels": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "Contains the wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistWheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPex": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "documentation": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPex", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Request to build the local dists from the dependency closure of a set of addresses.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.BuildPexResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.platform", + "pants.engine.process" + ], + "documentation": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "BuildPexResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex" + ] + }, + "pants.backend.python.util_rules.pex.CompletePlatforms": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.python", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "CompletePlatforms", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPex": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": "OptionalPex(maybe_pex: 'Pex | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex.Pex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": "Wrapper for a digest containing a pex file created with some filename.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "Pex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex" + ] + }, + "pants.backend.python.util_rules.pex.PexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_pex_process" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "PexProcess(pex: 'Pex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ] + }, + "pants.backend.python.util_rules.pex.PexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "documentation": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.PexResolveInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.isort" + ], + "dependencies": [ + "pants.backend.python", + "pants.engine.process" + ], + "documentation": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexResolveInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.isort.rules.isort_fmt" + ] + }, + "pants.backend.python.util_rules.pex.VenvPex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm" + ], + "documentation": "VenvPex(digest: 'Digest', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_venv_pex_process" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "VenvPexProcess(venv_pex: 'VenvPex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "VenvPexRequest(pex_request: 'PexRequest', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexRequest", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexCli": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCli", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex_cli" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_cli.PexCliProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "PexCliProcess(*, subcommand: 'Iterable[str]', extra_args: 'Iterable[str]', description: 'str', set_resolve_args: 'bool' = True, additional_input_digest: 'Optional[Digest]' = None, extra_env: 'Optional[Mapping[str, str]]' = None, output_files: 'Optional[Iterable[str]]' = None, output_directories: 'Optional[Iterable[str]]' = None, python: 'Optional[PythonExecutable]' = None, level: 'LogLevel' = , concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCliProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexPEX": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [], + "documentation": "The Pex PEX binary.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexPEX", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexEnvironment": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.option.global_options" + ], + "documentation": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonExecutable | None' = None, venv_use_symlinks: 'bool' = False)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexRuntimeEnvironment": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexRuntimeEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PythonExecutable": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.backend.python", + "pants.engine.process" + ], + "documentation": "The BinaryPath of a Python executable.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PythonExecutable", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolve", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "ChosenPythonResolveRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.GlobalRequirementConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "GlobalRequirementConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_from_targets.InterpreterConstraintsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "InterpreterConstraintsRequest(addresses: 'Iterable[Address]', *, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "InterpreterConstraintsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.PexFromTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "PexFromTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirementspexrequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.RequirementsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirementspexrequest" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Requests a PEX containing only thirdparty requirements for internal/non-portable use.\n\nUsed as part of an optimization to reduce the \"overhead\" (in terms of both time and space) of\nthirdparty requirements by taking advantage of certain PEX features.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "RequirementsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._ConstraintsRepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "_ConstraintsRepositoryPexRequest(repository_pex_request: '_RepositoryPexRequest')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_ConstraintsRepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._PexRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Determine the requirement strings used transitively.\n\nThis type is private because callers should likely use `RequirementsPexRequest` or\n`PexFromTargetsRequest` instead.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_PexRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._RepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "_RepositoryPexRequest(addresses: 'Iterable[Address]', *, internal_only: 'bool', hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_lockfile_args: 'tuple[str, ...]' = ()) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_RepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfile": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.engine.fs" + ], + "documentation": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfileRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A request to load and validate the content of the given lockfile.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfileRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.PexRequirements": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "PexRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFiles": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "dependees": [ + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "builtins", + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "PythonSourceFilesRequest(targets: 'Iterable[Target]', *, include_resources: 'bool' = True, include_files: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.StrippedPythonSourceFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A PythonSourceFiles that has had its source roots stripped.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "StrippedPythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.vcs_versioning.AllVCSVersionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.GeneratePythonFromSetuptoolsSCMRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "GeneratePythonFromSetuptoolsSCMRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.PythonVCSVersionMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "PythonVCSVersionMappingMarker", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.VCSVersionPythonResolveField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "VCSVersionPythonResolveField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "HandleScalacOptionsRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.scala.bsp.rules", + "pants.base.build_root", + "pants.core", + "pants.engine.fs" + ], + "documentation": "HandleScalacOptionsResult(item: 'ScalacOptionsItem')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.ScalaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "ScalaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPCompileRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPDependencyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "ScalaBSPDependencyModulesRequest(field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPDependencyModulesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPDependencyModulesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPLanguageSupport", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_resources_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "ScalaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPResourcesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaMainClassesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaMainClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaTestClassesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaTestClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalacOptionsHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModules": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.core", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch", + "pants.jvm.resolve.key" + ], + "documentation": "ThirdpartyModules(resolve: 'CoursierResolveKey', entries: 'dict[CoursierLockfileEntry, ClasspathEntry]', merged_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "ThirdpartyModulesRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModulesRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.spec.ScalaMainClassesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "documentation": "ScalaMainClassesResult(items: 'tuple[ScalaMainClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalaTestClassesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "documentation": "ScalaTestClassesResult(items: 'tuple[ScalaTestClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalacOptionsResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "documentation": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac.CompileScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac", + "name": "CompileScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.AllScalaPluginTargets": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.compile.scalac_plugins", + "pants.build_graph.address", + "pants.core" + ], + "documentation": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.inject_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPlugins": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac_plugins", + "pants.core", + "pants.engine.target" + ], + "documentation": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPlugins", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "documentation": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala, pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetWithoutResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "ScalaPluginsForTargetWithoutResolveRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetWithoutResolveRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.inject_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "ScalaPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaSourceDependencies", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InjectScalaLibraryDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InjectScalaLibraryDependencyRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InjectScalaPluginDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.inject_scala_plugin_dependencies" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InjectScalaPluginDependenciesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InjectDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.dependency_inference.rules" + ], + "documentation": "ScalaRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "ScalaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolveRequest", + "provider": "pants.backend.scala.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.AnalyzeScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "documentation": "AnalyzeScalaSourceRequest(source_files: 'SourceFiles', scala_version: 'str', source3: 'bool')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.FallibleScalaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "documentation": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.dependency_inference.scala_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "documentation": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[ScalaProvidedSymbol]', provided_symbols_encoded: 'FrozenOrderedSet[ScalaProvidedSymbol]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.AllScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "AllScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.FirstPartyScalaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "FirstPartyScalaTargetsMappingRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.check.ScalacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.check.scalac_check" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.check", + "name": "ScalacCheckRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.repl.ScalaRepl": { + "consumed_by_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.repl", + "name": "ScalaRepl", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.scala.goals.tailor.PutativeScalaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeScalaTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.scala.goals.tailor", + "name": "PutativeScalaTargetsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.GatherScalafmtConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [], + "documentation": "GatherScalafmtConfigFilesRequest(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "GatherScalafmtConfigFilesRequest", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.Partition": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.lint.scalafmt.rules", + "pants.core" + ], + "documentation": "Partition(process: 'JvmProcess', description: 'str')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "Partition", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtConfigFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "builtins", + "pants.backend.scala.lint.scalafmt.rules" + ], + "documentation": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtRequest", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtToolLockfileSentinel", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.Setup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.scala.lint.scalafmt.rules", + "pants.core" + ], + "documentation": "Setup(partitions: 'tuple[Partition, ...]', original_snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "Setup", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.SetupScalafmtPartition": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [], + "documentation": "SetupScalafmtPartition(classpath_entries: 'tuple[str, ...]', merged_sources_digest: 'Digest', extra_immutable_input_digests: 'FrozenDict[str, Digest]', config_file: 'str', files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "SetupScalafmtPartition", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.skip_field.SkipScalafmtField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.skip_field", + "name": "SkipScalafmtField", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.subsystem.ScalafmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.subsystem", + "name": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "construct_scope_scalafmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.resolve.lockfile.ValidateResolveHasScalaRuntimeRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.jvm.goals.lockfile" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.lockfile", + "name": "ValidateResolveHasScalaRuntimeRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateJvmArtifactsForResolveRequest", + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala.ScalaSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala", + "name": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala_infer.ScalaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala_infer", + "name": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalac.Scalac": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalac", + "name": "Scalac", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalatest.Scalatest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalatest", + "name": "Scalatest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalatest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaSettingsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "ScalatestTestFieldSet(address: 'Address', sources: 'ScalatestTestSourceField', jdk_version: 'JvmJdkField', dependencies: 'Dependencies')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ] + }, + "pants.backend.scala.test.scalatest.TestSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.scala.test.scalatest", + "pants.core", + "pants.engine.target" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetup", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.test.scalatest.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "TestSetupRequest(field_set: 'ScalatestTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetupRequest", + "provider": "pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.shell.dependency_inference.AllShellTargets": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "AllShellTargets", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.find_all_shell_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.InferShellDependencies": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "InferShellDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.ParseShellImportsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "ParseShellImportsRequest(digest: 'Digest', fp: 'str')", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParseShellImportsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ParsedShellImports": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParsedShellImports", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ShellMapping": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "A mapping of Shell file names to their owning file address.", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ShellMapping", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.rules.ShellcheckRequest": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck" + ], + "dependees": [ + "pants.backend.shell.lint.shellcheck" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.rules", + "name": "ShellcheckRequest", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.skip_field.SkipShellcheckField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.skip_field", + "name": "SkipShellcheckField", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.subsystem.Shellcheck": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck" + ], + "dependees": [ + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.subsystem", + "name": "Shellcheck", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shellcheck" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.rules.ShfmtRequest": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt" + ], + "dependees": [ + "pants.backend.shell.lint.shfmt" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.rules", + "name": "ShfmtRequest", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.skip_field.SkipShfmtField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.skip_field", + "name": "SkipShfmtField", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.subsystem.Shfmt": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt" + ], + "dependees": [ + "pants.backend.shell.lint.shfmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.subsystem", + "name": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [ + "construct_scope_shfmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shell_command.GenerateFilesFromShellCommandRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.run_shell_command" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_command", + "name": "GenerateFilesFromShellCommandRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.shell_command.RunShellCommand": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.backend.shell.shell_command.run_shell_debug_adapter_binary" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_command", + "name": "RunShellCommand", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shell_command.ShellCommandProcessRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.prepare_shell_command_process" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "ShellCommandProcessRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.shell.shell_command", + "name": "ShellCommandProcessRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shell_command.run_shell_command", + "pants.backend.shell.shell_command.run_shell_command_request" + ] + }, + "pants.backend.shell.shell_setup.ShellSetup": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.shell.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_setup", + "name": "ShellSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shell_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2FieldSet": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "Shunit2FieldSet(address: 'Address', sources: pants.backend.shell.target_types.Shunit2TestSourceField, timeout: pants.backend.shell.target_types.Shunit2TestTimeoutField, shell: pants.backend.shell.target_types.Shunit2ShellField, runtime_package_dependencies: pants.core.goals.test.RuntimePackageDependenciesField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2FieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2Runner": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.core", + "pants.engine.environment" + ], + "documentation": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2Runner", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2RunnerRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "Shunit2RunnerRequest(address: pants.build_graph.address.Address, test_file_content: pants.engine.fs.FileContent, shell_field: pants.backend.shell.target_types.Shunit2ShellField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2RunnerRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "TestSetup(process: pants.engine.process.Process)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "TestSetupRequest(field_set: pants.backend.shell.shunit2_test_runner.Shunit2FieldSet)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.tailor.PutativeShellTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeShellTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.shell.tailor", + "name": "PutativeShellTargetsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.target_types.ShellGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.target_types", + "name": "ShellGeneratorSettingsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.InferTerraformModuleDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "InferTerraformModuleDependenciesRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.ParseTerraformModuleSources": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [], + "documentation": "ParseTerraformModuleSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParseTerraformModuleSources", + "provider": "pants.backend.terraform.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ] + }, + "pants.backend.terraform.dependency_inference.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.core" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParserSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2Parser": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_hcl2_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2ParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2ParserLockfileSentinel", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformCheckRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformCheckRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformValidateSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_validate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.tailor.PutativeTerraformTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeTerraformTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.terraform.goals.tailor", + "name": "PutativeTerraformTargetsRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TfFmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TffmtRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TffmtRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.style.StyleSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "builtins", + "pants.backend.terraform.style", + "pants.core" + ], + "documentation": "StyleSetup(directory_to_process: 'dict[str, tuple[TerraformProcess, tuple[Address, ...]]]', original_snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.terraform.style", + "name": "StyleSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.style.setup_terraform_style" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.style.StyleSetupRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.style.setup_terraform_style" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [], + "documentation": "StyleSetupRequest(request: 'FmtRequest | CheckRequest', args: 'Iterable[str]')", + "is_union": false, + "module": "pants.backend.terraform.style", + "name": "StyleSetupRequest", + "provider": "pants.backend.terraform.style", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformProcess": { + "consumed_by_rules": [ + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [], + "documentation": "A request to invoke Terraform.", + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformProcess", + "provider": "pants.backend.terraform.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformTool": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformTool", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_download_terraform" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.base.specs.RawSpecs": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Convert the specs into matching targets and files.\n\nUnlike `Specs`, this does not consider include vs. ignore specs. It simply matches all relevant\ntargets/files.\n\nWhen you want to operate on what the user specified, use `Specs`. Otherwise, you can use\neither `Specs` or `RawSpecs` in rules, e.g. to find what targets exist in a directory.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_nearest_go_mod", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.base.specs.RawSpecsWithoutFileOwners": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "The subset of `RawSpecs` that do not use the `Owners` rule to match targets.\n\nThis exists to work around a cycle in the rule graph. Usually, consumers should use the simpler\n`Get(Addresses, RawSpecs)`, which will result in this rule being used.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecsWithoutFileOwners", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses" + ] + }, + "pants.base.specs.Specs": { + "consumed_by_rules": [ + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "The specs provided by the user for what to run on.\n\nThe `ignores` will filter out all relevant `includes`.\n\nIf your rule does not need to consider includes vs. ignores, e.g. to find all targets in a\ndirectory, you can directly use `RawSpecs`.", + "is_union": false, + "module": "pants.base.specs", + "name": "Specs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.bsp.context.BSPContext": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.core" + ], + "dependencies": [ + "pants.engine.internals.session" + ], + "documentation": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "is_union": false, + "module": "pants.bsp.context", + "name": "BSPContext", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.rules.bsp_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.goal.BSPGoal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.goal", + "name": "BSPGoal", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_experimental_bsp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.protocol.BSPHandlerMapping": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.core" + ], + "dependencies": [], + "documentation": "Union type for rules to register handlers for BSP methods.", + "is_union": true, + "module": "pants.bsp.protocol", + "name": "BSPHandlerMapping", + "provider": "pants.bsp.protocol", + "returned_by_rules": [], + "union_members": [ + "BuildTargetSourcesHandlerMapping", + "CompileRequestHandlerMapping", + "DependencyModulesHandlerMapping", + "DependencySourcesHandlerMapping", + "InitializeBuildHandlerMapping", + "JavacOptionsHandlerMapping", + "ResourcesRequestHandlerMapping", + "ScalaMainClassesHandlerMapping", + "ScalaTestClassesHandlerMapping", + "ScalacOptionsHandlerMapping", + "WorkspaceBuildTargetsHandlerMapping" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.base.BuildTargetIdentifier": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A unique identifier for a target, can use any URI-compatible encoding as long as it is unique\nwithin the workspace.\n\nClients should not infer metadata out of the URI structure such as the path or query parameters,\nuse BuildTarget instead.", + "is_union": false, + "module": "pants.bsp.spec.base", + "name": "BuildTargetIdentifier", + "provider": "pants.bsp.spec.base", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.spec.compile.CompileResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.compile", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "documentation": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "is_union": false, + "module": "pants.bsp.spec.compile", + "name": "CompileResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.lifecycle.InitializeBuildResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.spec.lifecycle", + "pants.engine.unions" + ], + "documentation": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "is_union": false, + "module": "pants.bsp.spec.lifecycle", + "name": "InitializeBuildResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.lifecycle.bsp_build_initialize" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.resources.ResourcesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.resources", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "documentation": "ResourcesResult(items: 'tuple[ResourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.resources", + "name": "ResourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencyModulesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "documentation": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencyModulesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencySourcesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "documentation": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencySourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.SourcesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "documentation": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "SourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.WorkspaceBuildTargetsResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "documentation": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "WorkspaceBuildTargetsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.compile.CompileOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "CompileOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal', origin_id: 'str | None' = None, arguments: 'tuple[str, ...] | None' = ())", + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ] + }, + "pants.bsp.util_rules.compile.CompileRequestHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.BSPLanguageSupport": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Union exposed by language backends to inform BSP core rules of capabilities to advertise to\nclients.", + "is_union": true, + "module": "pants.bsp.util_rules.lifecycle", + "name": "BSPLanguageSupport", + "provider": "pants.bsp.util_rules.lifecycle", + "returned_by_rules": [], + "union_members": [ + "JavaBSPLanguageSupport", + "ScalaBSPLanguageSupport" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.InitializeBuildHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.lifecycle", + "name": "InitializeBuildHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.resources.ResourcesForOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ResourcesForOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesForOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.resources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ] + }, + "pants.bsp.util_rules.resources.ResourcesRequestHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetInternal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.bsp.spec.base" + ], + "documentation": "BSPBuildTargetInternal(name: 'str', specs: 'RawSpecs', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetInternal", + "provider": "pants.bsp.util_rules.targets, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetSourcesInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.target" + ], + "documentation": "Source files and roots for a BSP build target.\n\nIt is a separate class so that it is computed lazily only when called for by an RPC call.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetSourcesInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargets": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "documentation": "BSPBuildTargets(targets_mapping: 'FrozenDict[str, BSPBuildTargetInternal]')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook to allow language backends to provide metadata for BSP build targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPBuildTargetsMetadataRequest", + "ScalaBSPBuildTargetsMetadataRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.core", + "pants.engine.process" + ], + "documentation": "Response type for a BSPBuildTargetsMetadataRequest.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook to allow language backends to compile targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPCompileRequest", + "ScalaBSPCompileRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.bsp.util_rules.compile", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.resolve.key" + ], + "documentation": "Result of compilation of a target capable of target compilation.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook to allow language backends to provide dependency modules.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "ScalaBSPDependencyModulesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.core" + ], + "documentation": "BSPDependencyModulesResult(modules: 'tuple[DependencyModule, ...]', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook to allow language backends to provide resources for targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPResourcesRequest", + "ScalaBSPResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.bsp.util_rules.resources", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "Resources for a target.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BuildTargetSourcesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BuildTargetSourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencyModulesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencyModulesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencySourcesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencySourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "GenerateOneBSPBuildTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.base.build_root", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "documentation": "GenerateOneBSPBuildTargetResult(build_target: 'BuildTarget', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "MaterializeBuildTargetSourcesRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.base.build_root", + "pants.bsp.util_rules.targets" + ], + "documentation": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ResolveOneDependencyModuleRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.scala", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "documentation": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.WorkspaceBuildTargetsHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "WorkspaceBuildTargetsHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets._ParseOneBSPMappingRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "_ParseOneBSPMappingRequest(name: 'str', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "_ParseOneBSPMappingRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ] + }, + "pants.build_graph.address.AddressInput": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A string that has been parsed and normalized using the Address syntax.\n\nAn AddressInput must be resolved into an Address using the engine (which involves inspecting\ndisk to determine the types of its path component).", + "is_union": false, + "module": "pants.build_graph.address", + "name": "AddressInput", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.build_graph.address.BuildFileAddressRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to find the BUILD file path for an address.", + "is_union": false, + "module": "pants.build_graph.address", + "name": "BuildFileAddressRequest", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ] + }, + "pants.core.goals.check.Check": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "Check", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.check.check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.check.CheckRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "A union for StyleRequests that should be type-checkable.\n\nSubclass and install a member of this type to provide a linter.", + "is_union": true, + "module": "pants.core.goals.check", + "name": "CheckRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCheckRequest", + "JavacCheckRequest", + "KotlincCheckRequest", + "MyPyRequest", + "ScalacCheckRequest", + "TerraformCheckRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.core", + "pants.engine.process" + ], + "documentation": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.core.goals.check.CheckResults": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.resolve.key" + ], + "documentation": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResults", + "provider": "pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.terraform.goals.check.terraform_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.check.check" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.export.Export": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.base.build_root", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "Export", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.export.export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.export.ExportRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A union for exportable data provided by a backend.\n\nSubclass and install a member of this type to export data.", + "is_union": true, + "module": "pants.core.goals.export", + "name": "ExportRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ExportVenvsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.process" + ], + "documentation": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = ())", + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.core.goals.export.ExportResults": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportSubsystem": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.Fmt": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "Fmt", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt" + ], + "dependencies": [], + "documentation": "FmtRequest(field_sets: 'Iterable[_FS]', snapshot: 'Snapshot') -> 'None'", + "is_union": true, + "module": "pants.core.goals.fmt", + "name": "FmtRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AutoflakeRequest", + "BlackRequest", + "BufFormatRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "PyUpgradeRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt_language", + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.fmt.FmtResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.scala.lint.scalafmt.rules", + "pants.core", + "pants.engine.process" + ], + "documentation": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtResult", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.experimental.go, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.isort, pants.backend.python.lint.yapf, pants.backend.shell.lint.shfmt", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt_language", + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.fmt.FmtSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt._LanguageFmtRequest": { + "consumed_by_rules": [ + "pants.core.goals.fmt.fmt_language" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "_LanguageFmtRequest(request_types: 'tuple[type[FmtRequest], ...]', targets: 'Targets')", + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "_LanguageFmtRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.fmt._LanguageFmtResults": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt" + ], + "documentation": "_LanguageFmtResults(results: 'tuple[FmtResult, ...]', input: 'Digest', output: 'Digest')", + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "_LanguageFmtResults", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fmt.fmt_language" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfile": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A union base for generating ecosystem-specific lockfiles.\n\nEach language ecosystem should set up a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile` and `GenerateJVMLockfile`, and register a union rule. They should\nalso set up a simple rule that goes from that class -> `WrappedGenerateLockfile`.\n\nSubclasses will usually want to add additional properties, such as what requirements to\ninstall and Python interpreter constraints.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GenerateJvmLockfile", + "GeneratePythonLockfile" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfileResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.fs", + "pants.engine.process", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "The result of generating a lockfile for a particular resolve.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfileResult", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "dependees": [ + "pants.backend.docker", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_generate_lockfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateToolLockfileSentinel": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "Tools use this as an entry point to say how to generate their tool lockfile.\n\nEach language ecosystem should set up a union member of `GenerateLockfile`, like\n`GeneratePythonLockfile`, as explained in that class's docstring.\n\nThen, each tool should subclass `GenerateToolLockfileSentinel` and set up a rule that goes from the\nsubclass -> the language's lockfile request, e.g. BlackLockfileSentinel ->\nGeneratePythonLockfile. Register a union rule for the `GenerateToolLockfileSentinel` subclass.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateToolLockfileSentinel", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AutoflakeLockfileSentinel", + "BanditLockfileSentinel", + "BlackLockfileSentinel", + "CoveragePyLockfileSentinel", + "DebugPyLockfileSentinel", + "DocformatterLockfileSentinel", + "DockerfileParserLockfileSentinel", + "Flake8LockfileSentinel", + "GoogleJavaFormatToolLockfileSentinel", + "IPythonLockfileSentinel", + "IsortLockfileSentinel", + "JavaParserToolLockfileSentinel", + "JunitToolLockfileSentinel", + "KotlinParserToolLockfileSentinel", + "KtlintToolLockfileSentinel", + "LambdexLockfileSentinel", + "MyPyLockfileSentinel", + "MypyProtobufLockfileSentinel", + "PyUpgradeLockfileSentinel", + "PylintLockfileSentinel", + "PytestLockfileSentinel", + "ScalaParserToolLockfileSentinel", + "ScalafmtToolLockfileSentinel", + "ScalapbcToolLockfileSentinel", + "ScalatestToolLockfileSentinel", + "SetuptoolsLockfileSentinel", + "SetuptoolsSCMLockfileSentinel", + "TerraformHcl2ParserLockfileSentinel", + "TwineLockfileSentinel", + "YapfLockfileSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNames": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNames", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNamesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A hook for a language ecosystem to declare which resolves it has defined.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> KnownUserResolveNames, usually by simply reading the\n`resolves` option from the relevant subsystem.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "KnownJVMUserResolveNamesRequest", + "KnownPythonUserResolveNamesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.RequestedUserResolveNames": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "The user resolves requested for a particular language ecosystem.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> UserGenerateLockfiles.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "RequestedUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RequestedJVMUserResolveNames", + "RequestedPythonUserResolveNames" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.UserGenerateLockfiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "UserGenerateLockfiles", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.WrappedGenerateLockfile": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "WrappedGenerateLockfile", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.lint.Lint": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "Lint", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.lint.lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintFilesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [], + "documentation": "The entry point for linters that do not use targets.", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "LintFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RegexLintRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.lint.LintResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.core", + "pants.engine.process" + ], + "documentation": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResult", + "provider": "pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.pylint.rules.pylint_lint" + ] + }, + "pants.core.goals.lint.LintResults": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.shell", + "pants.core", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResults", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.helm, pants.backend.project_info, pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pylint, pants.backend.shell.lint.shellcheck", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.pylint.rules.pylint_lint", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.lint.LintSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.lint.lint" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintTargetsRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.helm", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.shell.lint.shellcheck" + ], + "dependencies": [], + "documentation": "The entry point for linters that need targets.", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "LintTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "BanditRequest", + "BufLintRequest", + "Flake8Request", + "HadolintRequest", + "HelmLintRequest", + "PylintRequest", + "ShellcheckRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.package.AllPackageableTargets": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "AllPackageableTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.find_all_packageable_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.BuiltPackage": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "documentation": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "is_union": false, + "module": "pants.core.goals.package", + "name": "BuiltPackage", + "provider": "pants.backend.awslambda.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.google_cloud_function.python, pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.target_types.package_archive_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.core.goals.package.Package": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "Package", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.package_asset" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.PackageFieldSet": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "dependencies": [], + "documentation": "The fields necessary to build an asset from a target.", + "is_union": true, + "module": "pants.core.goals.package", + "name": "PackageFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ArchiveFieldSet", + "DeployJarFieldSet", + "DockerFieldSet", + "GoBinaryFieldSet", + "HelmPackageFieldSet", + "PackageWarFileFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonAwsLambdaFieldSet", + "PythonDistributionFieldSet", + "PythonGoogleCloudFunctionFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target" + ] + }, + "pants.core.goals.package.PackageSubsystem": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "PackageSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.Publish": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "Publish", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishFieldSet": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "dependencies": [], + "documentation": "FieldSet for PublishRequest.\n\nUnion members may list any fields required to fulfill the instantiation of the\n`PublishProcesses` result of the publish rule.", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "HelmPublishFieldSet", + "PublishDockerImageFieldSet", + "PublishPythonPackageFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishProcesses": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.environment", + "pants.engine.process" + ], + "documentation": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcesses", + "provider": "pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.core", + "returned_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.python.goals.publish.twine_upload", + "pants.core.goals.publish.package_for_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishProcessesRequest": { + "consumed_by_rules": [ + "pants.core.goals.publish.package_for_publish" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Internal request taking all field sets for a target and turning it into a `PublishProcesses`\ncollection (via registered publish plugins).", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcessesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "dependencies": [], + "documentation": "Implement a union member subclass of this union class along with a PublishFieldSet subclass\nthat appoints that member subclass in order to receive publish requests for targets compatible\nwith the field set.\n\nThe `packages` hold all artifacts produced for a given target to be published.\n\nExample:\n\n PublishToMyRepoRequest(PublishRequest):\n pass\n\n PublishToMyRepoFieldSet(PublishFieldSet):\n publish_request_type = PublishToMyRepoRequest\n\n # Standard FieldSet semantics from here on:\n required_fields = (MyRepositories,)\n ...", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PublishDockerImageRequest", + "PublishHelmChartRequest", + "PublishPythonPackageRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.publish.package_for_publish" + ] + }, + "pants.core.goals.publish.PublishSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.Repl": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "Repl", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.ReplImplementation": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A REPL implementation for a specific language or runtime.\n\nProxies from the top-level `repl` goal to an actual implementation.", + "is_union": true, + "module": "pants.core.goals.repl", + "name": "ReplImplementation", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "IPythonRepl", + "PythonRepl", + "ScalaRepl" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "documentation": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplRequest", + "provider": "pants.backend.experimental.scala, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.Run": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "Run", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.run.run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.RunDebugAdapterRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "documentation": "Like RunRequest, but launches the process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunDebugAdapterRequest", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request", + "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary", + "pants.backend.shell.shell_command.run_shell_debug_adapter_binary", + "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunFieldSet": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "The fields necessary from a target to run a program/script.", + "is_union": true, + "module": "pants.core.goals.run", + "name": "RunFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployJarFieldSet", + "DockerFieldSet", + "GoBinaryFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonSourceFieldSet", + "RunShellCommand" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.helm", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "documentation": "RunRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunRequest", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.run.run" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.AllOwnedSources": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "All files in the project already owned by targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "AllOwnedSources", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.determine_all_owned_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.DisjointSourcePutativeTarget": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "Putative target whose sources don't overlap with those of any existing targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "DisjointSourcePutativeTarget", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditBuildFilesRequest": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "EditBuildFilesRequest(putative_targets: 'PutativeTargets')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditBuildFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditedBuildFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.engine.fs" + ], + "documentation": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditedBuildFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTarget": { + "consumed_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A potential target to add, detected by various heuristics.\n\nThis class uses the term \"target\" in the loose sense. It can also represent an invocation of a\ntarget-generating macro.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTarget", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargets": { + "consumed_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargetsRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "PutativeTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": true, + "module": "pants.core.goals.tailor", + "name": "PutativeTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PutativeDockerTargetsRequest", + "PutativeGoTargetsRequest", + "PutativeHelmChartTargetsRequest", + "PutativeJavaTargetsRequest", + "PutativeKotlinTargetsRequest", + "PutativeProtobufTargetsRequest", + "PutativePythonTargetsRequest", + "PutativeScalaTargetsRequest", + "PutativeShellTargetsRequest", + "PutativeTerraformTargetsRequest", + "PutativeThriftTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.TailorGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.TailorSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.tailor" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.UniquelyNamedPutativeTargets": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.target" + ], + "documentation": "Putative targets that have no name conflicts with existing targets (or each other).", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "UniquelyNamedPutativeTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.test.BuildPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "BuildPackageDependenciesRequest(field: 'RuntimePackageDependenciesField')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuildPackageDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.BuiltPackageDependencies": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuiltPackageDependencies", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.CoverageDataCollection": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "CoverageDataCollection", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PytestCoverageDataCollection" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.CoverageReports": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process", + "pants.engine.target", + "pants.option.global_options" + ], + "documentation": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "CoverageReports", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.Test": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.console", + "pants.engine.desktop", + "pants.engine.fs", + "pants.engine.internals.session", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "Test", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.run_tests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestDebugAdapterRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "Like TestDebugRequest, but launches the test process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request", + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test", + "pants.jvm.test.junit.setup_junit_debug_adapter_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestDebugRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "documentation": "TestDebugRequest(process: 'InteractiveProcess')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.generate_go_tests_debug_request", + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestExtraEnv": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.environment" + ], + "documentation": "TestExtraEnv(env: 'Environment')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestExtraEnv", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.get_filtered_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestFieldSet": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "The fields necessary to run tests on a target.", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestFieldSet", + "HelmUnitTestFieldSet", + "JunitTestFieldSet", + "PythonTestFieldSet", + "ScalatestTestFieldSet", + "Shunit2FieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.go", + "pants.core", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestResult", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.jvm.test.junit.run_junit_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.test.get_filtered_environment", + "pants.core.goals.test.run_tests", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithBlackRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithBlackRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithYapfRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithYapfRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedFieldsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedFieldsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedTargetsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenamedFieldTypes": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenamedFieldTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.determine_renamed_field_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenamedTargetTypes": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "Deprecated target type names to new names.", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenamedTargetTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.determine_renamed_target_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RewrittenBuildFile": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.process" + ], + "documentation": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.RewrittenBuildFileRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "RewrittenBuildFileRequest(path: 'str', lines: 'tuple[str, ...]', colors_enabled: 'bool')", + "is_union": true, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFileRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "FormatWithBlackRequest", + "FormatWithYapfRequest", + "RenameDeprecatedFieldsRequest", + "RenameDeprecatedTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.debug_adapter.DebugAdapterSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.debug_adapter", + "name": "DebugAdapterSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_debug_adapter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrap": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.system_binaries.find_python" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.environment" + ], + "documentation": "PythonBootstrap(environment: 'Environment', options: 'OptionValueContainer')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrap", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrapSubsystem": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrapSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.target_types.AllAssetTargets": { + "consumed_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.find_all_assets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.core.target_types.AllAssetTargetsByPath": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsByPath", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.core.target_types.AllAssetTargetsRequest": { + "consumed_by_rules": [ + "pants.core.target_types.find_all_assets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "AllAssetTargetsRequest()", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.core.target_types.ArchiveFieldSet": { + "consumed_by_rules": [ + "pants.core.target_types.package_archive_target" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ArchiveFieldSet(address: 'Address', packages: 'ArchivePackagesField', files: 'ArchiveFilesField', format_field: 'ArchiveFormatField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.core.target_types", + "name": "ArchiveFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateFileSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_file_source" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateFileSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateResourceSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_resource_source" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateResourceSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.RelocateFilesViaCodegenRequest": { + "consumed_by_rules": [ + "pants.core.target_types.relocate_files" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "RelocateFilesViaCodegenRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.util_rules.archive.CreateArchive": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.create_archive" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A request to create an archive.\n\nAll files in the input snapshot will be included in the resulting archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "CreateArchive", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.package_archive_target" + ] + }, + "pants.core.util_rules.archive.ExtractedArchive": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.engine.process" + ], + "documentation": "The result of extracting an archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "ExtractedArchive", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.core.util_rules.archive.MaybeExtractArchiveRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm" + ], + "documentation": "A request to extract a single archive file (otherwise returns the input digest).\n\n:param digest: The digest of the archive to maybe extract. If the archive contains a single file\n which matches a known suffix, the `ExtractedArchive` will contain the extracted digest.\n Otherwise the `ExtractedArchive` will contain this digest.\n:param use_suffix: If provided, extracts the single file archive as if it had this suffix.\n Useful in situations where the file is archived then renamed.\n (E.g. A Python `.whl` is a renamed `.zip`, so the client should provide `\".zip\"`)", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "MaybeExtractArchiveRequest", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.config_files.ConfigFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "documentation": "Config files used by a tool run by Pants.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.config_files.ConfigFilesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Resolve the specified config files if given, else look for candidate config files if\ndiscovery is enabled.\n\nFiles in `check_existence` only need to exist, whereas files in `check_content` both must exist\nand contain the bytes snippet in the file.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.distdir.DistDir": { + "consumed_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.lint.lint", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests" + ], + "dependees": [ + "pants.backend.docker", + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.base.build_root" + ], + "documentation": "The directory to which we write distributable files.", + "is_union": false, + "module": "pants.core.util_rules.distdir", + "name": "DistDir", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.distdir.get_distdir" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.external_tool.DownloadedExternalTool": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.engine.fs" + ], + "documentation": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "DownloadedExternalTool", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.plugins.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.external_tool.ExternalToolRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ExternalToolRequest(download_file_request: 'DownloadFile', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "ExternalToolRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.plugins.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.source_files.SourceFiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.engine.target" + ], + "documentation": "A merged snapshot of the `sources` fields of multiple targets.", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.source_files.determine_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.style.setup_terraform_style", + "pants.core.goals.fmt.fmt_language", + "pants.core.goals.lint.lint", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.source_files.SourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.core.util_rules.source_files.determine_source_files" + ], + "dependees": [ + "pants.backend.experimental.scala", + "pants.core" + ], + "dependencies": [], + "documentation": "SourceFilesRequest(sources_fields: Iterable[pants.engine.target.SourcesField], *, for_sources_types: Iterable[Type[pants.engine.target.SourcesField]] = (,), enable_codegen: bool = False)", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.style.setup_terraform_style", + "pants.core.goals.fmt.fmt_language", + "pants.core.goals.lint.lint", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileName": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "StrippedFileName(value: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileName", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileNameRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "StrippedFileNameRequest(file_path: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFileNames": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFileNames", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm" + ], + "documentation": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironment": { + "consumed_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironmentVars": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.environment" + ], + "documentation": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironmentVars", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.BashBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [], + "documentation": "The `bash` binary.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.get_bash" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.system_binaries.get_bash" + ] + }, + "pants.core.util_rules.system_binaries.BashBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_bash" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "BashBinaryRequest(search_path: 'SearchPath' = SearchPath(['/usr/bin', '/bin', '/usr/local/bin']))", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.system_binaries.get_bash" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPathRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Request to find a binary of a given name.\n\nIf `check_file_entries` is `True` a BinaryPathRequest will consider any entries in the\n`search_path` that are file paths in addition to traditional directory paths.\n\nIf a `test` is specified all binaries that are found will be executed with the test args and\nonly those binaries whose test executions exit with return code 0 will be retained.\nAdditionally, if test execution includes stdout content, that will be used to fingerprint the\nbinary path so that upgrades and downgrades can be detected. A reasonable test for many programs\nmight be `BinaryPathTest(args=[\"--version\"])` since it will both ensure the program runs and\nalso produce stdout text that changes upon upgrade or downgrade of the binary at the discovered\npath.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPathRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.go.subsystems.golang.setup_goroot", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPaths": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.engine.process" + ], + "documentation": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.go.subsystems.golang.setup_goroot", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShims": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.process" + ], + "documentation": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `bin_directory` added to\nPATH so that the binaries are available for execution.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShims", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.docker.util_rules.docker_binary.find_docker" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShimsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Request to create shims for one or more system binaries.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShimsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.docker.util_rules.docker_binary.find_docker" + ] + }, + "pants.core.util_rules.system_binaries.ChmodBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ChmodBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.DiffBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format" + ] + }, + "pants.core.util_rules.system_binaries.DiffBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "DiffBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format" + ] + }, + "pants.core.util_rules.system_binaries.GitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.GunzipBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "GunzipBinary(python: 'PythonBinary')", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GunzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip", + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.GunzipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "GunzipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GunzipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.MaybeGitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "pants.vcs.git.get_git_worktree" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MaybeGitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git", + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MkdirBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MkdirBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.OpenBinary": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "OpenBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_open" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.PythonBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.system_binaries.find_gunzip", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.core" + ], + "dependencies": [], + "documentation": "A Python3 interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nPython is usable for `@rule` scripting independently of `pants.backend.python`, but currently\nthirdparty dependencies are not supported, because PEX lives in that backend.\n\nTODO: Consider extracting PEX out into the core in order to support thirdparty dependencies.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "PythonBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "dependees": [ + "pants.backend.experimental.scala", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ReadlinkBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ] + }, + "pants.core.util_rules.system_binaries.TarBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TarBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "TarBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TouchBinary": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TouchBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_touch" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.UnzipBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "pants.jvm.classpath.loose_classfiles" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_unzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.UnzipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "UnzipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.ZipBinary": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.core.util_rules.system_binaries.find_zip_wrapper", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.find_zip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive" + ] + }, + "pants.core.util_rules.system_binaries.ZipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ZipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive" + ] + }, + "pants.engine.addresses.Addresses": { + "consumed_by_rules": [ + "pants.backend.project_info.dependees.dependees_goal", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.filter_targets.filter_targets", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.engine.addresses", + "name": "Addresses", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.project_info.dependees.map_addresses_to_dependees", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.addresses.UnparsedAddressInputs": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Raw addresses that have not been parsed yet.\n\nYou can convert these into fully normalized `Addresses` and `Targets` like this:\n\n await Get(Addresses, UnparsedAddressInputs([\"//:tgt1\", \"//:tgt2\"], owning_address=None)\n await Get(Targets, UnparsedAddressInputs([...], owning_address=Address(\"original\"))\n\nThis is intended for contexts where the user specifies addresses outside of the `dependencies`\nfield, such as through an option or a special field on a target that is not normal\n`dependencies`. You should not use this to resolve the `dependencies` field; use\n`await Get(Addresses, DependenciesRequest)` for that.\n\nIf the addresses are coming from a target's fields, set `owning_address` so that relative\nreferences like `:sibling` work properly.\n\nUnlike the `dependencies` field, this type does not work with `!` and `!!` ignores.\n\nSet `description_of_origin` to a value like \"CLI arguments\" or \"the `dependencies` field\nfrom {tgt.address}\". It is used for better error messages.", + "is_union": false, + "module": "pants.engine.addresses", + "name": "UnparsedAddressInputs", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ] + }, + "pants.engine.desktop.OpenFilesRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "OpenFilesRequest(files: Iterable[pathlib.PurePath], *, error_if_open_not_found: bool = True)", + "is_union": false, + "module": "pants.engine.desktop", + "name": "OpenFilesRequest", + "provider": "pants.engine.desktop", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.environment.EnvironmentRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Requests a subset of the variables set in the environment.\n\nRequesting only the relevant subset of the environment reduces invalidation caused by unrelated\nchanges.", + "is_union": false, + "module": "pants.engine.environment", + "name": "EnvironmentRequest", + "provider": "pants.engine.environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.subsystems.golang.setup_goroot", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.export.export", + "pants.core.goals.test.get_filtered_environment", + "pants.core.subsystems.python_bootstrap.python_bootstrap", + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ] + }, + "pants.engine.fs.CreateDigest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to create a Digest with the input FileContent and/or Directory values.\n\nThe engine will create any parent directories necessary, e.g. `FileContent('a/b/c.txt')` will\nresult in `a/`, `a/b`, and `a/b/c.txt` being created. You only need to use `Directory` to\ncreate an empty directory.\n\nThis does _not_ actually materialize the digest to the build root. You must use\n`engine.fs.Workspace` in a `@goal_rule` to save the resulting digest to disk.", + "is_union": false, + "module": "pants.engine.fs", + "name": "CreateDigest", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_analysis.generate_import_config", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.setup_py.generate_setup_py", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.engine.fs.DigestSubset": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to get a subset of a digest.\n\nExample:\n\n result = await Get(Digest, DigestSubset(original_digest, PathGlobs([\"subdir1\", \"f.txt\"]))", + "is_union": false, + "module": "pants.engine.fs", + "name": "DigestSubset", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.plugins.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.util_rules.dists.find_build_system", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "pants.engine.fs.DownloadFile": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Retrieve the contents of a file via an HTTP GET request or directly for local file:// URLs.\n\nTo compute the `expected_digest`, manually download the file, then run `shasum -a 256` to\ncompute the fingerprint and `wc -c` to compute the expected length of the downloaded file in\nbytes.", + "is_union": false, + "module": "pants.engine.fs", + "name": "DownloadFile", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.engine.fs.PathGlobs": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "PathGlobs(globs: 'Iterable[str]', glob_match_error_behavior: 'GlobMatchErrorBehavior' = , conjunction: 'GlobExpansionConjunction' = , description_of_origin: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.fs", + "name": "PathGlobs", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.util_rules.config_files.find_config_file", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ] + }, + "pants.engine.internals.graph.OwnersRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request for the owners of a set of file paths.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "OwnersRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.process.InteractiveProcess": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "InteractiveProcess(argv: 'Iterable[str]', *, env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), run_in_workspace: 'bool' = False, forward_signals_to_process: 'bool' = True, restartable: 'bool' = False, cleanup: 'bool | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, keep_sandboxes: 'KeepSandboxes | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "InteractiveProcess", + "provider": "pants.engine.process", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.core.goals.export.export", + "pants.core.goals.publish.run_publish", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.process.InteractiveProcessRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "InteractiveProcessRequest(process: 'Process', forward_signals_to_process: 'bool' = True, restartable: 'bool' = False)", + "is_union": false, + "module": "pants.engine.process", + "name": "InteractiveProcessRequest", + "provider": "pants.engine.process", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.process.Process": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.go.util_rules.sdk", + "pants.backend.google_cloud_function.python", + "pants.backend.helm.util_rules.tool", + "pants.backend.python", + "pants.backend.terraform.dependency_inference", + "pants.backend.terraform.tool", + "pants.engine.environment", + "pants.engine.target", + "pants.jvm.jdk_rules", + "pants.jvm.resolve.coursier_setup" + ], + "documentation": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "Process", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.terraform, pants.backend.shell, pants.core, pants.engine.process", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.subsystems.golang.setup_goroot", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactory": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "is_union": false, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactory", + "provider": "pants.core", + "returned_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback", + "pants.goal.stats_aggregator.construct_callback" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactoryRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A request for a particular WorkunitsCallbackFactory.", + "is_union": true, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactoryRequest", + "provider": "pants.engine.streaming_workunit_handler", + "returned_by_rules": [], + "union_members": [ + "AnonymousTelemetryCallbackFactoryRequest", + "StatsAggregatorCallbackFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.AllTargetsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Find all targets in the project.\n\nUse with either `AllUnexpandedTargets` or `AllTargets`.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ] + }, + "pants.engine.target.CoarsenedTargets": { + "consumed_by_rules": [ + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "The CoarsenedTarget roots of a transitive graph walk for some addresses.\n\nTo collect all reachable CoarsenedTarget members, use `def closure`.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargets", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.jvm.classpath.classpath" + ] + }, + "pants.engine.target.CoarsenedTargetsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to get CoarsenedTargets for input roots.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ] + }, + "pants.engine.target.DependenciesRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "DependenciesRequest(field: 'Dependencies', include_special_cased_deps: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.unittest.inject_chart_dependency_into_unittests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.project_info.dependees.map_addresses_to_dependees", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.jvm.package.war.package_war" + ] + }, + "pants.engine.target.FieldDefaultFactoryRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Registers a dynamic default for a Field.\n\nSee `FieldDefaults`.", + "is_union": true, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "JvmResolveFieldDefaultFactoryRequest", + "PythonResolveFieldDefaultFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldDefaultFactoryResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core" + ], + "documentation": "A wrapper for a function which computes the default value of a Field.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldSetsPerTargetRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "FieldSetsPerTargetRequest(field_set_superclass: 'Type[_FS]', targets: 'Iterable[Target]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target" + ] + }, + "pants.engine.target.GenerateSourcesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [], + "documentation": "A request to go from protocol sources -> a particular language.\n\nThis should be subclassed for each distinct codegen implementation. The subclasses must define\nthe class properties `input` and `output`. The subclass must also be registered via\n`UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest)`, for example.\n\nThe rule to actually implement the codegen should take the subclass as input, and it must\nreturn `GeneratedSources`.\n\nThe `exportable` attribute disables the use of this codegen by the `export-codegen` goal when\nset to False.\n\nFor example:\n\n class GenerateFortranFromAvroRequest:\n input = AvroSources\n output = FortranSources\n\n @rule\n def generate_fortran_from_avro(request: GenerateFortranFromAvroRequest) -> GeneratedSources:\n ...\n\n def rules():\n return [\n generate_fortran_from_avro,\n UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateDockerContextFiles", + "GenerateDockerfileRequest", + "GenerateFileSourceRequest", + "GenerateFilesFromShellCommandRequest", + "GenerateGoFromProtobufRequest", + "GenerateJavaFromProtobufRequest", + "GeneratePythonFromProtobufRequest", + "GeneratePythonFromSetuptoolsSCMRequest", + "GeneratePythonFromThriftRequest", + "GenerateResourceSourceRequest", + "GenerateScalaFromProtobufRequest", + "RelocateFilesViaCodegenRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.GenerateTargetsRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.plugin_development", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "GenerateTargetsRequest(generator: '_TargetGenerator', template_address: 'Address', template: 'dict[str, Any]', overrides: 'dict[str, dict[Address, dict[str, Any]]]')", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateFromPantsRequirementsRequest", + "GenerateFromPipenvRequirementsRequest", + "GenerateFromPoetryRequirementsRequest", + "GenerateFromPythonRequirementsRequest", + "GenerateTargetsFromGoModRequest", + "GenerateTargetsFromPexBinaries" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.GeneratedSources": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.python", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "GeneratedSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.shell.shell_command.run_shell_command", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.relocate_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.GeneratedTargets": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.base.build_root", + "pants.engine.fs", + "pants.engine.unions" + ], + "documentation": "A mapping of the address of generated targets to the targets themselves.", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedTargets", + "provider": "pants.backend.experimental.go, pants.backend.plugin_development, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.HydrateSourcesRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "HydrateSourcesRequest(field: 'SourcesField', *, for_sources_types: 'Iterable[type[SourcesField]]' = (,), enable_codegen: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "HydrateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.InferDependenciesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "A request to infer dependencies by analyzing source files.\n\nTo set up a new inference implementation, subclass this class. Set the class property\n`infer_from` to the type of `SourcesField` you are able to infer from, such as\n`FortranSources`. This will cause the class, and any subclass, to use your inference\nimplementation. Note that there cannot be more than one implementation for a particular\n`SourcesField` class. Register this subclass with\n`UnionRule(InferDependenciesRequest, InferFortranDependencies)`, for example.\n\nThen, create a rule that takes the subclass as a parameter and returns `InferredDependencies`.\n\nFor example:\n\n class InferFortranDependencies(InferDependenciesRequest):\n from_sources = FortranSources\n\n @rule\n def infer_fortran_dependencies(request: InferFortranDependencies) -> InferredDependencies:\n hydrated_sources = await Get(HydratedSources, HydrateSources(request.sources_field))\n ...\n return InferredDependencies(...)\n\n def rules():\n return [\n infer_fortran_dependencies,\n UnionRule(InferDependenciesRequest, InferFortranDependencies),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "InferDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "InferConftestDependencies", + "InferGoPackageDependenciesRequest", + "InferGoProtobufDependenciesRequest", + "InferHelmChartDependenciesRequest", + "InferInitDependencies", + "InferJavaSourceDependencies", + "InferKotlinSourceDependencies", + "InferProtobufDependencies", + "InferPythonImportDependencies", + "InferScalaSourceDependencies", + "InferShellDependencies", + "InferTerraformModuleDependenciesRequest", + "InferThriftDependencies" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.InferredDependencies": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "InferredDependencies(dependencies: 'Iterable[Address]') -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.infer_go_dependencies", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.InjectDependenciesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to inject dependencies, in addition to those explicitly provided.\n\nTo set up a new injection, subclass this class. Set the class property `inject_for` to the\ntype of `Dependencies` field you want to inject for, such as `FortranDependencies`. This will\ncause the class, and any subclass, to have the injection. Register this subclass with\n`UnionRule(InjectDependenciesRequest, InjectFortranDependencies)`, for example.\n\nThen, create a rule that takes the subclass as a parameter and returns `InjectedDependencies`.\n\nFor example:\n\n class FortranDependencies(Dependencies):\n pass\n\n class InjectFortranDependencies(InjectDependenciesRequest):\n inject_for = FortranDependencies\n\n @rule\n async def inject_fortran_dependencies(\n request: InjectFortranDependencies\n ) -> InjectedDependencies:\n addresses = await Get(\n Addresses, UnparsedAddressInputs([\"//:injected\"], owning_address=None)\n )\n return InjectedDependencies(addresses)\n\n def rules():\n return [\n *collect_rules(),\n UnionRule(InjectDependenciesRequest, InjectFortranDependencies),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "InjectDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "InjectApacheThriftPythonDependencies", + "InjectDockerDependencies", + "InjectGoBinaryMainDependencyRequest", + "InjectGoThirdPartyPackageDependenciesRequest", + "InjectHelmUnitTestChartDependencyRequest", + "InjectKotlinJunitTestDependencyRequest", + "InjectKotlinRuntimeDependencyRequest", + "InjectPexBinaryEntryPointDependency", + "InjectProtobufJavaRuntimeDependencyRequest", + "InjectPythonCloudFunctionHandlerDependency", + "InjectPythonDistributionDependencies", + "InjectPythonLambdaHandlerDependency", + "InjectPythonProtobufDependencies", + "InjectScalaLibraryDependencyRequest", + "InjectScalaPBRuntimeDependencyRequest", + "InjectScalaPluginDependenciesRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.InjectedDependencies": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.target", + "name": "InjectedDependencies", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.google_cloud_function.python, pants.backend.python", + "returned_by_rules": [ + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.inject_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies", + "pants.backend.codegen.protobuf.scala.dependency_inference.inject_scalapb_runtime_dependency", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies", + "pants.backend.go.target_type_rules.inject_go_binary_main_dependency", + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.unittest.inject_chart_dependency_into_unittests", + "pants.backend.kotlin.dependency_inference.rules.inject_kotlin_stdlib_dependency", + "pants.backend.kotlin.test.junit.inject_kotlin_junit_dependency", + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies", + "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.inject_scala_plugin_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.PluginField": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.python", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": null, + "is_union": true, + "module": "pants.engine.target", + "name": "PluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "PythonRepositoriesField", + "SkipTwineUploadField", + "UsesMyPycField" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.SourcesPathsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to resolve the file names of the `source`/`sources` field.\n\nUse via `Get(SourcesPaths, SourcesPathRequest(tgt.get(SourcesField))`.\n\nThis is faster than `Get(HydratedSources, HydrateSourcesRequest)` because it does not snapshot\nthe files and it only resolves the file names.\n\nThis does not consider codegen, and only captures the files from the field. Use\n`HydrateSourcesRequest` to use codegen.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPathsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettings": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings", + "pants.backend.codegen.thrift.target_types.generator_settings", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.scala.target_types.scala_settings_request", + "pants.backend.shell.target_types.generator_settings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.TargetFilesGeneratorSettingsRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "An optional union to provide dynamic settings for a `TargetFilesGenerator`.\n\nSee `TargetFilesGenerator`.", + "is_union": true, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettingsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GeneratorSettingsRequest", + "GeneratorSettingsRequest", + "PythonFilesGeneratorSettingsRequest", + "ScalaSettingsRequest", + "ShellGeneratorSettingsRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.TargetRootsToFieldSetsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "TargetRootsToFieldSetsRequest(field_set_superclass: 'Type[_FS]', *, goal_description: 'str', no_applicable_targets_behavior: 'NoApplicableTargetsBehavior', expect_single_field_set: 'bool' = False, shard: 'int' = 0, num_shards: 'int' = -1) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetRootsToFieldSetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.run_publish", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.target.Targets": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "A heterogeneous collection of instances of Target subclasses.\n\nWhile every element will be a subclass of `Target`, there may be many different `Target` types\nin this collection, e.g. some `FileTarget` and some `PythonTestTarget`.\n\nOften, you will want to filter out the relevant targets by looking at what fields they have\nregistered, e.g.:\n\n valid_tgts = [tgt for tgt in tgts if tgt.has_fields([Compatibility, PythonSources])]\n\nYou should not check the Target's actual type because this breaks custom target types;\nfor example, prefer `tgt.has_field(PythonTestsSourcesField)` to\n`isinstance(tgt, PythonTestsTarget)`.", + "is_union": false, + "module": "pants.engine.target", + "name": "Targets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.engine.target.TransitiveTargetsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to get the transitive dependencies of the input roots.\n\nResolve the transitive targets with `await Get(TransitiveTargets,\nTransitiveTargetsRequest([addr1, addr2])`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.paths", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.UnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek" + ], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.backend.python", + "pants.core" + ], + "dependencies": [], + "documentation": "Like `Targets`, but will not replace target generators with their generated targets (e.g.\nreplace `python_sources` \"BUILD targets\" with generated `python_source` \"file targets\").", + "is_union": false, + "module": "pants.engine.target", + "name": "UnexpandedTargets", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.go_mod.find_nearest_go_mod", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.project_info.peek.peek", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.engine.target.ValidateDependenciesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to validate dependencies after they have been computed.\n\nAn implementing rule should raise an exception if dependencies are invalid.", + "is_union": true, + "module": "pants.engine.target", + "name": "ValidateDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "PythonValidateDependenciesRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.ValidatedDependencies": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "ValidatedDependencies()", + "is_union": false, + "module": "pants.engine.target", + "name": "ValidatedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.WrappedTargetRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Used with `WrappedTarget` to get the Target corresponding to an address.\n\n`description_of_origin` is used for error messages when the address does not actually exist. If\nyou are confident this cannot happen, set the string to something like ``.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.inject_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies", + "pants.backend.codegen.protobuf.scala.dependency_inference.inject_scalapb_runtime_dependency", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary", + "pants.backend.go.target_type_rules.inject_go_binary_main_dependency", + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.inject_kotlin_stdlib_dependency", + "pants.backend.kotlin.test.junit.inject_kotlin_junit_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.inject_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.core.goals.run.run" + ] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetry": { + "consumed_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetry", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_anonymous_telemetry" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetryCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetryCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorSubsystem": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_stats" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.bsp.compile.BSPClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A wrapper around a `ClasspathEntryRequest` which notifies the BSP client on completion.\n\nTODO: Because this struct contains a `task_id`, messages will re-render in every run, even\nthough the underlying computation does not re-run. See #15426 for an alternative.", + "is_union": false, + "module": "pants.jvm.bsp.compile", + "name": "BSPClasspathEntryRequest", + "provider": "pants.jvm.bsp.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.classpath.Classpath": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.key" + ], + "documentation": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "Classpath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.classpath" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.classpath.LooseClassfiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.scala", + "pants.core", + "pants.engine.process", + "pants.jvm.compile" + ], + "documentation": "The contents of a classpath entry as loose classfiles.\n\nNote that `ClasspathEntry` and `Classpath` both guarantee that they contain JAR files, and so\ncreating loose classfiles from them involves extracting their entry.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "LooseClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.compile.ClasspathDependenciesRequest": { + "consumed_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "ClasspathDependenciesRequest(request: 'ClasspathEntryRequest', ignore_generated: 'bool' = False)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathDependenciesRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.ClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac", + "pants.core", + "pants.engine.fs", + "pants.engine.process", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.jvm.compile", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.jvm.compile.required_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.classpath.classpath", + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.compile.ClasspathEntryRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "A request for a ClasspathEntry for the given CoarsenedTarget and resolve.\n\nTODO: Move to `classpath.py`.", + "is_union": true, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [ + "CompileJavaSourceRequest", + "CompileKotlinSourceRequest", + "CompileScalaSourceRequest", + "CoursierFetchRequest", + "DeployJarClasspathEntryRequest", + "JvmResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.compile.ClasspathEntryRequestFactory": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.unions" + ], + "documentation": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.calculate_jvm_request_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.compile.ClasspathEntryRequests": { + "consumed_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java, pants.jvm.compile", + "returned_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntries": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.compile.required_classfiles" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process", + "pants.jvm.bsp.compile", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resources.assemble_resources_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmTypeProvidingTargets": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AvailableThirdPartyArtifacts": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.ThirdPartySymbolMapping": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "The third party symbols provided by all `jvm_artifact` targets.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.symbol_mapper.FirstPartyMappingRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "An entry point for a specific implementation of mapping JVM package names to owning targets.\n\nAll implementations will be merged together.\n\nThe addresses should all be file addresses, rather than BUILD addresses.", + "is_union": true, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "FirstPartyMappingRequest", + "provider": "pants.jvm.dependency_inference.symbol_mapper", + "returned_by_rules": [], + "union_members": [ + "FirstPartyJavaTargetsMappingRequest", + "FirstPartyKotlinTargetsMappingRequest", + "FirstPartyScalaTargetsMappingRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMap": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "The first party symbols provided by a single inference implementation.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMap", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMapping": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.engine.unions" + ], + "documentation": "The merged first and third party symbols provided by all inference implementations.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.GenerateJvmLockfile": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.unions", + "pants.jvm.goals.lockfile", + "pants.jvm.resolve.common" + ], + "documentation": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', artifacts: 'ArtifactRequirements')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.goals.lockfile.KnownJVMUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "KnownJVMUserResolveNamesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.RequestedJVMUserResolveNames": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "RequestedJVMUserResolveNames", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook for backends to validate the artifact requirements requested for a resolve.\n\nThe main user is the Scala backend which will ensure scala-library is present in the resolve.", + "is_union": true, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [ + "ValidateResolveHasScalaRuntimeRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "documentation": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile._ValidateJvmArtifactsRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "_ValidateJvmArtifactsRequest(artifacts: 'ArtifactRequirements', resolve_name: 'str')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "_ValidateJvmArtifactsRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.jdk_rules.InternalJdk": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [], + "documentation": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "InternalJdk", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.internal_jdk" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jdk_rules.JdkEnvironment": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process", + "pants.jvm.jdk_rules" + ], + "documentation": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int', global_jvm_options: 'tuple[str, ...]', java_home_command: 'str')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkEnvironment", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JdkRequest": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "Request for a JDK with a specific major version, or a default (`--jvm-jdk` or System).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkRequest", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JvmProcess": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.jvm_process" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "JvmProcess(jdk: 'JdkEnvironment', argv: 'Iterable[str]', classpath_entries: 'Iterable[str]', input_digest: 'Digest', description: 'str', level: 'LogLevel' = , extra_jvm_options: 'Iterable[str] | None' = None, extra_nailgun_keys: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_env: 'Mapping[str, str] | None' = None, timeout_seconds: 'int | float | None' = None, platform: 'Platform | None' = None, cache_scope: 'ProcessCacheScope | None' = None, use_nailgun: 'bool' = True)", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JvmProcess", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.jdk_rules.Nailgun": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "documentation": "Nailgun(classpath_entry: 'ClasspathEntry')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "Nailgun", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.deploy_jar_classpath" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarClasspathEntryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarFieldSet": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "DeployJarFieldSet(address: 'Address', main_class: pants.jvm.target_types.JvmMainClassNameField, output_path: pants.core.goals.package.OutputPathField, dependencies: pants.engine.target.Dependencies, jdk_version: pants.jvm.target_types.JvmJdkField)", + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarFieldSet", + "provider": "pants.backend.experimental.java, pants.jvm.package.deploy_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.jvm.package.war.PackageWarFileFieldSet": { + "consumed_by_rules": [ + "pants.jvm.package.war.package_war" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PackageWarFileFieldSet(address: 'Address', output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmWarDependenciesField, descriptor: pants.jvm.target_types.JvmWarDescriptorAddressField, content: pants.jvm.target_types.JvmWarContentField)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "PackageWarFileFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.jvm.package.war.RenderWarContentRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "RenderWarContentRequest(content: pants.jvm.target_types.JvmWarContentField)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarContentRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderWarDeploymentDescriptorRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "RenderWarDeploymentDescriptorRequest(descriptor: pants.jvm.target_types.JvmWarDescriptorAddressField, owning_address: pants.build_graph.address.Address)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarDeploymentDescriptorRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarContent": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.addresses", + "pants.jvm.package.war" + ], + "documentation": "RenderedWarContent(digest: Digest)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarContent", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarDeploymentDescriptor": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.engine.target", + "pants.jvm.package.war" + ], + "documentation": "RenderedWarDeploymentDescriptor(digest: Digest)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.resolve.common.ArtifactRequirements": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.build_graph.address", + "pants.core" + ], + "documentation": "An ordered list of Coordinates used as requirements.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "ArtifactRequirements", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.common", + "returned_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.common.GatherJvmCoordinatesRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A request to turn strings of coordinates (`group:artifact:version`) and/or addresses to\n`jvm_artifact` targets into `ArtifactRequirements`.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "GatherJvmCoordinatesRequest", + "provider": "pants.jvm.resolve.common", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierFetchRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierFetchRequest", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierLockfileEntry": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A single artifact entry from a Coursier-resolved lockfile.\n\nThese fields are nearly identical to the JSON objects from the\n\"dependencies\" entries in Coursier's --json-output-file format.\nBut unlike Coursier's JSON report, a CoursierLockfileEntry\nincludes the content-address of the artifact fetched by Coursier\nand ingested by Pants.\n\nFor example, a Coursier JSON report dependency entry might look like this:\n\n```\n{\n \"coord\": \"com.chuusai:shapeless_2.13:2.3.3\",\n \"file\": \"/home/USER/.cache/coursier/v1/https/repo1.maven.org/maven2/com/chuusai/shapeless_2.13/2.3.3/shapeless_2.13-2.3.3.jar\",\n \"directDependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ],\n \"dependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ]\n}\n```\n\nThe equivalent CoursierLockfileEntry would look like this:\n\n```\nCoursierLockfileEntry(\n coord=\"com.chuusai:shapeless_2.13:2.3.3\", # identical\n file_name=\"shapeless_2.13-2.3.3.jar\" # PurePath(entry[\"file\"].name)\n direct_dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n file_digest=FileDigest(fingerprint=, ...),\n)\n```\n\nThe fields `remote_url` and `pants_address` are set by Pants if the `coord` field matches a\n`jvm_artifact` that had either the `url` or `jar` fields set.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierLockfileEntry", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolveInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.resolve.common" + ], + "documentation": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolvedLockfile": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.engine.process", + "pants.jvm.resolve.common", + "pants.jvm.resolve.key" + ], + "documentation": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ResolvedClasspathEntries": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "A collection of resolved classpath entries.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspath": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "builtins", + "pants.jvm.resolve.common", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "A fully fetched and merged classpath for running a JVM tool.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspathRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A request to set up the classpath for a JVM tool by fetching artifacts and merging the\nclasspath.\n\n:param prefix: if set, should be a relative directory that will\n be prepended to every classpath element. This is useful for\n keeping all classpath elements isolated under a single directory\n in a process invocation, where other inputs on the process's\n root directory might interfere with un-prefixed classpath\n entries (or vice versa).", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspathRequest", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_setup.Coursier": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "Coursier", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.coursier_setup.CoursierFetchProcess": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "CoursierFetchProcess(args: 'Tuple[str, ...]', input_digest: 'Digest', output_directories: 'Tuple[str, ...]', output_files: 'Tuple[str, ...]', description: 'str')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierFetchProcess", + "provider": "pants.jvm.resolve.coursier_setup", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_setup.CoursierSubsystem": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.jvm_tool.GenerateJvmLockfileFromTool": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.java.dependency_inference.java_parser", + "pants.backend.java.lint.google_java_format.rules", + "pants.backend.kotlin.dependency_inference.kotlin_parser", + "pants.backend.kotlin.lint.ktlint.rules", + "pants.backend.scala.dependency_inference.scala_parser", + "pants.backend.scala.lint.scalafmt.rules", + "pants.backend.scala.test.scalatest", + "pants.jvm.test.junit" + ], + "documentation": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "is_union": false, + "module": "pants.jvm.resolve.jvm_tool", + "name": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.key.CoursierResolveKey": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "documentation": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.key", + "name": "CoursierResolveKey", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.key", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resources.JvmResourcesRequest": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resources", + "name": "JvmResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.subsystems.JvmSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.inject_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.inject_scalapb_runtime_dependency", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.inject_kotlin_stdlib_dependency", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.kotlin.test.junit.inject_kotlin_junit_dependency", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.target_types.jvm_resolve_field_default_factory", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.subsystems", + "name": "JvmSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_jvm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.target_types.JvmResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmJdkField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmJdkField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmResolveField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmResolveField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestFieldSet": { + "consumed_by_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_adapter_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "JunitTestFieldSet(address: 'Address', sources: 'JunitTestSourceField', jdk_version: 'JvmJdkField', dependencies: 'Dependencies')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.test.junit.TestSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.target", + "pants.jvm.test.junit" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetup", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.test.junit.TestSetupRequest": { + "consumed_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "TestSetupRequest(field_set: 'JunitTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetupRequest", + "provider": "pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.util_rules.ExtractFileDigest": { + "consumed_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "ExtractFileDigest(digest: 'Digest', file_path: 'str')", + "is_union": false, + "module": "pants.jvm.util_rules", + "name": "ExtractFileDigest", + "provider": "pants.jvm.util_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.option.global_options.GlobalOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.project_info.paths.paths", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.run.run", + "pants.core.goals.tailor.tailor", + "pants.core.util_rules.distdir.get_distdir", + "pants.jvm.jdk_rules.jvm_process" + ], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.option.global_options", + "name": "GlobalOptions", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.scope.Scope": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "An options scope.", + "is_union": false, + "module": "pants.option.scope", + "name": "Scope", + "provider": "pants.option.scope", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_scope_", + "construct_scope_anonymous_telemetry", + "construct_scope_apache_thrift", + "construct_scope_autoflake", + "construct_scope_bandit", + "construct_scope_black", + "construct_scope_buf", + "construct_scope_check", + "construct_scope_count_loc", + "construct_scope_coursier", + "construct_scope_coverage_py", + "construct_scope_debug_adapter", + "construct_scope_debugpy", + "construct_scope_dependees", + "construct_scope_dependencies", + "construct_scope_docformatter", + "construct_scope_docker", + "construct_scope_dockerfile_parser", + "construct_scope_download_terraform", + "construct_scope_experimental_bsp", + "construct_scope_export", + "construct_scope_export_codegen", + "construct_scope_filedeps", + "construct_scope_filter", + "construct_scope_flake8", + "construct_scope_fmt", + "construct_scope_generate_lockfiles", + "construct_scope_go_test", + "construct_scope_gofmt", + "construct_scope_golang", + "construct_scope_google_java_format", + "construct_scope_grpc_python_plugin", + "construct_scope_hadolint", + "construct_scope_helm", + "construct_scope_helm_unittest", + "construct_scope_ipython", + "construct_scope_isort", + "construct_scope_java_infer", + "construct_scope_javac", + "construct_scope_junit", + "construct_scope_jvm", + "construct_scope_kotlin", + "construct_scope_kotlin_infer", + "construct_scope_kotlinc", + "construct_scope_ktlint", + "construct_scope_lambdex", + "construct_scope_lint", + "construct_scope_list", + "construct_scope_mypy", + "construct_scope_mypy_protobuf", + "construct_scope_package", + "construct_scope_paths", + "construct_scope_peek", + "construct_scope_pex", + "construct_scope_pex_binary_defaults", + "construct_scope_pex_cli", + "construct_scope_poetry", + "construct_scope_protoc", + "construct_scope_publish", + "construct_scope_py_constraints", + "construct_scope_pylint", + "construct_scope_pyoxidizer", + "construct_scope_pytest", + "construct_scope_python", + "construct_scope_python_bootstrap", + "construct_scope_python_infer", + "construct_scope_python_native_code", + "construct_scope_python_protobuf", + "construct_scope_python_repos", + "construct_scope_python_thrift", + "construct_scope_pyupgrade", + "construct_scope_regex_lint", + "construct_scope_repl", + "construct_scope_roots", + "construct_scope_run", + "construct_scope_scala", + "construct_scope_scala_infer", + "construct_scope_scalac", + "construct_scope_scalafmt", + "construct_scope_scalapb", + "construct_scope_scalatest", + "construct_scope_scc", + "construct_scope_setup_py_generation", + "construct_scope_setuptools", + "construct_scope_setuptools_scm", + "construct_scope_shell_setup", + "construct_scope_shellcheck", + "construct_scope_shfmt", + "construct_scope_source", + "construct_scope_stats", + "construct_scope_subprocess_environment", + "construct_scope_tailor", + "construct_scope_terraform_fmt", + "construct_scope_terraform_hcl2_parser", + "construct_scope_terraform_validate", + "construct_scope_test", + "construct_scope_thrift", + "construct_scope_twine", + "construct_scope_update_build_files", + "construct_scope_yapf" + ] + }, + "pants.source.source_root.AllSourceRoots": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependees": [ + "pants.backend.project_info", + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.fs" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "AllSourceRoots", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.all_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.OptionalSourceRoot": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.fs", + "pants.source.source_root" + ], + "documentation": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.OptionalSourceRootsResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.source.source_root" + ], + "documentation": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRoot": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.source.source_root" + ], + "documentation": "SourceRoot(path: 'str')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ] + }, + "pants.source.source_root.SourceRootConfig": { + "consumed_by_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootConfig", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.SourceRootRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_source_root" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Find the source root for the given path.\n\nIf you have multiple paths, particularly if many of them share parent directories, you'll get\nbetter performance with a `SourceRootsRequest` (see above) instead.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.SourceRootsRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_roots" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Find the source roots for the given files and/or dirs.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRootsResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.source.source_root" + ], + "documentation": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ] + }, + "pants.vcs.git.GitWorktreeRequest": { + "consumed_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "GitWorktreeRequest(gitdir: 'PathLike[str] | None' = None, subdir: 'PathLike[str] | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "GitWorktreeRequest", + "provider": "pants.vcs.git", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + }, + "pants.vcs.git.MaybeGitWorktree": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.vcs.git" + ], + "documentation": "MaybeGitWorktree(git_worktree: 'GitWorktree | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "MaybeGitWorktree", + "provider": "pants.core", + "returned_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + } + }, + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "", + "check", + "filter" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "filter", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "filter" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "filter" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.core" + }, + "experimental-explorer": { + "consumed_scopes": [], + "description": "Run the Pants Explorer Web UI server.", + "is_implemented": true, + "name": "experimental-explorer", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.backend.docker" + }, + "filedeps": { + "consumed_scopes": [ + "", + "filedeps", + "filter" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter", + "provider": "pants.backend.project_info" + }, + "fmt": { + "consumed_scopes": [ + "", + "filter", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "generate-lockfiles" + ], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": [ + "", + "filter", + "lint" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": [ + "", + "filter", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": [ + "", + "filter", + "paths" + ], + "description": "List the paths between two addresses.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": [ + "", + "filter", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": [ + "", + "filter", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "filter", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "filter", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "debug-adapter", + "filter", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": [ + "", + "filter", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "debug-adapter", + "filter", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "filter", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.13/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_rule_info": { + "construct_scope_": { + "description": null, + "documentation": "Options to control the overall behavior of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_", + "output_type": "GlobalOptions", + "provider": "pants.core" + }, + "construct_scope_anonymous_telemetry": { + "description": null, + "documentation": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + }, + "construct_scope_apache_thrift": { + "description": null, + "documentation": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_autoflake": { + "description": null, + "documentation": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_autoflake", + "output_type": "Autoflake", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "construct_scope_bandit": { + "description": null, + "documentation": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_bandit", + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + }, + "construct_scope_black": { + "description": null, + "documentation": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_black", + "output_type": "Black", + "provider": "pants.core" + }, + "construct_scope_buf": { + "description": null, + "documentation": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buf", + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "construct_scope_check": { + "description": null, + "documentation": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_check", + "output_type": "CheckSubsystem", + "provider": "pants.core" + }, + "construct_scope_count_loc": { + "description": null, + "documentation": "Count lines of code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_count_loc", + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_coursier": { + "description": null, + "documentation": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coursier", + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_coverage_py": { + "description": null, + "documentation": "Configuration for Python test coverage measurement.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_debug_adapter": { + "description": null, + "documentation": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debug_adapter", + "output_type": "DebugAdapterSubsystem", + "provider": "pants.core" + }, + "construct_scope_debugpy": { + "description": null, + "documentation": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debugpy", + "output_type": "DebugPy", + "provider": "pants.backend.python" + }, + "construct_scope_dependees": { + "description": null, + "documentation": "List all targets that depend on any of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependees", + "output_type": "DependeesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_dependencies": { + "description": null, + "documentation": "List the dependencies of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependencies", + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_docformatter": { + "description": null, + "documentation": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docformatter", + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + }, + "construct_scope_docker": { + "description": null, + "documentation": "Options for interacting with Docker.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docker", + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + }, + "construct_scope_dockerfile_parser": { + "description": null, + "documentation": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + }, + "construct_scope_download_terraform": { + "description": null, + "documentation": "Terraform (https://terraform.io)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_experimental_bsp": { + "description": null, + "documentation": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_bsp", + "output_type": "BSPGoal", + "provider": "pants.core" + }, + "construct_scope_export": { + "description": null, + "documentation": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export", + "output_type": "ExportSubsystem", + "provider": "pants.core" + }, + "construct_scope_export_codegen": { + "description": null, + "documentation": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_type": "ExportCodegenSubsystem", + "provider": "pants.backend.docker" + }, + "construct_scope_filedeps": { + "description": null, + "documentation": "List all source and BUILD files a target depends on.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filedeps", + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_filter": { + "description": null, + "documentation": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filter", + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_flake8": { + "description": null, + "documentation": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_flake8", + "output_type": "Flake8", + "provider": "pants.backend.python.lint.flake8" + }, + "construct_scope_fmt": { + "description": null, + "documentation": "Autoformat source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fmt", + "output_type": "FmtSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_lockfiles": { + "description": null, + "documentation": "Generate lockfiles for Python third-party dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_go_test": { + "description": null, + "documentation": "Options for Go tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_test", + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_gofmt": { + "description": null, + "documentation": "Gofmt-specific options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_gofmt", + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_golang": { + "description": null, + "documentation": "Options for Golang support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_golang", + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_google_java_format": { + "description": null, + "documentation": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "construct_scope_grpc_python_plugin": { + "description": null, + "documentation": "The gRPC Protobuf plugin for Python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_hadolint": { + "description": null, + "documentation": "A linter for Dockerfiles.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_hadolint", + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + }, + "construct_scope_helm": { + "description": null, + "documentation": "The Helm command line (https://helm.sh)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm", + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_unittest": { + "description": null, + "documentation": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_unittest", + "output_type": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_ipython": { + "description": null, + "documentation": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ipython", + "output_type": "IPython", + "provider": "pants.backend.python" + }, + "construct_scope_isort": { + "description": null, + "documentation": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_isort", + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + }, + "construct_scope_java_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_java_infer", + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_javac": { + "description": null, + "documentation": "The javac Java source compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_javac", + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_junit": { + "description": null, + "documentation": "The JUnit test framework (https://junit.org)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_junit", + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_jvm": { + "description": null, + "documentation": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jvm", + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_kotlin": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin", + "output_type": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlin_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Kotlin targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin_infer", + "output_type": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlinc": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlinc", + "output_type": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_ktlint": { + "description": null, + "documentation": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ktlint", + "output_type": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "construct_scope_lambdex": { + "description": null, + "documentation": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lambdex", + "output_type": "Lambdex", + "provider": "pants.backend.awslambda.python" + }, + "construct_scope_lint": { + "description": null, + "documentation": "Run all linters and/or formatters in check mode.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lint", + "output_type": "LintSubsystem", + "provider": "pants.core" + }, + "construct_scope_list": { + "description": null, + "documentation": "Lists all targets matching the file or target arguments.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_list", + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_mypy": { + "description": null, + "documentation": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy", + "output_type": "MyPy", + "provider": "pants.backend.python.typecheck.mypy" + }, + "construct_scope_mypy_protobuf": { + "description": null, + "documentation": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_package": { + "description": null, + "documentation": "Create a distributable package.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_package", + "output_type": "PackageSubsystem", + "provider": "pants.core" + }, + "construct_scope_paths": { + "description": null, + "documentation": "List the paths between two addresses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_paths", + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_peek": { + "description": null, + "documentation": "Display BUILD target info", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_peek", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_pex": { + "description": null, + "documentation": "How Pants uses Pex to run Python subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex", + "output_type": "PexRuntimeEnvironment", + "provider": "pants.core" + }, + "construct_scope_pex_binary_defaults": { + "description": null, + "documentation": "Default settings for creating PEX executables.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + }, + "construct_scope_pex_cli": { + "description": null, + "documentation": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_type": "PexCli", + "provider": "pants.core" + }, + "construct_scope_poetry": { + "description": null, + "documentation": "Used to generate lockfiles for third-party Python dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_poetry", + "output_type": "PoetrySubsystem", + "provider": "pants.backend.docker" + }, + "construct_scope_protoc": { + "description": null, + "documentation": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protoc", + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_publish": { + "description": null, + "documentation": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_publish", + "output_type": "PublishSubsystem", + "provider": "pants.core" + }, + "construct_scope_py_constraints": { + "description": null, + "documentation": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "construct_scope_pylint": { + "description": null, + "documentation": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pylint", + "output_type": "Pylint", + "provider": "pants.backend.python.lint.pylint" + }, + "construct_scope_pyoxidizer": { + "description": null, + "documentation": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "construct_scope_pytest": { + "description": null, + "documentation": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pytest", + "output_type": "PyTest", + "provider": "pants.backend.python" + }, + "construct_scope_python": { + "description": null, + "documentation": "Options for Pants's Python backend.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python", + "output_type": "PythonSetup", + "provider": "pants.core" + }, + "construct_scope_python_bootstrap": { + "description": null, + "documentation": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_infer", + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_python_native_code": { + "description": null, + "documentation": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_type": "PythonNativeCode", + "provider": "pants.core" + }, + "construct_scope_python_protobuf": { + "description": null, + "documentation": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.13/docs/protobuf-python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_python_repos": { + "description": null, + "documentation": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_repos", + "output_type": "PythonRepos", + "provider": "pants.core" + }, + "construct_scope_python_thrift": { + "description": null, + "documentation": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_pyupgrade": { + "description": null, + "documentation": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_type": "PyUpgrade", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "construct_scope_regex_lint": { + "description": null, + "documentation": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_repl": { + "description": null, + "documentation": "Open a REPL with the specified code loadable.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_repl", + "output_type": "ReplSubsystem", + "provider": "pants.core" + }, + "construct_scope_roots": { + "description": null, + "documentation": "List the repo's registered source roots.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_roots", + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_run": { + "description": null, + "documentation": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_run", + "output_type": "RunSubsystem", + "provider": "pants.core" + }, + "construct_scope_scala": { + "description": null, + "documentation": "Scala programming language", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala", + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scala_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalac": { + "description": null, + "documentation": "The Scala compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalac", + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalafmt": { + "description": null, + "documentation": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "construct_scope_scalapb": { + "description": null, + "documentation": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalapb", + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "construct_scope_scalatest": { + "description": null, + "documentation": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalatest", + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scc": { + "description": null, + "documentation": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scc", + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + }, + "construct_scope_setup_py_generation": { + "description": null, + "documentation": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools": { + "description": null, + "documentation": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools", + "output_type": "Setuptools", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools_scm": { + "description": null, + "documentation": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools_scm", + "output_type": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_shell_setup": { + "description": null, + "documentation": "Options for Pants's Shell support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + }, + "construct_scope_shellcheck": { + "description": null, + "documentation": "A linter for shell scripts.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + }, + "construct_scope_shfmt": { + "description": null, + "documentation": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shfmt", + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + }, + "construct_scope_source": { + "description": null, + "documentation": "Configuration for roots of source trees.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_source", + "output_type": "SourceRootConfig", + "provider": "pants.core" + }, + "construct_scope_stats": { + "description": null, + "documentation": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_stats", + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + }, + "construct_scope_subprocess_environment": { + "description": null, + "documentation": "Environment settings for forked subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + }, + "construct_scope_tailor": { + "description": null, + "documentation": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_tailor", + "output_type": "TailorSubsystem", + "provider": "pants.core" + }, + "construct_scope_terraform_fmt": { + "description": null, + "documentation": "Terraform fmt options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_hcl2_parser": { + "description": null, + "documentation": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_validate": { + "description": null, + "documentation": "Terraform validate options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_test": { + "description": null, + "documentation": "Run tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_test", + "output_type": "TestSubsystem", + "provider": "pants.core" + }, + "construct_scope_thrift": { + "description": null, + "documentation": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_thrift", + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_twine": { + "description": null, + "documentation": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_twine", + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_update_build_files": { + "description": null, + "documentation": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.13/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_yapf": { + "description": null, + "documentation": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yapf", + "output_type": "Yapf", + "provider": "pants.core" + }, + "pants.backend.awslambda.python.rules.package_python_awslambda": { + "description": "Create Python AWS Lambda", + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonAwsLambdaFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.awslambda.python.rules.package_python_awslambda", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency": { + "description": "Inferring dependency from the python_awslambda `handler` field", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonLambdaHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.awslambda.python.target_types.inject_lambda_handler_dependency", + "output_type": "InjectedDependencies", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler": { + "description": "Determining the handler for a `python_awslambda` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonAwsHandlerRequest" + ], + "name": "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "output_type": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.codegen.export_codegen_goal.export_codegen": { + "description": "`export-codegen` goal", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "FilteredTargets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_type": "ExportCodegen", + "provider": "pants.backend.docker" + }, + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf": { + "description": "Generate Go source files from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.infer_go_dependencies": { + "description": "Infer dependencies on Protobuf sources for first-party Go packages", + "documentation": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoProtobufDependenciesRequest", + "GoProtobufImportPathMapping" + ], + "name": "pants.backend.codegen.protobuf.go.rules.infer_go_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets": { + "description": "Map import paths for all Go Protobuf targets.", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_type": "GoProtobufImportPathMapping", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": [ + "GoCodegenBuildProtobufRequest", + "GoProtobufImportPathMapping" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "ImportPathToPackages", + "GoProtobufImportPathMapping", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.inject_protobuf_java_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProtobufJavaRuntimeForResolve, ProtobufJavaRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InjectProtobufJavaRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.inject_protobuf_java_runtime_dependency", + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "output_type": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf": { + "description": "Generate Java from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format": { + "description": "Format with buf format", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, BufFormatRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "BufFormatRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_type": "FmtResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DiffBinary, DiffBinaryRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "BufFormatRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "output_type": "Process", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf": { + "description": "Lint with buf lint", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BufLintRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_type": "LintResults", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies": { + "description": "Inferring Protobuf dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "InferProtobufDependencies", + "ProtobufMapping", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files": { + "description": "Creating map of Protobuf file names to Protobuf targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules": { + "description": "Creating map of Protobuf targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "InjectPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.inject_dependencies", + "output_type": "InjectedDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MypyProtobufLockfileSentinel", + "PythonProtobufMypyPlugin", + "PythonSetup" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf": { + "description": "Generate Python from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.inject_scalapb_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaPBRuntimeForResolve, ScalaPBRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InjectScalaPBRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.inject_scalapb_runtime_dependency", + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPBRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "output_type": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf": { + "description": "Generate Scala from Protobuf", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalapbcToolLockfileSentinel", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "MaterializeJvmPluginRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "MaterializeJvmPluginsRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ScalaPBSubsystem", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.tailor.find_putative_targets": { + "description": "Determine candidate Protobuf targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets": { + "description": "Find all Protobuf targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules": { + "description": "Creating map of Thrift targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "InjectApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_type": "InjectedDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift": { + "description": "Generate Python from Thrift", + "documentation": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "GenerateThriftSourcesRequest", + "ApacheThriftSetup" + ], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies": { + "description": "Inferring Thrift dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files": { + "description": "Creating map of Thrift file names to Thrift targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllThriftTargets" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets": { + "description": "Determine candidate Thrift targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets": { + "description": "Find all Thrift targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParsedThriftRequest" + ], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.docker.goals.package_image.build_docker_image": { + "description": null, + "documentation": "Build a Docker image using `docker build`.", + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "KeepSandboxes" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.publish.push_docker_images": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerFieldSet" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.tailor.find_putative_targets": { + "description": "Determine candidate Docker targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.lint.hadolint.rules.run_hadolint": { + "description": "Lint with Hadolint", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "HadolintRequest", + "Hadolint" + ], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_type": "LintResults", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": [ + "DockerfileInfoRequest" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerfileParserLockfileSentinel", + "DockerfileParser", + "PythonSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "DockerfileParseRequest", + "ParserSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies": { + "description": null, + "documentation": "Inspects the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "InjectDockerDependencies", + "AllPackageableTargets" + ], + "name": "pants.backend.docker.util_rules.dependencies.inject_docker_dependencies", + "output_type": "InjectedDependencies", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.find_docker": { + "description": "Finding the `docker` binary and related tooling", + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": [ + "DockerBinaryRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_binary.find_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.get_docker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBinary, DockerBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_args.docker_build_args": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerBuildArgsRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "DockerBuildContextRequest" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateDockerContextFiles" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateDockerfileRequest" + ], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.go.go_sources.load_go_binary.setup_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "LoadedGoBinaryRequest" + ], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.check.check_go": { + "description": "Check Go compilation", + "documentation": null, + "input_gets": [ + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": [ + "GoCheckRequest" + ], + "name": "pants.backend.go.goals.check.check_go", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.package_binary.package_go_binary": { + "description": "Package Go binary", + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.create_go_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_targets": { + "description": "Determine candidate Go targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources", + "GolangSubsystem" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoTestFieldSet" + ], + "name": "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.generate_go_tests_debug_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoTestFieldSet" + ], + "name": "pants.backend.go.goals.test.generate_go_tests_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.run_go_tests": { + "description": "Test with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GoTestFieldSet", + "TestSubsystem", + "GoTestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.lint.gofmt.rules.gofmt_fmt": { + "description": "Format with gofmt", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GofmtRequest", + "GofmtSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.subsystems.golang.setup_goroot": { + "description": "Find Go binary", + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GolangSubsystem" + ], + "name": "pants.backend.go.subsystems.golang.setup_goroot", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary": { + "description": "Determine first-party package used by `go_binary` target", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "GoBinaryMainPackageRequest" + ], + "name": "pants.backend.go.target_type_rules.determine_main_pkg_for_go_binary", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.find_all_go_targets": { + "description": "Find all Go targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.find_all_go_targets", + "output_type": "AllGoTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.generate_targets_from_go_mod": { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "documentation": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromGoModRequest", + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_dependencies": { + "description": "Infer dependencies for first-party Go packages", + "documentation": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoPackageDependenciesRequest", + "GoStdLibImports", + "ImportPathToPackages" + ], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.inject_go_binary_main_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "InjectGoBinaryMainDependencyRequest" + ], + "name": "pants.backend.go.target_type_rules.inject_go_binary_main_dependency", + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies": { + "description": "Infer dependencies for third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InjectGoThirdPartyPackageDependenciesRequest", + "GoStdLibImports", + "ImportPathToPackages" + ], + "name": "pants.backend.go.target_type_rules.inject_go_third_party_package_dependencies", + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.map_import_paths_to_packages": { + "description": "Map all Go targets to their import paths", + "documentation": null, + "input_gets": [ + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "AllGoTargets" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_type": "ImportPathToPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPostCompilationRequest" + ], + "name": "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "output_type": "AssemblyPostCompilation", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPreCompilationRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "output_type": "FallibleAssemblyPreCompilation", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.build_go_package": { + "description": "Compile with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(FallibleAssemblyPreCompilation, AssemblyPreCompilationRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(AssemblyPostCompilation, AssemblyPostCompilationRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BuildGoPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)" + ], + "input_types": [ + "GoCompileActionIdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.render_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.required_built_go_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuiltGoPackage" + ], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuildGoPackageRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request": { + "description": "Set up Go compilation request", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgAnalysisRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": [ + "FirstPartyPkgImportPathRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgDigestRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.determine_go_mod_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoModInfoRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_nearest_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, RawSpecs, ..)" + ], + "input_types": [ + "OwningGoModRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_go_mod", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports": { + "description": "Determine Go std lib's imports", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "output_type": "GoStdLibImports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.generate_import_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ImportConfigRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.util_rules.import_analysis.generate_import_config", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.link_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "LinkGoBinaryRequest" + ], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.compute_go_tool_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoSdkToolIDRequest" + ], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.setup_go_sdk_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "GolangSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.tests_analysis.generate_testmain": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GenerateTestMainRequest" + ], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyModuleRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyPackageRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ModuleDescriptorsRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages": { + "description": "Download and analyze all third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": [ + "AllThirdPartyPackagesRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.extract_package_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "ThirdPartyPkgAnalysisRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function": { + "description": "Create Python Google Cloud Function", + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonGoogleCloudFunctionFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency": { + "description": "Inferring dependency from the python_google_cloud_function `handler` field", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonCloudFunctionHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.google_cloud_function.python.target_types.inject_cloud_function_handler_dependency", + "output_type": "InjectedDependencies", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler": { + "description": "Determining the handler for a `python_google_cloud_function` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonGoogleHandlerRequest" + ], + "name": "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "output_type": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "output_type": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata": { + "description": "Inferring Helm chart dependencies", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "InferHelmChartDependenciesRequest", + "FirstPartyHelmChartMapping", + "ThirdPartyHelmArtifactMapping", + "HelmSubsystem" + ], + "name": "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.unittest.inject_chart_dependency_into_unittests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)" + ], + "input_types": [ + "InjectHelmUnitTestChartDependencyRequest", + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.unittest.inject_chart_dependency_into_unittests", + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.run_helm_lint": { + "description": "Lint Helm charts", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)" + ], + "input_types": [ + "HelmLintRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_type": "LintResults", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.package.run_helm_package": { + "description": "Package Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmPackageFieldSet" + ], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.publish.publish_helm_chart": { + "description": "Push Helm chart to OCI registries", + "documentation": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "PublishHelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.publish.publish_helm_chart", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.tailor.find_putative_helm_targets": { + "description": "Determine candidate Helm chart targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeHelmChartTargetsRequest", + "AllOwnedSources", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmArtifact", + "HelmSubsystem" + ], + "name": "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "output_type": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedHelmArtifact, HelmArtifact, ..)" + ], + "input_types": [ + "AllHelmArtifactTargets" + ], + "name": "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "output_type": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts": { + "description": "Fetch third party Helm Chart artifacts", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ResolvedHelmArtifact, HelmArtifact, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "FetchHelmArfifactsRequest" + ], + "name": "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "output_type": "FetchedHelmArtifacts", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.unittest.download_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestPluginBinding", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.subsystems.unittest.download_plugin_request", + "output_type": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_artifact_targets", + "output_type": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_chart_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_chart_targets", + "output_type": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_unittest_test_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "output_type": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestFieldSet" + ], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestFieldSet" + ], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.run_helm_unittest": { + "description": "Run Helm Unittest", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "HelmUnitTestFieldSet", + "TestSubsystem", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.test.unittest.run_helm_unittest", + "output_type": "TestResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.create_chart_from_artifact": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "FetchedHelmArtifact" + ], + "name": "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.get_helm_chart": { + "description": "Collect all source code and subcharts of a Helm Chart", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(FetchedHelmArtifacts, FetchHelmArfifactsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchedHelmArtifact, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParseHelmChartMetadataDigest" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "HelmChartMetaSourceField" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "HelmChartMetadata" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.plugins.all_helm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmPlugin, ExternalHelmPluginBinding, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.helm.util_rules.plugins.all_helm_plugins", + "output_type": "HelmPlugins", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.plugins.download_external_helm_plugin": { + "description": "Download an external Helm plugin", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ExternalHelmPluginRequest" + ], + "name": "pants.backend.helm.util_rules.plugins.download_external_helm_plugin", + "output_type": "HelmPlugin", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.get_helm_source_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartSourceFilesRequest" + ], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.helm_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmProcess", + "HelmBinary" + ], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.setup_helm": { + "description": "Download and configure Helm", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "HelmSubsystem", + "HelmPlugins" + ], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.java.bsp.rules.bsp_java_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_java_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_javac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": [ + "JavacOptionsParams" + ], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaBSPBuildTargetsMetadataRequest" + ], + "name": "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.handle_bsp_java_options_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HandleJavacOptionsRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.compile.javac.compile_java_source": { + "description": "Compile with javac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.java.dependency_inference.java_parser.build_processors", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaParserToolLockfileSentinel" + ], + "name": "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SourceFiles" + ], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis": { + "description": "Inferring Java dependencies and exports by source analysis", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis": { + "description": "Inferring Java dependencies by source analysis", + "documentation": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": [ + "InferJavaSourceDependencies" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets": { + "description": "Find all Java targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols": { + "description": "Map all first party Java targets to their packages", + "documentation": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.check.javac_check": { + "description": "Check javac compilation", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "JavacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.goals.check.javac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.tailor.find_putative_targets": { + "description": "Determine candidate Java targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources", + "JavacSubsystem" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt": { + "description": "Format with Google Java Format", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GoogleJavaFormatRequest", + "GoogleJavaFormatSubsystem", + "InternalJdk" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source": { + "description": "Compile with kotlinc", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(KotlincPluginTargetsForTarget, KotlincPluginsForTargetRequest, ..)", + "Get(KotlincPlugins, KotlincPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinSubsystem", + "KotlincSubsystem", + "CompileKotlinSourceRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlincPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "output_type": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "output_type": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "KotlincPluginsRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "output_type": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "KotlincPluginsForTargetRequest", + "AllKotlincPluginTargets", + "JvmSubsystem", + "KotlincSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "output_type": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinParserCompiledClassfiles", + "SourceFiles" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "output_type": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinParserToolLockfileSentinel" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleKotlinSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "output_type": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "output_type": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis": { + "description": "Inferring Kotlin dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferKotlinSourceDependencies", + "KotlinInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.inject_kotlin_stdlib_dependency": { + "description": "Inject dependency on Kotlin runtime artifacts for Kotlin targets.", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(KotlinRuntimeForResolve, KotlinRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InjectKotlinRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.inject_kotlin_stdlib_dependency", + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "output_type": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets": { + "description": "Find all Kotlin targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "output_type": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols": { + "description": "Map all first party Kotlin targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyKotlinTargetsMappingRequest", + "AllKotlinTargets", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.check.kotlinc_check": { + "description": "Check compilation for Kotlin", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "KotlincCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.kotlin.goals.check.kotlinc_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.tailor.find_putative_targets": { + "description": "Determine candidate Kotlin targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeKotlinTargetsRequest", + "AllOwnedSources", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KtlintToolLockfileSentinel", + "KtlintSubsystem" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt": { + "description": "Format with Ktlint", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KtlintToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "KtlintRequest", + "KtlintSubsystem", + "InternalJdk" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.test.junit.inject_kotlin_junit_dependency": { + "description": "Inject dependency on Kotlin Junit support artifact.", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(KotlinJunitLibrariesForResolve, KotlinJunitLibrariesForResolveRequest, ..)" + ], + "input_types": [ + "InjectKotlinJunitTestDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.inject_kotlin_junit_dependency", + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinJunitLibrariesForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "output_type": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + "pants.backend.project_info.count_loc.count_loc": { + "description": "`count-loc` goal", + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsPaths" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependees.dependees_goal": { + "description": "`dependees` goal", + "documentation": null, + "input_gets": [ + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "DependeesSubsystem", + "Console" + ], + "name": "pants.backend.project_info.dependees.dependees_goal", + "output_type": "DependeesGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependees.find_dependees": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependeesRequest", + "AddressToDependees" + ], + "name": "pants.backend.project_info.dependees.find_dependees", + "output_type": "Dependees", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependees.map_addresses_to_dependees": { + "description": "Map all targets to their dependees", + "documentation": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.project_info.dependees.map_addresses_to_dependees", + "output_type": "AddressToDependees", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependencies.dependencies": { + "description": "`dependencies` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "Addresses", + "DependenciesSubsystem" + ], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filedeps.file_deps": { + "description": "`filedeps` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "Console", + "FiledepsSubsystem", + "BuildRoot", + "Addresses" + ], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filter_targets.filter_targets": { + "description": "`filter` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Addresses", + "FilterSubsystem", + "Console" + ], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_roots.list_roots": { + "description": "`roots` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Console", + "RootsSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_type": "Roots", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_targets.list_targets": { + "description": "`list` goal", + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "Addresses", + "ListSubsystem", + "Console" + ], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_type": "List", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.paths": { + "description": "`paths` goal", + "documentation": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "PathsSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.project_info.paths.paths", + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.get_target_data": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.get_target_data", + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.peek": { + "description": "`peek` goal", + "documentation": null, + "input_gets": [ + "Get(TargetDatas, UnexpandedTargets, ..)" + ], + "input_types": [ + "Console", + "PeekSubsystem", + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.peek", + "output_type": "Peek", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.lint_with_regex_patterns": { + "description": "Lint with regex patterns", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "RegexLintRequest", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_type": "LintResults", + "provider": "pants.backend.project_info" + }, + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects": { + "description": "Find all Python targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules": { + "description": "Creating map of first party Python targets to Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses": { + "description": "Creating map of third party targets to Python modules", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ParsePythonDependenciesRequest", + "ParserScript" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "output_type": "ParserScript", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies": { + "description": "Inferring dependencies on `conftest.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source": { + "description": "Inferring Python dependencies by analyzing source", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargets, AllAssetTargetsRequest, ..)", + "Get(AllAssetTargetsByPath, AllAssetTargets, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies": { + "description": "Inferring dependencies on `__init__.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.generate_coverage_reports": { + "description": "Generate Pytest coverage reports", + "documentation": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "KeepSandboxes", + "DistDir" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.merge_coverage_data": { + "description": "Merge Pytest coverage data", + "documentation": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "CoveragePyLockfileSentinel", + "CoverageSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ExportPythonTool", + "PexPEX" + ], + "name": "pants.backend.python.goals.export.export_tool", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "_ExportVenvRequest", + "PythonSetup", + "PexPEX" + ], + "name": "pants.backend.python.goals.export.export_virtualenv", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenvs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportResult, _ExportVenvRequest, ..)", + "Get(ExportPythonTool, ExportPythonToolSentinel, ..)", + "Get(ExportResult, ExportPythonTool, ..)" + ], + "input_types": [ + "ExportVenvsRequest", + "PythonSetup", + "DistDir", + "UnionMembership" + ], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_type": "ExportResults", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.lockfile.determine_python_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownPythonUserResolveNamesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.generate_lockfile": { + "description": "Generate Python lockfile", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, PexCliProcess, ..)", + "Get(MaybeWarnPythonRepos, MaybeWarnPythonReposRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "PoetrySubsystem", + "GenerateLockfilesSubsystem", + "PythonRepos", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.maybe_warn_python_repos": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MaybeWarnPythonReposRequest", + "PythonRepos" + ], + "name": "pants.backend.python.goals.lockfile.maybe_warn_python_repos", + "output_type": "MaybeWarnPythonRepos", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratePythonLockfile" + ], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.package_pex_binary.package_pex_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(Pex, PexFromTargetsRequest, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.publish.twine_upload": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.pytest_runner.debug_python_test": { + "description": "Set up Pytest to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "PythonTestFieldSet" + ], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.debugpy_python_test": { + "description": "Set up debugpy to run an interactive Pytest session", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "PythonTestFieldSet", + "DebugPy", + "DebugAdapterSubsystem", + "PyTest" + ], + "name": "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": [ + "AllPytestPluginSetupsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_python_test": { + "description": "Run Pytest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "PythonTestFieldSet", + "TestSubsystem" + ], + "name": "pants.backend.python.goals.pytest_runner.run_python_test", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "PythonSetup", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_runtime_packages": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "RuntimePackagesPluginRequest" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_ipython_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_python_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonRepl", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PexBinaryFieldSet, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "UseDeprecatedPexBinaryRunSemanticsOption", + "PexBinaryDefaults", + "PexEnvironment" + ], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, PexBinaryFieldSet, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "UseDeprecatedPexBinaryRunSemanticsOption", + "DebugPy", + "DebugAdapterSubsystem" + ], + "name": "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, PythonSourceFieldSet, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "DebugPy", + "DebugAdapterSubsystem" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SetupKwargs, SetupKwargsRequest, ..)" + ], + "input_types": [ + "ExportedTarget", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.generate_chroot": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.generate_chroot", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.generate_setup_py": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.generate_setup_py", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_exporting_owner": { + "description": "Get exporting owner for target", + "documentation": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "OwnedDependency" + ], + "name": "pants.backend.python.goals.setup_py.get_exporting_owner", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_owned_dependencies": { + "description": "Find all code to be published in the distribution", + "documentation": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_owned_dependencies", + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_requirements": { + "description": "Compute distribution's 3rd party requirements", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.get_requirements", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_sources", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.package_python_dist": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.package_python_dist", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.tailor.find_putative_targets": { + "description": "Determine candidate Python targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.lint.autoflake.rules.autoflake_fmt": { + "description": "Format with Autoflake", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "AutoflakeRequest", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "pants.backend.python.lint.autoflake.subsystem.autoflake_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AutoflakeExportSentinel", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AutoflakeLockfileSentinel", + "Autoflake", + "PythonSetup" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint": { + "description": "Lint with Bandit", + "documentation": null, + "input_gets": [ + "Get(LintResult, BanditPartition, ..)" + ], + "input_types": [ + "BanditRequest", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "BanditPartition", + "Bandit" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.bandit_export": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditExportSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.bandit_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditLockfileSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.black.rules.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "BlackRequest", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.black_export": { + "description": "Determine Black interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackExportSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.black_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.setup_black_lockfile": { + "description": "Determine Black interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackLockfileSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.docformatter.rules.docformatter_fmt": { + "description": "Format with docformatter", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DocformatterRequest", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.docformatter.subsystem.docformatter_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DocformatterExportSentinel", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DocformatterLockfileSentinel", + "Docformatter", + "PythonSetup" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.flake8.rules.flake8_lint": { + "description": "Lint with Flake8", + "documentation": null, + "input_gets": [ + "Get(LintResult, Flake8Partition, ..)" + ], + "input_types": [ + "Flake8Request", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.rules.flake8_lint_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Flake8Partition", + "Flake8", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_export": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8ExportSentinel", + "Flake8", + "Flake8FirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Flake8" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8LockfileSentinel", + "Flake8FirstPartyPlugins", + "Flake8", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.isort.rules.isort_fmt": { + "description": "Format with isort", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "IsortRequest", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.isort.subsystem.isort_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "IsortExportSentinel", + "Isort" + ], + "name": "pants.backend.python.lint.isort.subsystem.isort_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "IsortLockfileSentinel", + "Isort", + "PythonSetup" + ], + "name": "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions": { + "description": "Determine if necessary to partition Pylint input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "PylintRequest", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "output_type": "PylintPartitions", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.pylint_lint": { + "description": "Lint using Pylint", + "documentation": null, + "input_gets": [ + "Get(PylintPartitions, PylintRequest, ..)", + "Get(LintResult, PylintPartition, ..)" + ], + "input_types": [ + "PylintRequest", + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.pylint_lint_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "PylintPartition", + "Pylint", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_export": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PylintExportSentinel", + "Pylint", + "PylintFirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PylintLockfileSentinel", + "PylintFirstPartyPlugins", + "Pylint", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt": { + "description": "Format with pyupgrade", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PyUpgradeRequest", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyUpgradeExportSentinel", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyUpgradeLockfileSentinel", + "PyUpgrade", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "pants.backend.python.lint.yapf.rules.yapf_fmt": { + "description": "Format with yapf", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "YapfRequest", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YapfLockfileSentinel", + "Yapf", + "PythonSetup" + ], + "name": "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.lint.yapf.subsystem.yapf_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YapfExportSentinel", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.subsystem.yapf_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement": { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "UnionMembership" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.python_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from requirements.txt", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints": { + "description": "`py-constraints` goal", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DebugPyLockfileSentinel", + "DebugPy", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile": { + "description": "Determine all Python interpreter versions used by iPython in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "IPythonLockfileSentinel", + "IPython", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "LambdexLockfileSentinel", + "Lambdex", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.subsystems.pytest.pytest_export": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PytestExportSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.pytest_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PytestLockfileSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile": { + "description": "Determine all Python interpreter versions used by setuptools in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "SetuptoolsLockfileSentinel", + "Setuptools", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SetuptoolsSCMLockfileSentinel", + "SetuptoolsSCM", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.subsystems.twine.setup_twine_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TwineLockfileSentinel", + "TwineSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateTargetsFromPexBinaries", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency": { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.inject_pex_binary_entry_point_dependency", + "output_type": "InjectedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.inject_python_distribution_dependencies": { + "description": null, + "documentation": "Inject dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InjectPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.inject_python_distribution_dependencies", + "output_type": "InjectedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_files_generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonResolveFieldDefaultFactoryRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_pex_entry_point": { + "description": "Determining the entry point for a `pex_binary` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePexEntryPointRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points": { + "description": "Determining the entry points for a `python_distribution` target", + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "ResolvePythonDistributionEntryPointsRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.validate_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "PythonValidateDependenciesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.validate_python_dependencies", + "output_type": "ValidatedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment": { + "description": "Get mypyc build environment", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)" + ], + "input_types": [ + "MyPycDistBuildEnvironmentRequest", + "MyPyFirstPartyPlugins", + "MyPyConfigFile", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "output_type": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions": { + "description": "Determine if necessary to partition MyPy input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck": { + "description": "Typecheck using MyPy", + "documentation": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_export": { + "description": "Determine MyPy interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyExportSentinel", + "MyPy", + "PythonSetup", + "MyPyFirstPartyPlugins" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile": { + "description": "Determine MyPy interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyLockfileSentinel", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "AncestorFilesRequest" + ], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.find_build_system": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "BuildSystemRequest", + "Setuptools" + ], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.run_pep517_build": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DistBuildRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.build_local_dists": { + "description": "Building local distributions", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "LocalDistsPexRequest" + ], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex.build_pex": { + "description": null, + "documentation": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexCliProcess, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PexRequest", + "PythonSetup", + "PythonRepos", + "Platform", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_type": "BuildPexResult", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_optional_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)" + ], + "input_types": [ + "OptionalPexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_type": "OptionalPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)" + ], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_type": "Pex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_venv_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexRequest", + "BashBinary", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_type": "VenvPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, PexProcess, ..)" + ], + "input_types": [ + "PexPEX", + "Pex" + ], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "VenvPex" + ], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "PexCompletePlatformsField" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.find_interpreter": { + "description": "Find Python interpreter for constraints", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_type": "PythonExecutable", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_venv_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.wrap_venv_prex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_type": "VenvPexRequest", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.download_pex_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "PexCli" + ], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_type": "PexPEX", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonNativeCode", + "GlobalOptions", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_environment.find_pex_python": { + "description": "Prepare environment for running PEXes", + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBinary", + "PexRuntimeEnvironment", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_type": "PexEnvironment", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "ChosenPythonResolveRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_type": "PexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.generalize_requirementspexrequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequirementsPexRequest" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirementspexrequest", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)" + ], + "input_types": [ + "_RepositoryPexRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "InterpreterConstraintsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_requirements.load_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "LoadedLockfileRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_type": "LoadedLockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.python_sources.prepare_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "PythonSourceFilesRequest", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.python_sources.strip_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFiles, ..)" + ], + "input_types": [ + "PythonSourceFiles" + ], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets": { + "description": "Find all vcs_version targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "output_type": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeGitWorktree, GitWorktreeRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GeneratePythonFromSetuptoolsSCMRequest", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllVCSVersionTargets", + "PythonSetup", + "PythonVCSVersionMappingMarker" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ReadlinkBinary, ReadlinkBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsMetadataRequest", + "BashBinary", + "JvmSubsystem", + "ScalaSubsystem", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaMainClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request", + "output_type": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaTestClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request", + "output_type": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": [ + "ScalacOptionsParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.collect_thirdparty_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ThirdpartyModulesRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "output_type": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "HandleScalacOptionsRequest", + "BuildRoot", + "Workspace" + ], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPDependencyModulesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "output_type": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.compile_scala_source": { + "description": "Compile with scalac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "Scalac", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.fetch_scala_library": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "ScalaLibraryRequest" + ], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.fetch_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaPluginsRequest" + ], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis": { + "description": "Inferring Scala dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency": { + "description": "Inject dependency on scala-library artifact for Scala target.", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InjectScalaLibraryDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.inject_scala_library_dependency", + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.inject_scala_plugin_dependencies": { + "description": "Inject dependency on scala plugin artifacts for Scala target.", + "documentation": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": [ + "InjectScalaPluginDependenciesRequest" + ], + "name": "pants.backend.scala.dependency_inference.rules.inject_scala_plugin_dependencies", + "output_type": "InjectedDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "AnalyzeScalaSourceRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "SourceFilesRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "output_type": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaParserToolLockfileSentinel" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleScalaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets": { + "description": "Find all Scala targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols": { + "description": "Map all first party Scala targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.check.scalac_check": { + "description": "Check compilation for Scala", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ScalacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.repl.create_scala_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaRepl", + "BashBinary", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.tailor.find_putative_targets": { + "description": "Determine candidate Scala targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files": { + "description": null, + "documentation": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "GatherScalafmtConfigFilesRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalafmtToolLockfileSentinel", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt": { + "description": "Format with scalafmt", + "documentation": null, + "input_gets": [ + "Get(Setup, ScalafmtRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ScalafmtRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partition, SetupScalafmtPartition, ..)" + ], + "input_types": [ + "ScalafmtRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "output_type": "Setup", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)" + ], + "input_types": [ + "SetupScalafmtPartition", + "InternalJdk", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "output_type": "Partition", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.scala_settings_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaInferSubsystem", + "ScalaSettingsRequest" + ], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalatestToolLockfileSentinel", + "Scalatest" + ], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.run_scalatest_test": { + "description": "Run Scalatest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.shell.dependency_inference.find_all_shell_targets": { + "description": "Find all Shell targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.infer_shell_dependencies": { + "description": "Inferring Shell dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": [ + "InferShellDependencies", + "ShellMapping", + "ShellSetup" + ], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.map_shell_files": { + "description": "Creating map of Shell file names to Shell targets", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllShellTargets" + ], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.parse_shell_imports": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ParseShellImportsRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck": { + "description": "Lint with Shellcheck", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ShellcheckRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_type": "LintResults", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt": { + "description": "Format with shfmt", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ShfmtRequest", + "Shfmt" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.backend.shell.shell_command.prepare_shell_command_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ShellCommandProcessRequest", + "ShellSetup", + "BashBinary" + ], + "name": "pants.backend.shell.shell_command.prepare_shell_command_process", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shell_command.run_shell_command": { + "description": "Running shell command", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, ShellCommandProcessRequest, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "GenerateFilesFromShellCommandRequest" + ], + "name": "pants.backend.shell.shell_command.run_shell_command", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shell_command.run_shell_command_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Process, ShellCommandProcessRequest, ..)" + ], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.backend.shell.shell_command.run_shell_command_request", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shell_command.run_shell_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.backend.shell.shell_command.run_shell_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell": { + "description": "Determine shunit2 shell", + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Shunit2RunnerRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2": { + "description": "Run tests with Shunit2", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Shunit2FieldSet", + "TestSubsystem" + ], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Shunit2FieldSet" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test": { + "description": "Setup Shunit2 to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Shunit2FieldSet" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target": { + "description": "Setup shunit2", + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "ShellSetup", + "TestSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.tailor.find_putative_targets": { + "description": "Determine candidate shell targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources", + "ShellSetup" + ], + "name": "pants.backend.shell.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ShellGeneratorSettingsRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + }, + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferTerraformModuleDependenciesRequest" + ], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TerraformHcl2ParserLockfileSentinel", + "TerraformHcl2Parser", + "PythonSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "TerraformHcl2Parser" + ], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseTerraformModuleSources", + "ParserSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.check.terraform_check": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StyleSetup, StyleSetupRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": [ + "TerraformCheckRequest", + "TerraformValidateSubsystem" + ], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets": { + "description": "Determine candidate Terraform targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeTerraformTargetsRequest", + "TerraformTool", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt": { + "description": "Format with `terraform fmt`", + "documentation": null, + "input_gets": [ + "Get(StyleSetup, StyleSetupRequest, ..)", + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "TffmtRequest", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.style.setup_terraform_style": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "StyleSetupRequest" + ], + "name": "pants.backend.terraform.style.setup_terraform_style", + "output_type": "StyleSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.tool.setup_terraform_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "TerraformProcess", + "TerraformTool" + ], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.bsp.rules.bsp_context": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SessionValues" + ], + "name": "pants.bsp.rules.bsp_context", + "output_type": "BSPContext", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.bsp_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPCompileResult, CompileOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_type": "CompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.compile_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPCompileResult, BSPCompileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileOneBSPTargetRequest", + "BSPContext", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.compile.compile_bsp_target", + "output_type": "BSPCompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.lifecycle.bsp_build_initialize": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InitializeBuildParams", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.bsp_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPResourcesResult, ResourcesForOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.resources.bsp_resources_request", + "output_type": "ResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.resources_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPResourcesResult, BSPResourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesForOneBSPTargetRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.resources.resources_bsp_target", + "output_type": "BSPResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": [ + "SourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_type": "SourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DependencyModulesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependencySourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_workspace_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateOneBSPBuildTargetResult, GenerateOneBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "BSPBuildTargets", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPBuildTargetsMetadataResult, BSPBuildTargetsMetadataRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "GenerateOneBSPBuildTargetRequest", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "output_type": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "MaterializeBuildTargetSourcesRequest", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(BSPBuildTargetInternal, _ParseOneBSPMappingRequest, ..)" + ], + "input_types": [ + "BSPGoal" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "output_type": "BSPBuildTargets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.parse_one_bsp_mapping": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_ParseOneBSPMappingRequest" + ], + "name": "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecsWithoutFileOwners, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal", + "UnionMembership", + "FieldDefaults" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "output_type": "Targets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BuildTargetIdentifier", + "BSPBuildTargets" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "output_type": "BSPBuildTargetSourcesInfo", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_one_dependency_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(BSPDependencyModulesResult, BSPDependencyModulesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResolveOneDependencyModuleRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + }, + "pants.core.goals.check.check": { + "description": "`check` goal", + "documentation": null, + "input_gets": [ + "Get(CheckResults, CheckRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "FilteredTargets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_type": "Check", + "provider": "pants.core" + }, + "pants.core.goals.export.export": { + "description": "`export` goal", + "documentation": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir" + ], + "name": "pants.core.goals.export.export", + "output_type": "Export", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt": { + "description": "`fmt` goal", + "documentation": null, + "input_gets": [ + "Get(_LanguageFmtResults, _LanguageFmtRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_type": "Fmt", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt_language": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FmtResult, FmtRequest, ..)" + ], + "input_types": [ + "_LanguageFmtRequest" + ], + "name": "pants.core.goals.fmt.fmt_language", + "output_type": "_LanguageFmtResults", + "provider": "pants.core" + }, + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal": { + "description": "`generate-lockfiles` goal", + "documentation": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, RequestedUserResolveNames, ..)", + "Get(WrappedGenerateLockfile, GenerateToolLockfileSentinel, ..)", + "Get(GenerateLockfileResult, GenerateLockfile, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + }, + "pants.core.goals.lint.lint": { + "description": "`lint` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(LintResults, LintTargetsRequest, ..)", + "Get(FmtResult, FmtRequest, ..)", + "Get(LintResults, LintFilesRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Specs", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_type": "Lint", + "provider": "pants.core" + }, + "pants.core.goals.package.find_all_packageable_targets": { + "description": "Find all packageable targets in project", + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)" + ], + "input_types": [ + "AllTargets" + ], + "name": "pants.core.goals.package.find_all_packageable_targets", + "output_type": "AllPackageableTargets", + "provider": "pants.core" + }, + "pants.core.goals.package.package_asset": { + "description": "`package` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "DistDir" + ], + "name": "pants.core.goals.package.package_asset", + "output_type": "Package", + "provider": "pants.core" + }, + "pants.core.goals.publish.package_for_publish": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(PublishProcesses, PublishRequest, ..)" + ], + "input_types": [ + "PublishProcessesRequest" + ], + "name": "pants.core.goals.publish.package_for_publish", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.publish.run_publish": { + "description": "`publish` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "PublishSubsystem" + ], + "name": "pants.core.goals.publish.run_publish", + "output_type": "Publish", + "provider": "pants.core" + }, + "pants.core.goals.repl.run_repl": { + "description": "`repl` goal", + "documentation": null, + "input_gets": [ + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "ReplSubsystem", + "FilteredTargets", + "UnionMembership", + "CompleteEnvironment" + ], + "name": "pants.core.goals.repl.run_repl", + "output_type": "Repl", + "provider": "pants.core" + }, + "pants.core.goals.run.run": { + "description": "`run` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(RunDebugAdapterRequest, RunFieldSet, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "DebugAdapterSubsystem", + "GlobalOptions", + "Workspace", + "BuildRoot", + "CompleteEnvironment" + ], + "name": "pants.core.goals.run.run", + "output_type": "Run", + "provider": "pants.core" + }, + "pants.core.goals.tailor.determine_all_owned_sources": { + "description": "Determine all files already owned by targets", + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_type": "AllOwnedSources", + "provider": "pants.core" + }, + "pants.core.goals.tailor.edit_build_files": { + "description": "Edit BUILD files with new targets", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "EditBuildFilesRequest", + "TailorSubsystem" + ], + "name": "pants.core.goals.tailor.edit_build_files", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + }, + "pants.core.goals.tailor.rename_conflicting_targets": { + "description": null, + "documentation": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": [ + "PutativeTargets", + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + }, + "pants.core.goals.tailor.restrict_conflicting_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PutativeTarget" + ], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + }, + "pants.core.goals.tailor.tailor": { + "description": "`tailor` goal", + "documentation": null, + "input_gets": [ + "Get(SpecsPaths, Specs, ..)", + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions", + "GlobalOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_type": "TailorGoal", + "provider": "pants.core" + }, + "pants.core.goals.test.build_runtime_package_dependencies": { + "description": "Build runtime package dependencies for tests", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "BuildPackageDependenciesRequest" + ], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + }, + "pants.core.goals.test.get_filtered_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "TestSubsystem" + ], + "name": "pants.core.goals.test.get_filtered_environment", + "output_type": "TestExtraEnv", + "provider": "pants.core" + }, + "pants.core.goals.test.run_tests": { + "description": "`test` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(TestDebugRequest, TestFieldSet, ..)", + "Get(TestDebugAdapterRequest, TestFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(TestResult, TestFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, CoverageDataCollection, ..)", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "DebugAdapterSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId" + ], + "name": "pants.core.goals.test.run_tests", + "output_type": "Test", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.determine_renamed_field_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_field_types", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.determine_renamed_target_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_target_types", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_black": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithBlackRequest", + "Black" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_yapf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithYapfRequest", + "Yapf" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields": { + "description": "Check for deprecated field type names", + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedFieldsRequest", + "RenamedFieldTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets": { + "description": "Check for deprecated target type names", + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedTargetsRequest", + "RenamedTargetTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.update_build_files": { + "description": "Update all BUILD files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership", + "Specs" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap.python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "PythonBootstrapSubsystem" + ], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_type": "PythonBootstrap", + "provider": "pants.core" + }, + "pants.core.target_types.find_all_assets": { + "description": "Find all assets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets", + "AllAssetTargetsRequest" + ], + "name": "pants.core.target_types.find_all_assets", + "output_type": "AllAssetTargets", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_file_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateFileSourceRequest" + ], + "name": "pants.core.target_types.hydrate_file_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_resource_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateResourceSourceRequest" + ], + "name": "pants.core.target_types.hydrate_resource_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.map_assets_by_path": { + "description": "Mapping assets by path", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllAssetTargets" + ], + "name": "pants.core.target_types.map_assets_by_path", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + }, + "pants.core.target_types.package_archive_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": [ + "ArchiveFieldSet" + ], + "name": "pants.core.target_types.package_archive_target", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.target_types.relocate_files": { + "description": "Relocating loose files for `relocated_files` targets", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "RelocateFilesViaCodegenRequest" + ], + "name": "pants.core.target_types.relocate_files", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest": { + "description": null, + "documentation": "Backwards-compatibility helper.", + "input_gets": [], + "input_types": [ + "Digest" + ], + "name": "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest", + "output_type": "MaybeExtractArchiveRequest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.create_archive": { + "description": "Creating an archive file", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ZipBinary, ZipBinaryRequest, ..)", + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CreateArchive" + ], + "name": "pants.core.util_rules.archive.create_archive", + "output_type": "Digest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.maybe_extract_archive": { + "description": "Extracting an archive file", + "documentation": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary, UnzipBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(GunzipBinary, GunzipBinaryRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MaybeExtractArchiveRequest" + ], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_type": "ExtractedArchive", + "provider": "pants.core" + }, + "pants.core.util_rules.config_files.find_config_file": { + "description": "Find config files", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ConfigFilesRequest" + ], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_type": "ConfigFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.distdir.get_distdir": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GlobalOptions", + "BuildRoot" + ], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_type": "DistDir", + "provider": "pants.core" + }, + "pants.core.util_rules.external_tool.download_external_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ExternalToolRequest" + ], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + }, + "pants.core.util_rules.source_files.determine_source_files": { + "description": "Get all relevant source files", + "documentation": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFilesRequest" + ], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_type": "SourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_file_name": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "StrippedFileNameRequest" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_type": "StrippedFileName", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_source_roots": { + "description": null, + "documentation": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFiles" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_sources_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourcesPaths" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + }, + "pants.core.util_rules.subprocess_environment.get_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "SubprocessEnvironment" + ], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.create_binary_shims": { + "description": null, + "documentation": "Creates a bin directory with shims for all requested binaries.\n\nUseful as input digest for a Process to setup a `bin` directory for PATH.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryShimsRequest", + "BashBinary", + "MkdirBinary", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_type": "BinaryShims", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_bash": { + "description": "Finding the `bash` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "BashBinaryRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryPathRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_type": "BinaryPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod": { + "description": "Finding the `chmod` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ChmodBinaryRequest", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_chmod_wrapper", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff": { + "description": "Finding the `diff` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DiffBinaryRequest", + "DiffBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_diff_wrapper", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_git", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GitBinaryRequest", + "GitBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_git_wrapper", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_gunzip": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_gunzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GunzipBinaryRequest", + "GunzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip_wrapper", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir": { + "description": "Finding the `mkdir` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MkdirBinaryRequest", + "MkdirBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_mkdir_wrapper", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_open": { + "description": "Finding the `open` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_open", + "output_type": "OpenBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_python": { + "description": "Finding a `python` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "PythonBootstrap" + ], + "name": "pants.core.util_rules.system_binaries.find_python", + "output_type": "PythonBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink": { + "description": "Finding the `readlink` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_readlink", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ReadlinkBinaryRequest", + "ReadlinkBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_readlink_wrapper", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar": { + "description": "Finding the `tar` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TarBinaryRequest", + "TarBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_tar_wrapper", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_touch": { + "description": "Finding the `touch` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_touch", + "output_type": "TouchBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip": { + "description": "Finding the `unzip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnzipBinaryRequest", + "UnzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip": { + "description": "Finding the `zip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ZipBinaryRequest", + "ZipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_zip_wrapper", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.get_bash": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.maybe_find_git", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MaybeGitBinaryRequest", + "MaybeGitBinary" + ], + "name": "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.goal.anonymous_telemetry.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AnonymousTelemetryCallbackFactoryRequest", + "AnonymousTelemetry" + ], + "name": "pants.goal.anonymous_telemetry.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.goal.stats_aggregator.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.jvm.bsp.compile.notify_for_classpath_entry": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "BSPClasspathEntryRequest", + "BSPContext" + ], + "name": "pants.jvm.bsp.compile.notify_for_classpath_entry", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "ClasspathEntryRequestFactory" + ], + "name": "pants.jvm.classpath.classpath", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.loose_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ClasspathEntry", + "UnzipBinary" + ], + "name": "pants.jvm.classpath.loose_classfiles", + "output_type": "LooseClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.calculate_jvm_request_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnionMembership" + ], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.classpath_dependency_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.compile_classpath_entries": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ClasspathEntryRequests" + ], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.required_classfiles": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleClasspathEntry" + ], + "name": "pants.jvm.compile.required_classfiles", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping": { + "description": null, + "documentation": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "output_type": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets": { + "description": "Find all jvm_artifact targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields": { + "description": "Find all targets with experimental_provides fields in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SymbolMap, FirstPartyMappingRequest, ..)" + ], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem", + "ThirdPartySymbolMapping" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "output_type": "SymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.determine_jvm_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownJVMUserResolveNamesRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.generate_jvm_lockfile": { + "description": "Generate JVM lockfile", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.fetch_nailgun": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.internal_jdk": { + "description": null, + "documentation": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)" + ], + "input_types": [ + "JvmSubsystem" + ], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.jvm_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess", + "GlobalOptions" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.prepare_jdk_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.deploy_jar_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": [ + "DeployJarClasspathEntryRequest" + ], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.package_deploy_jar": { + "description": null, + "documentation": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Producing a ZIP file containing _only_ the JAR manifest file for the `main_class`\n3. Creating a deploy jar with a broken ZIP index by concatenating all dependency JARs together,\n followed by the thin JAR we created\n4. Using the unix `zip` utility's repair function to fix the broken fat jar", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BashBinary", + "ZipBinary", + "DeployJarFieldSet" + ], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.package_war": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "PackageWarFileFieldSet", + "BashBinary", + "ZipBinary" + ], + "name": "pants.jvm.package.war.package_war", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_content": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "RenderWarContentRequest" + ], + "name": "pants.jvm.package.war.render_war_content", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_deployment_descriptor": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderWarDeploymentDescriptorRequest" + ], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile": { + "description": null, + "documentation": "Fetch every artifact in a lockfile.", + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [ + "CoursierResolvedLockfile" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord": { + "description": null, + "documentation": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "CoursierLockfileEntry" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile": { + "description": null, + "documentation": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier": { + "description": "Fetch with coursier", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierFetchRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "CoursierResolveKey" + ], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "ToolClasspathRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets": { + "description": null, + "documentation": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": [ + "Get(Digest, PathGlobs, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "Coursier", + "CoursierFetchProcess" + ], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.setup_coursier": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBinary" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "GatherJvmCoordinatesRequest" + ], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": [ + "GenerateJvmLockfileFromTool" + ], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resources.assemble_resources_jar": { + "description": "Assemble resources", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "BashBinary", + "TouchBinary", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types.jvm_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JvmResolveFieldDefaultFactoryRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.target_types.jvm_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.generate_junit_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JunitToolLockfileSentinel", + "JUnit" + ], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.run_junit_test": { + "description": "Run JUnit", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.run_junit_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)", + "Get(InteractiveProcess, InteractiveProcessRequest, ..)" + ], + "input_types": [ + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.util_rules.digest_to_file_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "ExtractFileDigest" + ], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + }, + "pants.source.source_root.all_roots": { + "description": "Compute all source roots", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootConfig" + ], + "name": "pants.source.source_root.all_roots", + "output_type": "AllSourceRoots", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_root": { + "description": null, + "documentation": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest", + "SourceRootConfig" + ], + "name": "pants.source.source_root.get_optional_source_root", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_roots": { + "description": null, + "documentation": "Rule to request source roots that may not exist.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_optional_source_roots", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_root": { + "description": null, + "documentation": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest" + ], + "name": "pants.source.source_root.get_source_root", + "output_type": "SourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_roots": { + "description": null, + "documentation": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_source_roots", + "output_type": "SourceRootsResult", + "provider": "pants.core" + }, + "pants.vcs.git.get_git_worktree": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GitWorktreeRequest", + "MaybeGitBinary" + ], + "name": "pants.vcs.git.get_git_worktree", + "output_type": "MaybeGitWorktree", + "provider": "pants.core" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "\nAny tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.13/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [docker].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. \"/\".\n\nIt uses the `[docker].default_repository` by default.\n\nrepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory`, `parent_directory`, and `default_repository`.\n\nRegistries may also configure the repository value for specific registries.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nlabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: default|[=|[,]])\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this image to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_run_shell_command": { + "alias": "experimental_run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n experimental_run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `experimental_shell_command`, in addition to `workdir` you only have the `command` and `dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the current working directory of the command, relative to the project root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "experimental_shell_command": { + "alias": "experimental_shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n experimental_shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n dependencies=[\":scripts\"],\n outputs=[\"results/\", \"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output from the command logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "outputs", + "default": null, + "description": "Specify the shell command output files and directories.\n\nUse a trailing slash on directory names, i.e. `my_dir/`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": null, + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in the shell process. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an http_source is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target. `http_source` has the following signature:\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\nThe filename defaults to the last part of the URL path (E.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory). You can easily get the len and checksum with the following command:\n `curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null`", + "provider": "", + "required": true, + "type_hint": "str | HTTPSource" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go', '*.s')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.go', '*_test.go', '!test_ignore.go']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) when running this package's tests.\n\nIf this field is not set, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_artifact": { + "alias": "helm_artifact", + "description": "A third party Helm artifact.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registry", + "default": null, + "description": "Either registry alias (prefixed by `@`) configured in `[helm.registries]` for the Helm artifact or the full OCI registry URL.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repository", + "default": null, + "description": "Either a HTTP(S) URL to a classic repository, or a path inside an OCI registry (when `registry` is provided).", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "Artifact name of the chart, without version number.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The `version` part of a third party Helm chart.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A third party Helm artifact." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'values.yml', 'templates/*.yaml', 'templates/*.yml', 'templates/*.tpl', 'crds/*.yaml', 'crds/*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['values.yaml', 'templates/*.yaml', '!values_ignore.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "repository", + "default": null, + "description": "Repository to use in the Helm registry where this chart is going to be published.\n\nIf no value is given and `[helm].default-registry-repository` is undefined too, then the chart will be pushed to the root of the OCI registry.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any OCI registries to use for the built chart.\n\nThe address is an `oci://` prefixed domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [helm].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [helm.registries.my-registry-alias]\n address = \"oci://myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n helm_chart(\n registries = [\n \"@my-registry-alias\",\n \"oci://myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this Helm chart to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_lint", + "default": "False", + "description": "If set to true, do not run any linting in this Helm chart when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart." + }, + "helm_unittest_test": { + "alias": "helm_unittest_test", + "description": "A single helm-unittest suite file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A single helm-unittest suite file." + }, + "helm_unittest_tests": { + "alias": "helm_unittest_tests", + "description": "Generates a `helm_unittest_test` target per each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.yaml',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*_test.yaml', '!ignore_test.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "Generates a `helm_unittest_test` target per each file in the `sources` field." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.java', 'New*.java', '!OldExample.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.java', '!TestIgnore.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "excludes", + "default": null, + "description": "A list of unversioned coordinates (i.e. `group:artifact`) that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nThese values are passed directly to Coursier, and if specified incorrectly will show a parse error from Coursier.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., web.xml) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "kotlin_junit_test": { + "alias": "kotlin_junit_test", + "description": "A single Kotlin test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin test, run with JUnit." + }, + "kotlin_junit_tests": { + "alias": "kotlin_junit_tests", + "description": "Generate a `kotlin_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.kt', '!TestIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_junit_test` target for each file in the `sources` field." + }, + "kotlin_source": { + "alias": "kotlin_source", + "description": "A single Kotlin source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin source file containing application or library code." + }, + "kotlin_sources": { + "alias": "kotlin_sources", + "description": "Generate a `kotlin_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.kt', 'New*.kt', '!OldIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_source` target for each file in the `sources` field." + }, + "kotlinc_plugin": { + "alias": "kotlinc_plugin", + "description": "A plugin for `kotlinc`.\n\nTo enable a `kotlinc` plugin, define a target with this target type, and set the `artifact` field to the address of a `jvm_artifact` target that provides the plugin. Set the `plugin_id` field to the ID of the plugin if that name cannot be inferred from the `name` of this target.\n\nThe standard `kotlinc` plugins are available via the following artifact coordinates and IDs: * All-open: `org.jetbrains.kotlin:kotlin-allopen:VERSION` (ID: `all-open`) * No-arg: `org.jetbrains.kotlin:kotlin-noarg:VERSION` (ID: `no-arg`) * SAM with receiver: `org.jetbrains.kotlin:kotlin-sam-with-receiver:VERSION` (ID: `sam-with-receiver`) * kapt (annotation processor): `org.jetbrains.kotlin:org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:VERSION` (ID: `kapt3`) * Seralization: `org.jetbrains.kotlin:kotlin-serialization:VERSION` (ID: `serialization`)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `kotlinc`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_id", + "default": null, + "description": "The ID for `kotlinc` to use when setting options for the plugin.\n\nIf not set, the plugin ID defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "plugin_args", + "default": null, + "description": "Optional list of argument to pass to the plugin.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A plugin for `kotlinc`." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants. The generated targets will have the correct version based on the `version` in your `pants.toml`, and they will work with dependency inference.\n\nBecause the Plugin API is not yet stable, the version is set automatically for you to improve stability. If you're currently using a dev release, the version will be set to that exact dev release. If you're using an alpha release, release candidate (rc), or stable release, the version will allow any non-dev-release release within the release series, e.g. `>=2.13.0rc0,<2.14`.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n ```\n overrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n }\n ```\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same entry_point in multiple keys, so long as you don't override the same field more than one time for the entry_point.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.13/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.13/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.13/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.proto', 'new_*.proto', '!old_ignore*.proto']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.proto\": {\"grpc\": True},\n \"bar.proto\": {\"description\": \"our user model\"},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.13/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the `name` of the `pyoxidizer_target`. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by $ or surrounded with ${ }.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted entry_point passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or []).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets filesystem_resources.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.13/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.13/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: 'path.to.module'.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.13/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the Pex. This is most useful with Lambda Layers to make code uploads smaller when deps are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.13/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\n Example:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies ", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.13/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing setup.py, setup.cfg, pyproject.toml files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "env_vars", + "default": null, + "description": "Environment variables to set when running the PEP-517 build backend.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the long_description field in setup.py.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + }, + { + "alias": "uses_mypyc", + "default": "False", + "description": "If true, this distribution is built using mypyc.\n\nIn this case, Pants will build the distribution in an environment that includes mypy, as configured in the `[mypy]` subsystem, including plugins, config files, extra type stubs, and the distribution's own requirements (which normally would not be needed at build time, but in this case may provide necessary type annotations).\n\nYou will typically set this field on distributions whose setup.py uses mypyc.build.mypycify(). See https://mypyc.readthedocs.io/en/latest/index.html .", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.13/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'cloud_function.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.", + "provider": "", + "required": false, + "type_hint": "'python310' | 'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be 'event' or 'http'. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to --trigger-http.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style file from the `source` field.\n\nThis works with pip-style requirements files: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style file from the `source` field." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'new_*.py', '!old_ignore.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.13/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test_*.py', '*_test.py', 'tests.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo_test.py\": {\"timeout\": 120},\n \"bar_test.py\": {\"timeout\": 200},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an http_source is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target. `http_source` has the following signature:\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\nThe filename defaults to the last part of the URL path (E.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory). You can easily get the len and checksum with the following command:\n `curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null`", + "provider": "", + "required": true, + "type_hint": "str | HTTPSource" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.scala', '!TestIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_junit_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.scala', 'New*.scala', '!OldIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_sources` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala')).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Spec.scala', '!SuiteIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scalatest_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala'))." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.sh', 'new_*.sh', '!old_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test.sh', 'test_*.sh', '!test_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo_test.sh\": {\"timeout\": 120},\n \"bar_test.sh\": {\"timeout\": 200},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.tf', 'new_*.tf', '!old_ignore.tf']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.13/docs/thrift-python", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.thrift', 'new_*.thrift', '!old_ignore.thrift']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.13/docs/targets#target-addresses and https://www.pantsbuild.org/v2.13/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + }, + "vcs_version": { + "alias": "vcs_version", + "description": "Generates a version string from VCS state.\n\nUses a constrained but useful subset of the full functionality of setuptools_scm (https://github.com/pypa/setuptools_scm). These constraints avoid pitfalls in the interaction of setuptools_scm with Pants's hermetic environments.\n\nIn particular, we ignore any existing setuptools_scm config. Instead you must provide a subset of that config in this target's fields.\n\nIf you need functionality that is not currently exposed here, please reach out to us at https://www.pantsbuild.org/v2.13/docs/getting-help.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "tag_regex", + "default": "'^(?:[\\\\w-]+-)?(?P[vV]?\\\\d+(?:\\\\.\\\\d+){0,2}[^\\\\+]*)(?:\\\\+.*)?$'", + "description": "A Python regex string to extract the version string from a VCS tag.\n\nThe regex needs to contain either a single match group, or a group named version, that captures the actual version information.\n\nNote that this is unrelated to the tags field and Pants's own tags concept.\n\nSee https://github.com/pypa/setuptools_scm for implementation details.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "generate_to", + "default": null, + "description": "Generate the version data to this relative path, using the template field.\n\nNote that the generated output will not be written to disk in the source tree, but will be available as a generated dependency to code that depends on this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "template", + "default": null, + "description": "Generate the version data using this format string, which takes a version format kwarg.\n\nE.g., 'version = \"{version}\"'", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python", + "summary": "Generates a version string from VCS state." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.13/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.13.1" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.13.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": null, + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": null, + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/", + "__pycache__" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/", + "__pycache__" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": [ + "fetch", + "validate", + "defer" + ], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cache-content-behavior=" + ], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-total-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-per-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.13.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-read-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.13.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-build-file-globs=" + ], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "typ": "UnmatchedBuildFileGlobs", + "unscoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-cli-globs=" + ], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "typ": "UnmatchedCliGlobs", + "unscoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.13/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-level=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Upcoming deprecation in version: 2.15.0.dev1, is scheduled to be removed in version: 2.17.0.dev1.", + "deprecation_active": false, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "2.17.0.dev1", + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "always", + "on_failure", + "never" + ], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--keep-sandboxes=" + ], + "env_var": "PANTS_KEEP_SANDBOXES", + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "indicatif-spinner", + "experimental-prodash" + ], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dynamic-ui-renderer=" + ], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.13/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]use-deprecated-directory-cli-args-semantics", + "config_key": "use_deprecated_directory_cli_args_semantics", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]use-deprecated-directory-cli-args-semantics" + ], + "env_var": "PANTS_USE_DEPRECATED_DIRECTORY_CLI_ARGS_SEMANTICS", + "help": "If true, Pants will use the old, deprecated semantics for directory arguments like `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test dir`: directories are shorthand for the target `dir:dir`, i.e. the target that leaves off `name=`.\n\nIf false, Pants will use the new semantics: directory arguments will match all files and targets in the directory, e.g. `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test dir` will run all tests in `dir`.\n\nThe new semantics will become the default in Pants 2.14, and the old semantics will be removed in 2.15.\n\nThis also impacts the behavior of the `tailor` goal. If this option is true, `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 tailor` without additional arguments will run over the whole project, and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 tailor dir` will run over `dir` and all recursive sub-directories. If false, you must specify arguments, like `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 tailor ::` to run over the whole project; specifying a directory will only add targets for that directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--use-deprecated-directory-cli-args-semantics", + "--no-use-deprecated-directory-cli-args-semantics" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-deprecated-directory-cli-args-semantics", + "--no-use-deprecated-directory-cli-args-semantics" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]use-deprecated-pex-binary-run-semantics", + "config_key": "use_deprecated_pex_binary_run_semantics", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]use-deprecated-pex-binary-run-semantics" + ], + "env_var": "PANTS_USE_DEPRECATED_PEX_BINARY_RUN_SEMANTICS", + "help": "If `true`, `run`ning a `pex_binary` will run your firstparty code by copying sources to a sandbox (while still using a PEX for thirdparty dependencies). Additionally, you can refer to the `pex_binary` using the value of its `entry_point` field (if it is a filename).\n\nIf `false`, `run`ning a `pex_binary` will build the PEX via `package` and run it directly. This makes `run` equivalent to using `package` and running the artifact. Additionally, the binary must be `run` using the `pex_binary`'s address, as passing a filename to `run` will run the `python_source`.\n\nNote that support has been added to Pants to allow you to `run` any `python_source`, so setting this to `true` should be reserved for maintaining backwards-compatibility with previous versions of Pants. Additionally, you can remove any `pex_binary` targets that exist solely for running Python code (and aren't meant to be packaged).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--use-deprecated-pex-binary-run-semantics", + "--no-use-deprecated-pex-binary-run-semantics" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-deprecated-pex-binary-run-semantics", + "--no-use-deprecated-pex-binary-run-semantics" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": "Use the `cache_content_behavior` option instead.", + "removal_version": "2.15.0.dev1", + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.14.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": "Use the option `--filter-address-regex` instead, with `-` in front of the regex. For example, `--exclude-target-regexp=dir/` should become `--filter-address-regex=-dir/`.\n\nThe `--filter` options can now be used with any goal, not only the `filter` goal, so there is no need for this option anymore.", + "removal_version": "2.14.0.dev0", + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.14.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": "Use `[GLOBAL].unmatched_build_file_globs` instead, which behaves the same. This option was renamed for clarity with the new `[GLOBAL].unmatched_cli_globs` option.", + "removal_version": "2.14.0.dev0", + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "UnmatchedBuildFileGlobs", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "ignore", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.14.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": "This option is no longer useful with Pants because we have goals that work without any targets, e.g. the `count-loc` goal or the `regex-lint` linter from the `lint` goal. This option caused us to error on valid use cases.\n\nFor goals that require targets, like `list`, the unowned file will simply be ignored. If no owners are found at all, most goals will warn and some like `run` will error.", + "removal_version": "2.14.0.dev0", + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ignore" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.13/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.13/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-thrift-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--thrift-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-expected-version=" + ], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake==1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-version=" + ], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake==1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-lockfile=" + ], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/lint/autoflake/autoflake.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=autoflake`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "help": "Don't use Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [ + "--remove-all-unused-imports" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "--remove-all-unused-imports" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-export" + ], + "env_var": "PANTS_AUTOFLAKE_EXPORT", + "help": "If true, export a virtual environment with Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-export", + "--no-autoflake-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython==3.1.18" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython==3.1.18" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/lint/bandit/bandit.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=bandit`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-export" + ], + "env_var": "PANTS_BANDIT_EXPORT", + "help": "If true, export a virtual environment with Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-export", + "--no-bandit-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==22.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==22.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/lint/black/black.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-export" + ], + "env_var": "PANTS_BLACK_EXPORT", + "help": "If true, export a virtual environment with Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-export", + "--no-black-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-version=" + ], + "env_var": "PANTS_BUF_VERSION", + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-template=" + ], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-format-skip" + ], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "help": "Don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-skip", + "--no-buf-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--format-skip", + "--no-format-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-lint-skip" + ], + "env_var": "PANTS_BUF_LINT_SKIP", + "help": "Don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-skip", + "--no-buf-lint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-skip", + "--no-lint-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--format-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--lint-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.13/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--check-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_CHECK_ONLY", + "help": "Only run these checkerss and skip all others.\n\nThe checkers names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkerss.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--check-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependees=transitive\"\n\nThis would allow you to run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 green all-changed`, which is shorthand for `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependees=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.0-M5-18-gfebf9838c", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.0-M5-18-gfebf9838c" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.5,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.5,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/subsystems/coverage_py.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=coverage-py`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil'].\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "debug-adapter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-host=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-host" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--host" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-port=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "is_goal": false, + "provider": "pants.core", + "scope": "debug-adapter" + }, + "debugpy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-version=", + "config_key": "version", + "default": "debugpy==1.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-version=" + ], + "env_var": "PANTS_DEBUGPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy==1.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.11" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.11" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-lockfile=" + ], + "env_var": "PANTS_DEBUGPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/subsystems/debugpy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=debugpy`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-console-script=" + ], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-entry-point=" + ], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DEBUGPY_ARGS", + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "debugpy" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees. If unspecified, list direct dependees only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/lint/docformatter/docformatter.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=docformatter`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-export" + ], + "env_var": "PANTS_DOCFORMATTER_EXPORT", + "help": "If true, export a virtual environment with docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-export", + "--no-docformatter-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find the Docker client and any tools required.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-tools=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_TOOLS", + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tools" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tools" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-tailor" + ], + "env_var": "PANTS_DOCKER_TAILOR", + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tailor", + "--no-docker-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-context-root=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-context-root" + ], + "typ": "workspace_path", + "unscoped_cmd_line_args": [ + "--default-context-root" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-verbose" + ], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-verbose", + "--no-build-verbose" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-version=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-lockfile=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/docker/subsystems/dockerfile.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=dockerfile-parser`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.0.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.0.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.0.7|macos_arm64 |cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.0.7|macos_arm64 |cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]download-terraform-tailor" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]experimental-bsp-server" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--server", + "--no-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": [ + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-runner-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runner-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-groups-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--groups-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-bsp" + }, + "experimental-explorer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-address=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-port=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run the Pants Explorer Web UI server.", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-explorer" + }, + "export": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.backend.docker", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.9.2,<4.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.9.2,<4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/lint/flake8/flake8.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=flake8`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add 'build-support/flake8' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.13/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n ```\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n ```\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[flake8].extra_requirements`.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Flake8 plugins such as 'flake8-plugins' so that the third-party requirements used by your plugin, like `flake8`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-export" + ], + "env_var": "PANTS_FLAKE8_EXPORT", + "help": "If true, export a virtual environment with Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-export", + "--no-flake8-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.flake8", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-batch-size=" + ], + "env_var": "PANTS_FMT_BATCH_SIZE", + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FMT_ONLY", + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from the option `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for Python third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "go-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "help": "Don't use gofmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-go-mod-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-package-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-binary-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-minimum-expected-version=" + ], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-minimum-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--minimum-expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-expected-version=", + "config_key": "expected_version", + "default": "1.17", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.14.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--golang-expected-version=" + ], + "env_var": "PANTS_GOLANG_EXPECTED_VERSION", + "help": "The Go version you are using, such as `1.17`.\n\nPants will only use Go distributions from `--go-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": "Use `[golang].minimum_expected_version` instead, which is more flexible. Pants will now work if your local Go binary is newer than the expected minimum version; e.g. Go 1.18 works with the version set to `1.17`.", + "removal_version": "2.14.0.dev0", + "scoped_cmd_line_args": [ + "--golang-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "help": "Don't use Google Java Format when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "help": "Don't use Hadolint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-version=" + ], + "env_var": "PANTS_HELM_VERSION", + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-template=" + ], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-tailor" + ], + "env_var": "PANTS_HELM_TAILOR", + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor", + "--no-helm-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-lint-strict" + ], + "env_var": "PANTS_HELM_LINT_STRICT", + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-strict", + "--no-lint-strict" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-default-registry-repository=" + ], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-default-registry-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-registry-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "helm-unittest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.2.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.2.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-template=" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "XUnit", + "NUnit", + "JUnit" + ], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "help": "Output type used for the test report", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-output-type" + ], + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": [ + "--output-type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-unittest" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython>=7.34,<8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython>=7.34,<8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/subsystems/ipython.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=ipython`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/lint/isort/isort.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=isort`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-export" + ], + "env_var": "PANTS_ISORT_EXPORT", + "help": "If true, export a virtual environment with isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-export", + "--no-isort-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]javac-tailor-source-targets" + ], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-tool-jdk=" + ], + "env_var": "PANTS_JVM_TOOL_JDK", + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-tool-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--tool-jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-global-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-global-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--global-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like ['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "kotlin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-tailor-source-targets" + ], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-version-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin" + }, + "kotlin-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-imports" + ], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-consumed-types" + ], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Kotlin targets.", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin-infer" + }, + "kotlinc": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-plugins-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlinc" + }, + "ktlint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-version=" + ], + "env_var": "PANTS_KTLINT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.pinterest:ktlint:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.pinterest:ktlint:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-lockfile=" + ], + "env_var": "PANTS_KTLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ktlint-skip" + ], + "env_var": "PANTS_KTLINT_SKIP", + "help": "Don't use Ktlint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-skip", + "--no-ktlint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "scope": "ktlint" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/subsystems/lambdex.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=lambdex`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "provider": "pants.backend.awslambda.python", + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-batch-size=" + ], + "env_var": "PANTS_LINT_BATCH_SIZE", + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_LINT_ONLY", + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-formatters" + ], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt lint ::`, there should be little performance benefit to using this flag. Pants will reuse the results from `fmt` when running `lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.950", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.950" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/typecheck/mypy/mypy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`. Tip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your MyPy plugins such as 'mypy-plugins' so that the third-party requirements used by your plugin, like `mypy`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement` target. Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-export" + ], + "env_var": "PANTS_MYPY_EXPORT", + "help": "If true, export a virtual environment with MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-export", + "--no-mypy-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python.typecheck.mypy", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "protobuf<3.21" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "protobuf<3.21" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-protobuf`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FROM", + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.108", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-version=" + ], + "env_var": "PANTS_PEX_CLI_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.108,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.108" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.108|macos_arm64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|macos_x86_64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|linux_x86_64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|linux_arm64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.108|macos_arm64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|macos_x86_64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|linux_x86_64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|linux_arm64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.108,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-template=" + ], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "poetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-version=", + "config_key": "version", + "default": "poetry==1.1.14", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-version=" + ], + "env_var": "PANTS_POETRY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "poetry==1.1.14" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to generate lockfiles for third-party Python dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "poetry" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-tailor" + ], + "env_var": "PANTS_PROTOC_TAILOR", + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-tailor", + "--no-protoc-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.11.0,<2.12", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.11.0,<2.12" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/lint/pylint/pylint.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pylint`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.13/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Pylint plugins such as 'pylint-plugins' so that the third-party requirements used by your plugin, like `pylint`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-export" + ], + "env_var": "PANTS_PYLINT_EXPORT", + "help": "If true, export a virtual environment with Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-export", + "--no-pylint-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pylint", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-version=", + "config_key": "version", + "default": "pyoxidizer==0.18.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-version=" + ], + "env_var": "PANTS_PYOXIDIZER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer==0.18.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.8,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.8,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-console-script=" + ], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-entry-point=" + ], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest==7.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest==7.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/subsystems/pytest.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pytest`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-export" + ], + "env_var": "PANTS_PYTEST_EXPORT", + "help": "If true, export a virtual environment with Pytest when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-export", + "--no-pytest-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.13/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-resolves" + ], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nWarning: the `generate-lockfiles` goal does not yet work if you have local requirements, regardless of using Pex vs. Poetry for the lockfile generator. Support is coming in a future Pants release. In the meantime, the workaround is to host the files in a custom repository with `[python-repos]` (https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies#custom-repositories).\n\nYou may also run into issues generating lockfiles when using Poetry as the generator, rather than Pex. See the option `[python].lockfile_generator` for more information.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.13/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-default-resolve=" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python.interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use ['==3.9.*'] via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to ['==3.7.*'], then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated. Use `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": [ + "pex", + "poetry" + ], + "comma_separated_choices": "pex, poetry", + "comma_separated_display_args": "--python-lockfile-generator=", + "config_key": "lockfile_generator", + "default": "pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-lockfile-generator=" + ], + "env_var": "PANTS_PYTHON_LOCKFILE_GENERATOR", + "help": "Whether to use Pex or Poetry with the `generate-lockfiles` goal.\n\nPoetry does not support these features:\n\n 1) `[python-repos]` for custom indexes/cheeseshops.\n 2) VCS (Git) requirements.\n 3) `[GLOBAL].ca_certs_path`.\n\nIf you use any of these features, you should use Pex.\n\nSeveral users have also had issues with how Poetry's lockfile generation handles environment markers for transitive dependencies; certain dependencies end up with nonsensical environment markers which cause the dependency to not be installed, then for Pants/Pex to complain the dependency is missing, even though it's in the lockfile. There is a workaround: for `[python].resolves`, manually create a `python_requirement` target for the problematic transitive dependencies so that they are seen as direct requirements, rather than transitive. For tool lockfiles, add the problematic transitive dependency to `[tool].extra_requirements`, e.g. `[isort].extra_requirements`. Then, regenerate the lockfile(s) with the `generate-lockfiles` goal. Alternatively, use Pex for generation.\n\nFinally, installing from a Poetry-generated lockfile is slower than installing from a Pex lockfile. When using a Pex lockfile, Pants will only install the subset needed for the current task.\n\nHowever, Pex lockfile generation is a new feature. Given how vast the Python packaging ecosystem is, it is possible you may experience edge cases / bugs we haven't yet covered. Bug reports are appreciated! https://github.com/pantsbuild/pants/issues/new/choose\n\nNote that while Pex generates locks in a proprietary JSON format, you can use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export` goal for Pants to create a virtual environment for interoperability with tools like IDEs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-lockfile-generator" + ], + "typ": "LockfileGenerator", + "unscoped_cmd_line_args": [ + "--lockfile-generator" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolves-generate-lockfiles" + ], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles as a workaround for the issues described in the `[python].lockfile_generator` option, if you are not yet ready to use Pex.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nWe generally do not recommend this if `[python].lockfile_generator` is set to `\"pex\"` thanks to performance enhancements we've made. When using Pex lockfiles, you should get similar performance to using this option but without the downsides mentioned below.\n\nOtherwise, if not using Pex lockfiles, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile changes, rather than just those that depend on the changed requirement. 2) Requirements unneeded by a test/run/repl will be present on the sys.path, which might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-source-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-empty-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-default-run-goal-use-sandbox" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-no-binary=\"['', '', ...]\"", + "config_key": "no_binary", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-no-binary=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NO_BINARY", + "help": "Do not use binary packages (i.e., wheels) for these 3rdparty projects.\n\nAlso accepts `:all:` to disable all binary packages.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.\n\nNote: Only takes effect if you use Pex lockfiles. Set `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-no-binary" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--no-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-only-binary=\"['', '', ...]\"", + "config_key": "only_binary", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-only-binary=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_ONLY_BINARY", + "help": "Do not use source packages (i.e., sdists) for these 3rdparty projects.\n\nAlso accepts `:all:` to disable all source packages.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.\n\nNote: Only takes effect if you use Pex lockfiles. Set `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-only-binary" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]python-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "If true, don't add `python_sources` targets for solitary `__init__.py` files with the `tailor` goal.\n\nSolitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nSet to false if you commonly have packages containing real code in `__init__.py` without other `.py` files in the package.", + "removal_hint": "Use `[python].tailor_ignore_empty_init_files`, which checks that the `__init__.py`file is both solitary and also empty.", + "removal_version": "2.15.0.dev0", + "scoped_cmd_line_args": [ + "--python-tailor-ignore-solitary-init-files", + "--no-python-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "help": "A list of paths to search for Python interpreters.\n\nWhich interpeters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n * ``, the contents of the PATH env var\n * ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n * ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n * ``, all Python versions under $(pyenv root)/versions\n * ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n * ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-assets" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--assets", + "--no-assets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-assets-min-slashes=" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "help": "If --assets is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets-min-slashes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--assets-min-slashes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": [ + "always", + "content_only", + "never" + ], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-init-files=" + ], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-init-files" + ], + "typ": "InitFilesInference", + "unscoped_cmd_line_args": [ + "--init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "ignore", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ignore" + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.14.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor `__init__.py` files, only they will not be 'proper' dependencies, e.g. they will not show up in `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": "Use the more powerful option `[python-infer].init_files`. For identical behavior, set to 'always'. Otherwise, we recommend the default of `content_only` (simply delete the option `[python-infer].inits` to trigger the default).", + "removal_version": "2.14.0.dev1", + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.13/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-thrift-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.31.0,<2.32", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-version=" + ], + "env_var": "PANTS_PYUPGRADE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.31.0,<2.32" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-lockfile=" + ], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/lint/pyupgrade/pyupgrade.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pyupgrade`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "help": "Don't use pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-export" + ], + "env_var": "PANTS_PYUPGRADE_EXPORT", + "help": "If true, export a virtual environment with pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-export", + "--no-pyupgrade-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-detail-level=" + ], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-cleanup", + "config_key": "cleanup", + "default": true, + "deprecated_message": "Upcoming deprecation in version: 2.15.0.dev1, is scheduled to be removed in version: 2.16.0.dev1.", + "deprecation_active": false, + "display_args": [ + "--[no-]run-cleanup" + ], + "env_var": "PANTS_RUN_CLEANUP", + "help": "Whether to clean up the temporary directory in which the binary is chrooted. Set this to false to retain the directory, e.g., for debugging.\n\nNote that setting the global --keep-sandboxes option may also conserve this directory, along with those of all other processes that Pants executes. This option is more selective and controls just the target binary's directory.", + "removal_hint": "Use the global `keep_sandboxes` option instead.", + "removal_version": "2.16.0.dev1", + "scoped_cmd_line_args": [ + "--run-cleanup", + "--no-run-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cleanup", + "--no-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-debug-adapter" + ], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-debug-adapter", + "--no-run-debug-adapter" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-tailor-source-targets" + ], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-package-objects" + ], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-objects", + "--no-package-objects" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-force-add-siblings-as-dependencies" + ], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "help": "If true, add a dependency on all scala_source targets generated by the same scala_sources target generator. If false, the dependencies will only be added if [scala-infer].imports is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "help": "Don't use scalafmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-version=" + ], + "env_var": "PANTS_SCALAPB_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-lockfile=" + ], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set --scalapb-runtime-dependencies appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=63.1.0,<64.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=63.1.0,<64.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/subsystems/setuptools.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "setuptools-scm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-version=", + "config_key": "version", + "default": "setuptools-scm==6.4.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-version=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools-scm==6.4.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/subsystems/setuptools_scm.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools-scm`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-console-script=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "setuptools-scm" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-tailor" + ], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "Don't use Shellcheck when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.13/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "Don't use shfmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.13/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-memory-summary" + ], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--memory-summary", + "--no-memory-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.13/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.13/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-fmt-skip" + ], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "help": "Don't use `terraform fmt` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-version=", + "config_key": "version", + "default": "python-hcl2==3.0.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-version=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-hcl2==3.0.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-lockfile=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/terraform/hcl2.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=terraform-hcl2-parser`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-validate-skip" + ], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "help": "Don't use `terraform validate` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-report" + ], + "env_var": "PANTS_TEST_REPORT", + "help": "Write test reports to --report-dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report", + "--no-test-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--report", + "--no-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-report-dir=" + ], + "env_var": "PANTS_TEST_REPORT_DIR", + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--report-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug-adapter" + ], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies --debug.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-shard=" + ], + "env_var": "PANTS_TEST_SHARD", + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with --shard=0/3, --shard=1/3, --shard=2/3.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-shard" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shard" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-tailor" + ], + "env_var": "PANTS_THRIFT_TAILOR", + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-tailor", + "--no-thrift-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-dependency-inference" + ], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine>=3.7.1,<3.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-version=" + ], + "env_var": "PANTS_TWINE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine>=3.7.1,<3.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "colorama>=0.4.3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "colorama>=0.4.3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-lockfile=" + ], + "env_var": "PANTS_TWINE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/subsystems/twine.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=twine`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use the default CA certificate.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "help": "Don't use Twine when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "yapf", + "black" + ], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--update-build-files-formatter=" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-formatter" + ], + "typ": "Formatter", + "unscoped_cmd_line_args": [ + "--formatter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.13/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf==0.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf==0.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.13.1/src/python/pants/backend/python/lint/yapf/yapf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=yapf`.\n\nAs explained at https://www.pantsbuild.org/v2.13/docs/python-third-party-dependencies, lockfile generation via `generate-lockfiles` does not always work and you may want to manually generate the lockfile. You will want to set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "help": "Don't use yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-export" + ], + "env_var": "PANTS_YAPF_EXPORT", + "help": "If true, export a virtual environment with yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-export", + "--no-yapf-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.14.x/reference/help-all.json b/versioned_docs/version-2.14.x/reference/help-all.json new file mode 100644 index 000000000..70f655b58 --- /dev/null +++ b/versioned_docs/version-2.14.x/reference/help-all.json @@ -0,0 +1,64974 @@ +{ + "name_to_api_type_info": { + "builtins.AddPrefix": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "AddPrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.shell_command.run_shell_command", + "pants.core.goals.export.export", + "pants.core.target_types.relocate_files", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "builtins.Digest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "dependees": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.helm.resolve.fetch", + "pants.backend.helm.util_rules.chart_metadata", + "pants.jvm.strip_jar.strip_jar" + ], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "Digest", + "provider": "builtins, pants.backend.experimental.helm, pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.core.util_rules.archive.create_archive", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_analysis.generate_import_config", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.generate_setup_py", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "builtins.FileDigest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.util_rules" + ], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "FileDigest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "builtins.MergeDigests": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "MergeDigests", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.terraform.style.setup_terraform_style", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.source_files.determine_source_files", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "builtins.RemovePrefix": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "RemovePrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda" + ], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonAwsLambdaFieldSet(address: 'Address', handler: 'PythonAwsLambdaHandlerField', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PexCompletePlatformsField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.target_types.InferPythonLambdaHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency" + ], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "InferPythonLambdaHandlerDependency", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.target_types.ResolvePythonAwsHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler" + ], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [], + "documentation": "ResolvePythonAwsHandlerRequest(field: pants.backend.awslambda.python.target_types.PythonAwsLambdaHandlerField)", + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "ResolvePythonAwsHandlerRequest", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency" + ] + }, + "pants.backend.awslambda.python.target_types.ResolvedPythonAwsHandler": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "ResolvedPythonAwsHandler(val: str, file_name_used: bool)", + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency" + ] + }, + "pants.backend.build_files.fmt.black.register.BlackRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt" + ], + "dependees": [ + "pants.backend.build_files.fmt.black" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.black.register", + "name": "BlackRequest", + "provider": "pants.backend.build_files.fmt.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "_FmtBuildFilesRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.rules.BuildifierRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt" + ], + "dependees": [ + "pants.backend.build_files.fmt.buildifier" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.rules", + "name": "BuildifierRequest", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "_FmtBuildFilesRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.subsystem.Buildifier": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt" + ], + "dependees": [ + "pants.backend.build_files.fmt.buildifier" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.subsystem", + "name": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [ + "construct_scope_buildifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.yapf.register.YapfRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.yapf.register.yapf_fmt" + ], + "dependees": [ + "pants.backend.build_files.fmt.yapf" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.yapf.register", + "name": "YapfRequest", + "provider": "pants.backend.build_files.fmt.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "_FmtBuildFilesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegen": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegen", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegenSubsystem": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegenSubsystem", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GenerateGoFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GenerateGoFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GoCodegenBuildProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg_target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GoCodegenBuildProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoCodegenBuildRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.ProtobufGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "pants.backend.go.dependency_inference" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "ProtobufGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtobufPackageBuildRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [], + "documentation": "Request type used to trigger setup of a BuildGoPackageRequest for entire generated Go\nProtobuf package.\n\nThis type is separate so that a build of the full package can be cached no matter which one of\nits component source files was requested. This occurs because a request to build any one of the\nsource files will be converted into this type and then built.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtobufPackageBuildRequest", + "provider": "pants.backend.codegen.protobuf.go.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtocPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.platform" + ], + "documentation": "_SetupGoProtocPlugin(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.InferProtobufJavaRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "InferProtobufJavaRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "documentation": "ProtobufJavaGrpcRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [], + "documentation": "ProtobufJavaGrpcRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "documentation": "ProtobufJavaRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [], + "documentation": "ProtobufJavaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.rules.GenerateJavaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GenerateJavaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.rules.GrpcJavaToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GrpcJavaToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.java.rules, pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ] + }, + "pants.backend.codegen.protobuf.java.rules.ProtobufJavaGrpcPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs" + ], + "documentation": "ProtobufJavaGrpcPlugin(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.subsystem.JavaProtobufGrpcSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.subsystem", + "name": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "construct_scope_protobuf_java_grpc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.BufFormatRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format" + ], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.format_rules", + "name": "BufFormatRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format" + ] + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.BufLintRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.lint_rules", + "name": "BufLintRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufFormatField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufFormatField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufLintField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufLintField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.subsystem.BufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.subsystem", + "name": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [ + "construct_scope_buf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.InferProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "InferProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.ProtobufMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A mapping of stripped .proto file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protoc.Protoc": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protoc", + "name": "Protoc", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_protoc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonInterpreterConstraintsField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonInterpreterConstraintsField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonResolveField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonResolveField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.PythonSourceRootField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "PythonSourceRootField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.grpc_python_plugin.GrpcPythonPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.grpc_python_plugin", + "name": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_grpc_python_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.PythonProtobufMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper", + "name": "PythonProtobufMappingMarker", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.InferPythonProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "InferPythonProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.MypyProtobufLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "MypyProtobufLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufMypyPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_mypy_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_python_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.rules.GeneratePythonFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.rules", + "name": "GeneratePythonFromProtobufRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.InferScalaPBRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "InferScalaPBRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.dependency_inference", + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPBRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [], + "documentation": "ScalaPBRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.scala.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.GenerateScalaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "GenerateScalaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [], + "documentation": "MaterializeJvmPluginRequest(plugin: 'PluginArtifactSpec')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [], + "documentation": "MaterializeJvmPluginsRequest(plugins: 'tuple[PluginArtifactSpec, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginsRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugin": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.java", + "pants.jvm.resolve.common" + ], + "documentation": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugins": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalaPBShimCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalapbcToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalapbcToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.scala.rules, pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ] + }, + "pants.backend.codegen.protobuf.scala.subsystem.ScalaPBSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.subsystem", + "name": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "construct_scope_scalapb" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.tailor.PutativeProtobufTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeProtobufTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.codegen.protobuf.tailor", + "name": "PutativeProtobufTargetsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.AllProtobufTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.additional_fields.ThriftPythonResolveField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.additional_fields", + "name": "ThriftPythonResolveField", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.PythonThriftMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper", + "name": "PythonThriftMappingMarker", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.GeneratePythonFromThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "GeneratePythonFromThriftRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.InferApacheThriftPythonDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "InferApacheThriftPythonDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.subsystem.ThriftPythonSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.subsystem", + "name": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_python_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.ApacheThriftSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.environment" + ], + "documentation": "ApacheThriftSetup(path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.GenerateThriftSourcesRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [], + "documentation": "GenerateThriftSourcesRequest(thrift_source_field: 'ThriftSourceField', lang_id: 'str', lang_options: 'tuple[str, ...]', lang_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GenerateThriftSourcesRequest", + "provider": "pants.backend.codegen.thrift.apache.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.rules.GeneratedThriftSources": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.thrift.apache.rules", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "documentation": "GeneratedThriftSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.subsystem.ApacheThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.subsystem", + "name": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_apache_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.InferThriftDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "InferThriftDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.ThriftMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A mapping of stripped .thrift file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.subsystem.ThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.subsystem", + "name": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.tailor.PutativeThriftTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeThriftTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.codegen.thrift.tailor", + "name": "PutativeThriftTargetsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.AllThriftTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThrift": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [ + "pants.backend.codegen.thrift.thrift_parser", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python" + ], + "dependencies": [], + "documentation": "ParsedThriftRequest(sources_field: 'ThriftSourceField')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThriftRequest", + "provider": "pants.backend.codegen.thrift.thrift_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.docker.goals.package_image.DockerFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "DockerFieldSet(address: 'Address', context_root: 'DockerImageContextRootField', registries: 'DockerImageRegistriesField', repository: 'DockerImageRepositoryField', source: 'DockerImageSourceField', tags: 'DockerImageTagsField', target_stage: 'DockerImageTargetStageField')", + "is_union": false, + "module": "pants.backend.docker.goals.package_image", + "name": "DockerFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageFieldSet": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core" + ], + "documentation": "PublishDockerImageFieldSet(address: 'Address', registries: 'DockerImageRegistriesField', skip_push: 'DockerImageSkipPushField')", + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.docker.goals.tailor.PutativeDockerTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeDockerTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.goals.tailor", + "name": "PutativeDockerTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.rules.HadolintRequest": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint" + ], + "dependees": [ + "pants.backend.docker.lint.hadolint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.rules", + "name": "HadolintRequest", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.skip_field.SkipHadolintField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.skip_field", + "name": "SkipHadolintField", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.subsystem.Hadolint": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint" + ], + "dependees": [ + "pants.backend.docker.lint.hadolint" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.subsystem", + "name": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [ + "construct_scope_hadolint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.DockerOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "DockerOptions", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.docker.lint.hadolint" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.engine.target" + ], + "documentation": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', build_args: 'DockerBuildArgs' = DockerBuildArgs(), copy_source_paths: 'tuple[str, ...]' = (), from_image_build_args: 'DockerBuildArgs' = DockerBuildArgs(), version_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfo", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfoRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerfileInfoRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfoRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParseRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerfileParseRequest(sources_digest: 'Digest', args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParseRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParser": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParser", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_dockerfile_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParserLockfileSentinel", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "ParserSetup", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.AllDockerImageTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.target_types", + "name": "AllDockerImageTargets", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.target_types.all_docker_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.DockerImageTagsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to provide additional image tags.", + "is_union": true, + "module": "pants.backend.docker.target_types", + "name": "DockerImageTagsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.dependencies.InferDockerDependencies": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dependencies", + "name": "InferDockerDependencies", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinary": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core", + "pants.engine.environment" + ], + "documentation": "The `docker` binary.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinary", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_binary.get_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.find_docker" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerBinaryRequest()", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinaryRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgs": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgs", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerBuildArgsRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContext": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', upstream_image_ids: 'tuple[str, ...]', dockerfile: 'str', interpolation_context: 'InterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContext", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContextRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerBuildContextRequest(address: 'Address', build_upstream_images: 'bool' = False)", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContextRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.GenerateDockerContextFiles": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "This translates all files from acceptable Source fields for the docker context using the\n`codegen` machinery.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "GenerateDockerContextFiles", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironment": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.environment" + ], + "documentation": "DockerBuildEnvironment(environment: 'Environment')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironment", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "DockerBuildEnvironmentRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironmentRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.dockerfile.GenerateDockerfileRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dockerfile", + "name": "GenerateDockerfileRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.AllGoModuleImportPathsMappings": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMapping": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.target_type_rules" + ], + "documentation": "Maps import paths (as strings) to one or more addresses of targets providing those import\npath(s) for a single Go module.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappings": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "Import path mappings for all Go modules in the repository.\n\nThis type is requested from plugins which provide implementations for the GoCodegenBuildRequest\nunion and then merged.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappingsHook": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "An entry point for a specific implementation of mapping Go import paths to owning targets.\n\nAll implementations will be merged together. The core Go dependency inference rules will request\nthe `GoModuleImportPathsMappings` type using implementations of this union.", + "is_union": true, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappingsHook", + "provider": "pants.backend.go.dependency_inference", + "returned_by_rules": [], + "union_members": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "ProtobufGoModuleImportPathsMappingsHook" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinary": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.go_sources.load_go_binary", + "pants.core" + ], + "documentation": "LoadedGoBinary(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "LoadedGoBinaryRequest(dir_name: 'str', file_names: 'tuple[str, ...]', output_name: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinaryRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.goals.check.GoCheckRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.check.check_go" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.check", + "name": "GoCheckRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.package_binary.GoBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "GoBinaryFieldSet(address: 'Address', main: pants.backend.go.target_types.GoBinaryMainPackageField, output_path: pants.core.goals.package.OutputPathField)", + "is_union": false, + "module": "pants.backend.go.goals.package_binary", + "name": "GoBinaryFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.tailor.PutativeGoTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeGoTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "PutativeGoTargetsRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.GoTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request", + "pants.backend.go.goals.test.generate_go_tests_debug_request", + "pants.backend.go.goals.test.run_go_tests" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "GoTestFieldSet(address: 'Address', sources: 'GoPackageSourcesField', dependencies: 'Dependencies', timeout: 'GoTestTimeoutField', extra_env_vars: 'GoTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.rules.GofmtRequest": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.rules", + "name": "GofmtRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.skip_field.SkipGofmtField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.skip_field", + "name": "SkipGofmtField", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.subsystem.GofmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.subsystem", + "name": "GofmtSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_gofmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.GolangSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "GolangSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_golang" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.gotest.GoTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.gotest", + "name": "GoTestSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_go_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.FirstPartyGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.dependency_inference" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "FirstPartyGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GenerateTargetsFromGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GenerateTargetsFromGoModRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GoImportPathMappingRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoImportPathMappingRequest(go_mod_address: 'Address')", + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GoImportPathMappingRequest", + "provider": "pants.backend.go.target_type_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.target_type_rules.InferGoPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InferGoThirdPartyPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoThirdPartyPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_types.GoOwningGoModAddressField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_types", + "name": "GoOwningGoModAddressField", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.assembly.AssemblyPostCompilation": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "documentation": "AssemblyPostCompilation(result: 'FallibleProcessResult', merged_output_digest: 'Digest | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssemblyPostCompilation", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.AssemblyPostCompilationRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Link the assembly_digests into the compilation_result.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssemblyPostCompilationRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.AssemblyPreCompilationRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Add a `symabis` file for consumption by Go compiler and assemble all `.s` files.\n\nSee https://github.com/bazelbuild/rules_go/issues/1893.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssemblyPreCompilationRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleAssemblyPreCompilation": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "documentation": "FallibleAssemblyPreCompilation(result: 'AssemblyPreCompilation | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleAssemblyPreCompilation", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackage": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.binary", + "pants.build_graph.address", + "pants.core", + "pants.engine.target" + ], + "documentation": "GoBinaryMainPackage(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoBinaryMainPackageRequest(field: 'GoBinaryMainPackageField')", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackageRequest", + "provider": "pants.backend.go.util_rules.binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.InferGoBinaryMainDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "InferGoBinaryMainDependencyRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_pkg.BuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go, pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuiltGoPackage": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.go.rules", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuiltGoPackage": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core", + "pants.engine.process" + ], + "documentation": "Fallible version of `BuiltGoPackage` with error details.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoCompileActionIdRequest(build_request: 'BuildGoPackageRequest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg" + ], + "documentation": "GoCompileActionIdResult(action_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "RenderEmbedConfigRequest(embed_config: 'EmbedConfig | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderedEmbedConfig": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "documentation": "RenderedEmbedConfig(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Build a `go_package`, `go_third_party_package`, or Go codegen target and its dependencies as\n`__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageTargetRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.GoCodegenBuildRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependencies": [], + "documentation": "The plugin hook to build/compile Go code.\n\nNote that you should still use the normal `GenerateSourcesRequest` plugin hook from\n`pants.engine.target` too, which is necessary for integrations like the `export-codegen` goal.\nHowever, that is only helpful to generate the raw `.go` files; you also need to use this\nplugin hook so that Pants knows how to compile those generated `.go` files.\n\nSubclass this and set the class property `generate_from`. Define a rule that goes from your\nsubclass to `BuildGoPackageRequest` - the request must result in valid compilation, which you\nshould test for by using `rule_runner.request(BuiltGoPackage, BuildGoPackageRequest)` in your\ntests. For example, make sure to set up any third-party packages needed by the generated code.\nFinally, register `UnionRule(GoCodegenBuildRequest, MySubclass)`.", + "is_union": true, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "GoCodegenBuildRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [ + "GoCodegenBuildProtobufRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Apply code coverage to a package using `go tool cover`.", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "documentation": "ApplyCodeCoverageResult(digest: 'Digest', cover_file_metadatas: 'tuple[FileCodeCoverageMetadata, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "ApplyCodeCoverageToFileRequest(digest: 'Digest', go_file: 'str', cover_go_file: 'str', mode: 'GoCoverMode', cover_var: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.coverage" + ], + "documentation": "ApplyCodeCoverageToFileResult(digest: 'Digest', cover_go_file: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GenerateCoverageSetupCodeRequest(packages: 'FrozenOrderedSet[BuiltGoPackageCodeCoverageMetadata]', cover_mode: 'GoCoverMode')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "documentation": "GenerateCoverageSetupCodeResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.coverage_output.GoCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "GoCoverageDataCollection", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "RenderGoCoverageReportRequest(raw_report: 'GoCoverageData')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportRequest", + "provider": "pants.backend.go.util_rules.coverage_output", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.coverage_output", + "pants.core" + ], + "documentation": "RenderGoCoverageReportResult(coverage_report: 'FilesystemCoverageReport')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "Metadata for a Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgDigest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "The source files for a Go package, but fallible if embed preparation failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "FirstPartyPkgAnalysisRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgDigestRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "FirstPartyPkgDigestRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgDigestRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPath": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.first_party_pkg" + ], + "documentation": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "FirstPartyPkgImportPathRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPathRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.go_bootstrap.GoBootstrap": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "GoBootstrap(raw_go_search_paths: 'tuple[str, ...]', environment: 'Environment', asdf_standard_tool_paths: 'tuple[str, ...]', asdf_local_tool_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_bootstrap", + "name": "GoBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.AllGoModTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "AllGoModTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.GoModInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "documentation": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfo", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.GoModInfoRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoModInfoRequest(source: 'Address | GoModSourcesField')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfoRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "NearestAncestorGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "documentation": "NearestAncestorGoModResult(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoMod": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.build_graph.address", + "pants.engine.target" + ], + "documentation": "OwningGoMod(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoMod", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "OwningGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.goroot.GoRoot": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "Path to the Go installation (the `GOROOT`).", + "is_union": false, + "module": "pants.backend.go.util_rules.goroot", + "name": "GoRoot", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibImports": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.import_analysis.generate_import_config" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.helm" + ], + "documentation": "A mapping of standard library import paths to the `.a` static file paths for that import\npath.\n\nFor example, \"net/smtp\": \"/absolute_path_to_goroot/pkg/darwin_arm64/net/smtp.a\".", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibImports", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.ImportConfig": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.import_analysis", + "pants.core" + ], + "documentation": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "ImportConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.generate_import_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.import_analysis.ImportConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_analysis.generate_import_config" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Create an `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "ImportConfigRequest", + "provider": "pants.backend.go.util_rules.import_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.link.LinkGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Link a Go binary from package archives and an import configuration.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkGoBinaryRequest", + "provider": "pants.backend.go.util_rules.link", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.link.LinkedGoBinary": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.link" + ], + "documentation": "A linked Go binary stored in a `Digest`.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.pkg_analyzer.PackageAnalyzerSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "PackageAnalyzerSetup(digest: Digest, path: str)", + "is_union": false, + "module": "pants.backend.go.util_rules.pkg_analyzer", + "name": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkProcess": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoSdkProcess(command: 'Iterable[str]', *, description: 'str', env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), working_dir: 'str | None' = None, output_files: 'Iterable[str]' = (), output_directories: 'Iterable[str]' = (), allow_downloads: 'bool' = False, platform: 'Platform | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkProcess", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkRunSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GoSdkToolIDRequest(tool_name: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDRequest", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.sdk" + ], + "documentation": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GenerateTestMainRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "GenerateTestMainRequest(digest: 'Digest', test_paths: 'FrozenOrderedSet[str]', xtest_paths: 'FrozenOrderedSet[str]', import_path: 'str', register_cover: 'bool', address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GenerateTestMainRequest", + "provider": "pants.backend.go.util_rules.tests_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GeneratedTestMain": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.tests_analysis", + "pants.core", + "pants.engine.process" + ], + "documentation": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GeneratedTestMain", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackages": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core" + ], + "documentation": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "AllThirdPartyPackagesRequest(go_mod_digest: 'Digest', go_mod_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackagesRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyModuleRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "AnalyzeThirdPartyModuleRequest(go_mod_digest: 'Digest', go_mod_path: 'str', import_path: 'str', name: 'str', version: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyModuleRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "AnalyzeThirdPartyPackageRequest(pkg_json: 'FrozenDict[str, Any]', module_sources_digest: 'Digest', module_sources_path: 'str', module_import_path: 'str', package_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyPackageRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzedThirdPartyModule": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg" + ], + "documentation": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.FallibleThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core", + "pants.engine.process" + ], + "documentation": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptors": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg" + ], + "documentation": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptors", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "ModuleDescriptorsRequest(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptorsRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [ + "pants.backend.go.util_rules.third_party_pkg" + ], + "documentation": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "dependees": [ + "pants.backend.experimental.go" + ], + "dependencies": [], + "documentation": "Request the info and digest needed to build a third-party package.\n\nThe package's module must be included in the input `go.mod`/`go.sum`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.google_cloud_function.python.rules.PythonGoogleCloudFunctionFieldSet": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ], + "dependees": [ + "pants.backend.google_cloud_function.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonGoogleCloudFunctionFieldSet(address: 'Address', handler: 'PythonGoogleCloudFunctionHandlerField', runtime: 'PythonGoogleCloudFunctionRuntime', complete_platforms: 'PexCompletePlatformsField', type: 'PythonGoogleCloudFunctionType', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.rules", + "name": "PythonGoogleCloudFunctionFieldSet", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.google_cloud_function.python.target_types.InferPythonCloudFunctionHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency" + ], + "dependees": [ + "pants.backend.google_cloud_function.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "InferPythonCloudFunctionHandlerDependency", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.google_cloud_function.python.target_types.ResolvePythonGoogleHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler" + ], + "dependees": [ + "pants.backend.google_cloud_function.python" + ], + "dependencies": [], + "documentation": "ResolvePythonGoogleHandlerRequest(field: pants.backend.google_cloud_function.python.target_types.PythonGoogleCloudFunctionHandlerField)", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "ResolvePythonGoogleHandlerRequest", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency" + ] + }, + "pants.backend.google_cloud_function.python.target_types.ResolvedPythonGoogleHandler": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.google_cloud_function.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "ResolvedPythonGoogleHandler(val: str, file_name_used: bool)", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency" + ] + }, + "pants.backend.helm.dependency_inference.chart.FirstPartyHelmChartMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.InferHelmChartDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "InferHelmChartDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.deployment.AnalyseHelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "AnalyseHelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "AnalyseHelmDeploymentRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMapping": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.helm.dependency_inference.deployment" + ], + "documentation": "A mapping between `helm_deployment` target addresses and tuples made up of a Docker image\nreference and a `docker_image` target address.\n\nThe tuples of Docker image references and addresses are stored in a YAML index so we can track\nthe locations in which the Docker image refs appear in the deployment files.", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMappingRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "FirstPartyHelmDeploymentMappingRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMappingRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.HelmDeploymentReport": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.helm.dependency_inference.deployment", + "pants.engine.fs" + ], + "documentation": "HelmDeploymentReport(address: 'Address', image_refs: 'FrozenYamlIndex[str]')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.InferHelmDeploymentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "InferHelmDeploymentDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.unittest.InferHelmUnitTestChartDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.unittest", + "name": "InferHelmUnitTestChartDependencyRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.deploy.DeployHelmDeploymentFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "DeployHelmDeploymentFieldSet(address: 'Address', description: 'DescriptionField', release_name: 'HelmDeploymentReleaseNameField', namespace: 'HelmDeploymentNamespaceField', create_namespace: 'HelmDeploymentCreateNamespaceField', sources: 'HelmDeploymentSourcesField', skip_crds: 'HelmDeploymentSkipCrdsField', no_hooks: 'HelmDeploymentNoHooksField', dependencies: 'HelmDeploymentDependenciesField', values: 'HelmDeploymentValuesField', timeout: 'HelmDeploymentTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.goals.deploy", + "name": "DeployHelmDeploymentFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.lint.HelmLintRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.lint", + "name": "HelmLintRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.package.HelmPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.package.run_helm_package" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "HelmPackageFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', output_path: 'HelmChartOutputPathField')", + "is_union": false, + "module": "pants.backend.helm.goals.package", + "name": "HelmPackageFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.HelmPublishFieldSet": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core" + ], + "documentation": "HelmPublishFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', registries: 'HelmRegistriesField', repository: 'HelmChartRepositoryField', skip_push: 'HelmSkipPushField')", + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "HelmPublishFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.PublishHelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.publish.publish_helm_chart" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "PublishHelmChartRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.tailor.PutativeHelmChartTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.tailor.find_putative_helm_targets" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeHelmChartTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.helm.goals.tailor", + "name": "PutativeHelmChartTargetsRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.resolve.artifacts.HelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "HelmArtifact", + "provider": "pants.backend.helm.resolve.artifacts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ] + }, + "pants.backend.helm.resolve.artifacts.ResolvedHelmArtifact": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.helm.resolve.artifacts" + ], + "documentation": "ResolvedHelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address', location_url: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ] + }, + "pants.backend.helm.resolve.artifacts.ThirdPartyHelmArtifactMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.resolve.fetch.FetchHelmArfifactsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "FetchHelmArfifactsRequest(field_sets: 'Iterable[HelmArtifactFieldSet]', *, description_of_origin: 'str') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchHelmArfifactsRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "FetchedHelmArtifact(artifact: 'ResolvedHelmArtifact', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifact", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifacts": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.backend.helm.resolve.fetch", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifacts", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch._StripHelmArtifactPrefixRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "_StripHelmArtifactPrefixRequest(artifact: 'ResolvedHelmArtifact', digest: 'Digest')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "_StripHelmArtifactPrefixRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ] + }, + "pants.backend.helm.subsystems.helm.HelmSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.helm", + "name": "HelmSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserLockfileSentinel", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_k8s_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.ParseKubeManifestRequest": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "ParseKubeManifestRequest(file: 'FileEntry')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParseKubeManifestRequest", + "provider": "pants.backend.helm.subsystems.k8s_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser.ParsedKubeManifest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.backend.helm.subsystems.k8s_parser", + "pants.core", + "pants.engine.process" + ], + "documentation": "ParsedKubeManifest(filename: 'str', found_image_refs: 'tuple[tuple[int, YamlPath, str], ...]')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser._HelmKubeParserTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": "_HelmKubeParserTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRenderer": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.helm.subsystems.post_renderer", + "pants.backend.helm.util_rules.post_renderer", + "pants.backend.shell", + "pants.core", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "HelmPostRenderer(exe: 'str', digest: 'Digest', immutable_input_digests: 'FrozenDict[str, Digest]', env: 'FrozenDict[str, str]', append_only_caches: 'FrozenDict[str, str]', description_of_origin: 'str')", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererLockfileSentinel", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_post_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.SetupHelmPostRenderer": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "Request for a post-renderer process that will perform a series of replacements in the\ngenerated files.", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "SetupHelmPostRenderer", + "provider": "pants.backend.helm.subsystems.post_renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.subsystems.post_renderer._HelmPostRendererTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": "_HelmPostRendererTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestPluginBinding": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.helm.util_rules.tool" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestPluginBinding", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExternalHelmPluginBinding", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "pants.backend.helm.test.unittest.run_helm_unittest" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_unittest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmChartTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_chart_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmDeploymentTargets": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmUnitTestTestTargets": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_unittest_test_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.HelmChartMetaSourceField": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "HelmChartMetaSourceField", + "provider": "pants.backend.helm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request", + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "pants.backend.helm.test.unittest.run_helm_unittest" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "HelmUnitTestFieldSet(address: 'Address', sources: 'SourcesField', source: pants.backend.helm.target_types.HelmUnitTestSourceField, dependencies: pants.backend.helm.target_types.HelmUnitTestDependenciesField, strict: pants.backend.helm.target_types.HelmUnitTestStrictField, timeout: pants.backend.helm.target_types.HelmUnitTestTimeoutField)", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.chart.FindHelmDeploymentChart": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "FindHelmDeploymentChart(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "FindHelmDeploymentChart", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChart": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.backend.helm.resolve.fetch", + "pants.backend.helm.util_rules.chart", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.target" + ], + "documentation": "HelmChart(address: 'Address', info: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChart", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmChartRequest(field_set: 'HelmChartFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChartRequest", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.HelmChartMetadata": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.backend.helm.target_types", + "pants.core", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm, pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.ParseHelmChartMetadataDigest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "Request to parse the Helm chart definition file (i.e. `Chart.yaml`) from the given digest.\n\nThe definition file is expected to be at the root of the digest.", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "ParseHelmChartMetadataDigest", + "provider": "pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.post_renderer.HelmDeploymentPostRendererRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmDeploymentPostRendererRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.post_renderer", + "name": "HelmDeploymentPostRendererRequest", + "provider": "pants.backend.helm.util_rules.post_renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.HelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet', *, cmd: 'HelmDeploymentCmd', description: 'str', extra_argv: 'Iterable[str] | None' = None, post_renderer: 'HelmPostRenderer | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "HelmDeploymentRequest", + "provider": "pants.backend.helm.util_rules.renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.RenderedHelmFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins" + ], + "documentation": "RenderedHelmFiles(address: 'Address', chart: 'HelmChart', snapshot: 'Snapshot', post_processed: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.util_rules.renderer._HelmDeploymentProcessWrapper": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core", + "pants.engine.environment" + ], + "documentation": "Intermediate representation of a `HelmProcess` that will produce a fully rendered set of\nmanifests from a given chart.\n\nThe encapsulated `process` will be side-effecting dependening on the `cmd` that was originally requested.\n\nThis is meant to only be used internally by this module.", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.sources.HelmChartRoot": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.helm.util_rules.sources", + "pants.engine.target" + ], + "documentation": "HelmChartRoot(path: 'str')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRoot", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartRootRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmChartRootRequest(source: 'HelmChartMetaSourceField')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRootRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.sources", + "pants.core" + ], + "documentation": "HelmChartSourceFiles(snapshot: 'Snapshot', unrooted_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmChartSourceFilesRequest(field_set: 'HelmChartFieldSet', include_resources: 'bool', include_files: 'bool', include_metadata: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFilesRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginBinding": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "Union type allowing Pants to discover global external Helm plugins.", + "is_union": true, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginBinding", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [ + "HelmUnitTestPluginBinding" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "Helper class to create a download request for an external Helm plugin.", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmBinary": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.environment" + ], + "documentation": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmBinary", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmPlugin": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "documentation": "HelmPlugin(info: 'HelmPluginInfo', platform: 'Platform', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugin", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.tool.HelmPlugins": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugins", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmProcess": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "HelmProcess(argv: 'Iterable[str]', *, description: 'str', input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), level: 'LogLevel' = , output_directories: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, extra_env: 'Mapping[str, str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_append_only_caches: 'Mapping[str, str] | None' = None, cache_scope: 'ProcessCacheScope | None' = None, timeout_seconds: 'int | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmProcess", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "HandleJavacOptionsRequest(bsp_target_id: pants.bsp.spec.base.BuildTargetIdentifier)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsRequest", + "provider": "pants.backend.java.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.java.bsp.rules", + "pants.base.build_root" + ], + "documentation": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.JavaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "JavaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPCompileRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPLanguageSupport", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "JavaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavacOptionsHandlerMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.java.bsp.spec.JavacOptionsResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.java.bsp.spec" + ], + "documentation": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.spec", + "name": "JavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.compile.javac.CompileJavaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.compile.javac", + "name": "CompileJavaSourceRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.FallibleJavaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.java.dependency_inference.java_parser", + "pants.core", + "pants.engine.process" + ], + "documentation": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "documentation": "JavaParserCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors" + ] + }, + "pants.backend.java.dependency_inference.java_parser.JavaSourceDependencyAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.InferJavaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "InferJavaSourceDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependencies": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.java.dependency_inference.rules", + "pants.core", + "pants.engine.target" + ], + "documentation": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependenciesAndExportsRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "JavaInferredDependenciesAndExportsRequest(source: 'SourcesField')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependenciesAndExportsRequest", + "provider": "pants.backend.java.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.symbol_mapper.AllJavaTargets": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "AllJavaTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.symbol_mapper.FirstPartyJavaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "FirstPartyJavaTargetsMappingRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.types.JavaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "documentation": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.types", + "name": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ] + }, + "pants.backend.java.goals.check.JavacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.check.javac_check" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.goals.check", + "name": "JavacCheckRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.java.goals.tailor.PutativeJavaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeJavaTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.java.goals.tailor", + "name": "PutativeJavaTargetsRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatRequest": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ], + "dependees": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatRequest", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatToolLockfileSentinel", + "provider": "pants.backend.experimental.java.lint.google_java_format, pants.backend.java.lint.google_java_format.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ] + }, + "pants.backend.java.lint.google_java_format.skip_field.SkipGoogleJavaFormatField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.skip_field", + "name": "SkipGoogleJavaFormatField", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.subsystem.GoogleJavaFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ], + "dependees": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.subsystem", + "name": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [ + "construct_scope_google_java_format" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.java_infer.JavaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.java_infer", + "name": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_java_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.javac.JavacSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.javac", + "name": "JavacSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_javac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.junit.JUnit": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.junit", + "name": "JUnit", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_junit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc.CompileKotlinSourceRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc", + "name": "CompileKotlinSourceRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.AllKotlincPluginTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.build_graph.address", + "pants.core" + ], + "documentation": "KotlincPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPlugins": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core", + "pants.engine.target" + ], + "documentation": "KotlincPlugins(ids: 'tuple[str, ...]', classpath: 'ClasspathEntry', plugin_args: 'FrozenDict[str, tuple[str, ...]]')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "documentation": "KotlincPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [], + "documentation": "KotlincPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsRequest", + "provider": "pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.FallibleKotlinSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "documentation": "FallibleKotlinSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.dependency_inference.kotlin_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "documentation": "KotlinSourceDependencyAnalysis(package: 'str', imports: 'frozenset[KotlinImport]', named_declarations: 'frozenset[str]', consumed_symbols_by_scope: 'FrozenDict[str, frozenset[str]]', scopes: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinRuntimeDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinSourceDependencies", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.dependency_inference.rules" + ], + "documentation": "KotlinRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [], + "documentation": "KotlinRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolveRequest", + "provider": "pants.backend.kotlin.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.AllKotlinTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.FirstPartyKotlinTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "FirstPartyKotlinTargetsMappingRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.check.KotlincCheckRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.check.kotlinc_check" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.goals.check", + "name": "KotlincCheckRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.tailor.PutativeKotlinTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeKotlinTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.kotlin.goals.tailor", + "name": "PutativeKotlinTargetsRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt" + ], + "dependees": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintRequest", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin.lint.ktlint, pants.backend.kotlin.lint.ktlint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt" + ] + }, + "pants.backend.kotlin.lint.ktlint.skip_field.SkipKtlintField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.skip_field", + "name": "SkipKtlintField", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.subsystem.KtlintSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt" + ], + "dependees": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.subsystem", + "name": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [ + "construct_scope_ktlint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin.KotlinSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin", + "name": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin_infer.KotlinInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin_infer", + "name": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlinc.KotlincSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlinc", + "name": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlinc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.InferKotlinJunitTestDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "InferKotlinJunitTestDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.test.junit" + ], + "documentation": "KotlinJunitLibrariesForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.kotlin" + ], + "dependencies": [], + "documentation": "KotlinJunitLibrariesForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolveRequest", + "provider": "pants.backend.kotlin.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.plugin_development.pants_requirements.GenerateFromPantsRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements" + ], + "dependees": [ + "pants.backend.plugin_development" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.plugin_development.pants_requirements", + "name": "GenerateFromPantsRequirementsRequest", + "provider": "pants.backend.plugin_development", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCode": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.console", + "pants.engine.fs" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCode", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCodeSubsystem": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.SuccinctCodeCounter": { + "consumed_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "SuccinctCodeCounter", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_scc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependees.AddressToDependees": { + "consumed_by_rules": [ + "pants.backend.project_info.dependees.find_dependees" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "AddressToDependees(mapping: pants.util.frozendict.FrozenDict[pants.build_graph.address.Address, pants.util.ordered_set.FrozenOrderedSet[pants.build_graph.address.Address]])", + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "AddressToDependees", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependees.map_addresses_to_dependees" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependees.Dependees": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.project_info", + "pants.backend.python.mixed_interpreter_constraints" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "Dependees", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependees.find_dependees" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependees.dependees_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependees.DependeesGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.console" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "DependeesGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependees.dependees_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependees.DependeesRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.dependees.find_dependees" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [], + "documentation": "DependeesRequest(addresses: Iterable[pants.build_graph.address.Address], *, transitive: bool, include_roots: bool)", + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "DependeesRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependees.dependees_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependees.DependeesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependees.dependees_goal" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependees", + "name": "DependeesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependees" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.Dependencies": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "Dependencies", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.DependenciesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "DependenciesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.Filedeps": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.base.build_root", + "pants.build_graph.address", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "Filedeps", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.FiledepsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "FiledepsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filedeps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.console" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.Roots": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core", + "pants.engine.console" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "Roots", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.RootsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "RootsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.List": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "List", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.ListSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "ListSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_list" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core", + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.Peek": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.console", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "Peek", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.PeekSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.peek" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": "Display detailed target information in JSON form.", + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "PeekSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.TargetDatas": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "TargetDatas", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.get_target_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.peek.peek" + ] + }, + "pants.backend.project_info.regex_lint.RegexLintRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintFilesRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.regex_lint.RegexLintSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns" + ], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_regex_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.AllPythonTargets": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "AllPythonTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImpl": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.python, pants.backend.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImplMarker": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "An entry point for a specific implementation of mapping module names to owning targets for\nPython import dependency inference.\n\nAll implementations will be merged together. Any modules that show up in multiple\nimplementations will be marked ambiguous.", + "is_union": true, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImplMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "FirstPartyPythonTargetsMappingMarker", + "PythonProtobufMappingMarker", + "PythonThriftMappingMarker", + "PythonVCSVersionMappingMarker" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.engine.unions" + ], + "documentation": "A merged mapping of each resolve name to the first-party module names contained and their\nowning addresses.\n\nThis mapping may have been constructed from multiple distinct implementations, e.g.\nimplementations for each codegen backends.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonTargetsMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonTargetsMappingMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwners": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "The target(s) that own a Python module.\n\nIf >1 targets own the same module, and they're implementations (vs .pyi type stubs), they will\nbe put into `ambiguous` instead of `unambiguous`. `unambiguous` should never be > 2.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwnersRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "PythonModuleOwnersRequest(module: 'str', resolve: 'str | None')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwnersRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.ThirdPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsePythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "ParsePythonDependenciesRequest(source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints, string_imports: bool, string_imports_min_dots: int, assets: bool, assets_min_slashes: int)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsePythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonDependencies": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "ParsedPythonDependencies(imports: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonImports, assets: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonAssetPaths)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParserScript": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "ParserScript(digest: Digest)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParserScript", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferConftestDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferConftestDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferInitDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferInitDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferPythonImportDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferPythonImportDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.PythonInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "PythonInferSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_python_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageConfig": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "documentation": "CoverageConfig(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageConfig", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoveragePyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoveragePyLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSetup": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "CoverageSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_coverage_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.MergedCoverageData": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "documentation": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "MergedCoverageData", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.PytestCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "PytestCoverageDataCollection", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.ExportPythonTool": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_tool" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.python, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pylint, pants.backend.python.lint.yapf, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportPythonToolSentinel": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "Python tools use this as an entry point to say how to export their tool virtualenv.\n\nEach tool should subclass `ExportPythonToolSentinel` and set up a rule that goes from\nthe subclass -> `ExportPythonTool`. Register a union rule for the `ExportPythonToolSentinel`\nsubclass.\n\nIf the tool is in `pantsbuild/pants`, update `export_integration_test.py`.", + "is_union": true, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonToolSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "AutoflakeExportSentinel", + "BanditExportSentinel", + "BlackExportSentinel", + "DocformatterExportSentinel", + "Flake8ExportSentinel", + "IsortExportSentinel", + "MyPyExportSentinel", + "PyUpgradeExportSentinel", + "PylintExportSentinel", + "PytestExportSentinel", + "YapfExportSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportVenvsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "ExportVenvsRequest(targets: 'Sequence[Target]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportVenvsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.export._ExportVenvRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "_ExportVenvRequest(resolve: 'str | None', root_python_targets: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.lockfile.GeneratePythonLockfile": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool')", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.terraform, pants.backend.python, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pylint, pants.backend.python.lint.yapf, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request", + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.goals.lockfile.setup_poetry_lockfile", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.terraform.dependency_inference.setup_lockfile_request" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.KnownPythonUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "KnownPythonUserResolveNamesRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.MaybeWarnPythonRepos": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "MaybeWarnPythonRepos", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.maybe_warn_python_repos" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile" + ] + }, + "pants.backend.python.goals.lockfile.MaybeWarnPythonReposRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.maybe_warn_python_repos" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [], + "documentation": "MaybeWarnPythonReposRequest()", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "MaybeWarnPythonReposRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile" + ] + }, + "pants.backend.python.goals.lockfile.PoetryLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.setup_poetry_lockfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "PoetryLockfileSentinel", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.RequestedPythonUserResolveNames": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "RequestedPythonUserResolveNames", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.backend.python.goals.package_pex_binary.PexBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PexBinaryFieldSet(address: 'Address', entry_point: pants.backend.python.target_types.PexEntryPointField, script: pants.backend.python.target_types.PexScriptField, output_path: pants.core.goals.package.OutputPathField, emit_warnings: pants.backend.python.target_types.PexEmitWarningsField, ignore_errors: pants.backend.python.target_types.PexIgnoreErrorsField, inherit_path: pants.backend.python.target_types.PexInheritPathField, shebang: pants.backend.python.target_types.PexShebangField, strip_env: pants.backend.python.target_types.PexStripEnvField, platforms: pants.backend.python.target_types.PexPlatformsField, complete_platforms: pants.backend.python.target_types.PexCompletePlatformsField, resolve_local_platforms: pants.backend.python.target_types.PexResolveLocalPlatformsField, layout: pants.backend.python.target_types.PexLayoutField, execution_mode: pants.backend.python.target_types.PexExecutionModeField, include_requirements: pants.backend.python.target_types.PexIncludeRequirementsField, include_sources: pants.backend.python.target_types.PexIncludeSourcesField, include_tools: pants.backend.python.target_types.PexIncludeToolsField)", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexBinaryFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary" + ] + }, + "pants.backend.python.goals.publish.PublishPythonPackageFieldSet": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core" + ], + "documentation": "PublishPythonPackageFieldSet(address: 'Address', repositories: 'PythonRepositoriesField', skip_twine: 'SkipTwineUploadField')", + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageFieldSet", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PublishPythonPackageRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PythonRepositoriesField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PythonRepositoriesField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.SkipTwineUploadField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "SkipTwineUploadField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetups": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetups", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetupsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "AllPytestPluginSetupsRequest(address: pants.build_graph.address.Address)", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetupsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetupRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to set up the test environment before Pytest runs, e.g. to set up databases.\n\nTo use, subclass PytestPluginSetupRequest, register the rule\n`UnionRule(PytestPluginSetupRequest, MyCustomPytestPluginSetupRequest)`, and add a rule that\ntakes your subclass as a parameter and returns `PytestPluginSetup`.", + "is_union": true, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "RuntimePackagesPluginRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.RuntimePackagesPluginRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "RuntimePackagesPluginRequest(target: pants.engine.target.Target)", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "RuntimePackagesPluginRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.TestSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "TestSetup(process: pants.engine.process.Process, results_file_name: Optional[str])", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_test" + ] + }, + "pants.backend.python.goals.pytest_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "TestSetupRequest(field_set: pants.backend.python.subsystems.pytest.PythonTestFieldSet, is_debug: bool, main: Optional[pants.backend.python.target_types.MainSpecification] = None, prepend_argv: Tuple[str, ...] = (), additional_pexes: Tuple[pants.backend.python.util_rules.pex.Pex, ...] = ())", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_test" + ] + }, + "pants.backend.python.goals.repl.IPythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "IPythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.repl.PythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_python_repl_request" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "PythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_source.PythonSourceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonSourceFieldSet(address: 'Address', source: pants.backend.python.target_types.PythonSourceField, run_goal_use_sandbox: pants.backend.python.target_types.PythonRunGoalUseSandboxField)", + "is_union": false, + "module": "pants.backend.python.goals.run_python_source", + "name": "PythonSourceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request" + ] + }, + "pants.backend.python.goals.setup_py.DependencyOwner": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "An ExportedTarget in its role as an owner of other targets.\n\nWe need this type to prevent rule ambiguities when computing the list of targets owned by an\nExportedTarget (which involves going from ExportedTarget -> dep -> owner (which is itself an\nExportedTarget) and checking if owner is the original ExportedTarget.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DependencyOwner", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_sources" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildChroot": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "documentation": "A chroot containing PEP 517 build setup and the sources it operates on.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildChroot", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildChrootRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_sources" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to create a chroot for building a dist in.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildChrootRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildEnvironment": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "Various extra information that might be needed to build a dist.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildEnvironmentRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "DistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": true, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildEnvironmentRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "MyPycDistBuildEnvironmentRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildSources": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "The source-root-stripped sources required to build a distribution with a generated setup.py.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildSources", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ] + }, + "pants.backend.python.goals.setup_py.ExportedTarget": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "ExportedTarget", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_exporting_owner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.ExportedTargetRequirements": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "ExportedTargetRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_requirements" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.goals.setup_py.FinalizedSetupKwargs": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.fs" + ], + "documentation": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "FinalizedSetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_setup_py" + ] + }, + "pants.backend.python.goals.setup_py.GenerateSetupPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.generate_setup_py" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "GenerateSetupPyRequest(exported_target: 'ExportedTarget', sources: 'DistBuildSources', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "GenerateSetupPyRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.generate_setup_py" + ] + }, + "pants.backend.python.goals.setup_py.GeneratedSetupPy": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "GeneratedSetupPy(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "GeneratedSetupPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.generate_setup_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ] + }, + "pants.backend.python.goals.setup_py.OwnedDependencies": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "OwnedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_sources" + ] + }, + "pants.backend.python.goals.setup_py.OwnedDependency": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.get_exporting_owner" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A target that is owned by some ExportedTarget.\n\nCode in this target is published in the owner's distribution.\n\nThe owner of a target T is T's closest filesystem ancestor among the python_distribution\ntargets that directly or indirectly depend on it (including T itself).", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "OwnedDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.SetupKwargs": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.unions" + ], + "documentation": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.SetupKwargsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to allow setting the kwargs passed to the `setup()` function.\n\nBy default, Pants will pass the kwargs provided in the BUILD file unchanged. To customize this\nbehavior, subclass `SetupKwargsRequest`, register the rule `UnionRule(SetupKwargsRequest,\nMyCustomSetupKwargsRequest)`, and add a rule that takes your subclass as a parameter and returns\n`SetupKwargs`.", + "is_union": true, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupKwargsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ] + }, + "pants.backend.python.goals.setup_py.SetupPyGeneration": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_requirements" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupPyGeneration", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setup_py_generation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.tailor.PutativePythonTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativePythonTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.python.goals.tailor", + "name": "PutativePythonTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.rules.AutoflakeRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fmt" + ], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.rules", + "name": "AutoflakeRequest", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.skip_field.SkipAutoflakeField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.skip_field", + "name": "SkipAutoflakeField", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.Autoflake": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "Autoflake", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [ + "construct_scope_autoflake" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.AutoflakeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.autoflake_export" + ], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "AutoflakeExportSentinel", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.AutoflakeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "AutoflakeLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.rules.BanditPartition": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint_partition" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [], + "documentation": "BanditPartition(field_sets: Tuple[pants.backend.python.lint.bandit.subsystem.BanditFieldSet, ...], interpreter_constraints: pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints)", + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditPartition", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint" + ] + }, + "pants.backend.python.lint.bandit.rules.BanditRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditRequest", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.skip_field.SkipBanditField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.skip_field", + "name": "SkipBanditField", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.Bandit": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "Bandit", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [ + "construct_scope_bandit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditExportSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.bandit" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditLockfileSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.rules.BlackRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.rules.black_fmt" + ], + "dependees": [ + "pants.backend.python.lint.black" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.rules", + "name": "BlackRequest", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.skip_field.SkipBlackField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.skip_field", + "name": "SkipBlackField", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.Black": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependees": [ + "pants.backend.build_files.fmt.black", + "pants.backend.python.lint.black", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "Black", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_black" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.black_export" + ], + "dependees": [ + "pants.backend.python.lint.black" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackExportSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.setup_black_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.black" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackLockfileSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.rules.DocformatterRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt" + ], + "dependees": [ + "pants.backend.python.lint.docformatter" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.rules", + "name": "DocformatterRequest", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.skip_field.SkipDocformatterField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.skip_field", + "name": "SkipDocformatterField", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.Docformatter": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.python.lint.docformatter" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "Docformatter", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [ + "construct_scope_docformatter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.DocformatterExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.subsystem.docformatter_export" + ], + "dependees": [ + "pants.backend.python.lint.docformatter" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "DocformatterExportSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.DocformatterLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.python.lint.docformatter" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "DocformatterLockfileSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.rules.Flake8Partition": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint_partition" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [], + "documentation": "Flake8Partition(field_sets: Tuple[pants.backend.python.lint.flake8.subsystem.Flake8FieldSet, ...], interpreter_constraints: pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints)", + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Partition", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint" + ] + }, + "pants.backend.python.lint.flake8.rules.Flake8Request": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Request", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.skip_field.SkipFlake8Field": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.skip_field", + "name": "SkipFlake8Field", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "construct_scope_flake8" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8ExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_export" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8ExportSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8FirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8LockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.flake8" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8LockfileSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.rules.IsortRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt" + ], + "dependees": [ + "pants.backend.python.lint.isort" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.rules", + "name": "IsortRequest", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.skip_field.SkipIsortField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.skip_field", + "name": "SkipIsortField", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.Isort": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.isort" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "Isort", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [ + "construct_scope_isort" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.IsortExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.subsystem.isort_export" + ], + "dependees": [ + "pants.backend.python.lint.isort" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "IsortExportSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.IsortLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.isort" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "IsortLockfileSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.rules.PylintPartition": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint_partition" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [], + "documentation": "PylintPartition(root_field_sets: 'FrozenOrderedSet[PylintFieldSet]', closure: 'FrozenOrderedSet[Target]', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintPartition", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint" + ] + }, + "pants.backend.python.lint.pylint.rules.PylintPartitions": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintPartitions", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint" + ] + }, + "pants.backend.python.lint.pylint.rules.PylintRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.lint.pylint.rules.pylint_lint" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintRequest", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint" + ] + }, + "pants.backend.python.lint.pylint.skip_field.SkipPylintField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.skip_field", + "name": "SkipPylintField", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.Pylint": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_lint", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "Pylint", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "construct_scope_pylint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_export" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintExportSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintLockfileSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.rules.PyUpgradeRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt" + ], + "dependees": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.rules", + "name": "PyUpgradeRequest", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.skip_field.SkipPyUpgradeField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.skip_field", + "name": "SkipPyUpgradeField", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgrade": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgrade", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [ + "construct_scope_pyupgrade" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgradeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export" + ], + "dependees": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgradeExportSentinel", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgradeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgradeLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.rules.YapfRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.rules.yapf_fmt" + ], + "dependees": [ + "pants.backend.python.lint.yapf" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.rules", + "name": "YapfRequest", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.skip_field.SkipYapfField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.skip_field", + "name": "SkipYapfField", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.Yapf": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependees": [ + "pants.backend.build_files.fmt.yapf", + "pants.backend.python.lint.yapf", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "Yapf", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_yapf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.YapfExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.subsystem.yapf_export" + ], + "dependees": [ + "pants.backend.python.lint.yapf" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "YapfExportSentinel", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.YapfLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile" + ], + "dependees": [ + "pants.backend.python.lint.yapf" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "YapfLockfileSentinel", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.macros.pipenv_requirements.GenerateFromPipenvRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.pipenv_requirements", + "name": "GenerateFromPipenvRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.poetry_requirements.GenerateFromPoetryRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.poetry_requirements", + "name": "GenerateFromPoetryRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.python_requirements.GenerateFromPythonRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.python_requirements.generate_from_python_requirement" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.python_requirements", + "name": "GenerateFromPythonRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.project_info", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependees": [ + "pants.backend.python.mixed_interpreter_constraints" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "construct_scope_py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyOxidizerFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary" + ], + "dependees": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PyOxidizerFieldSet(address: 'Address', entry_point: 'PyOxidizerEntryPointField', dependencies: 'PyOxidizerDependenciesField', unclassified_resources: 'PyOxidizerUnclassifiedResources', template: 'PyOxidizerConfigSourceField', output_path: 'PyOxidizerOutputPathField')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyOxidizerFieldSet", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyoxidizerRunnerScript": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependees": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyOxidizer": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "construct_scope_pyoxidizer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyoxidizerLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyoxidizerLockfileSentinel", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPy": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_debugpy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPyLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPython": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPython", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_ipython" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPythonLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPythonLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.Lambdex": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "Lambdex", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "construct_scope_lambdex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.LambdexLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile" + ], + "dependees": [ + "pants.backend.awslambda.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "LambdexLockfileSentinel", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.poetry.PoetrySubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.setup_poetry_lockfile" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.poetry", + "name": "PoetrySubsystem", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_poetry" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PyTest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PyTest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pytest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.pytest_export" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestExportSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PythonTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_test" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'PythonTestSourceField', interpreter_constraints: 'InterpreterConstraintsField', timeout: 'PythonTestsTimeoutField', runtime_package_dependencies: 'RuntimePackageDependenciesField', extra_env_vars: 'PythonTestsExtraEnvVarsField', xdist_concurrency: 'PythonTestsXdistConcurrencyField')", + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PythonTestFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.PythonNativeCode": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "PythonNativeCode", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_native_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.repos.PythonRepos": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.maybe_warn_python_repos", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependees": [ + "pants.backend.docker", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.repos", + "name": "PythonRepos", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_repos" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup.PythonSetup": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request", + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.backend.python.goals.lockfile.setup_poetry_lockfile", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "pants.backend.terraform.dependency_inference.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup", + "name": "PythonSetup", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.PythonDistributionFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PythonDistributionFieldSet(address: 'Address', provides: pants.backend.python.target_types.PythonProvidesField)", + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "PythonDistributionFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.subsystems.setuptools.Setuptools": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "Setuptools", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setuptools" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.SetuptoolsLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "SetuptoolsLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCM": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_setuptools_scm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCMLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCMLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.twine.setup_twine_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.subsystems.twine.setup_twine_lockfile" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_twine" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexBinaryDefaults": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexBinaryDefaults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pex_binary_defaults" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexCompletePlatformsField": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexCompletePlatformsField", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.target_types.PythonFilesGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PythonFilesGeneratorSettingsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types.ResolvePexEntryPointRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Determine the `entry_point` for a `pex_binary` after applying all syntactic sugar.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePexEntryPointRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvePythonDistributionEntryPointsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Looks at the entry points to see if it is a setuptools entry point, or a BUILD target address\nthat should be resolved into a setuptools entry point.\n\nIf the `entry_points_field` is present, inspect the specified entry points.\nIf the `provides_field` is present, inspect the `provides_field.kwargs[\"entry_points\"]`.\n\nThis is to support inspecting one or the other depending on use case, using the same\nlogic for resolving pex_binary addresses etc.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePythonDistributionEntryPointsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.target_types.ResolvedPexEntryPoint": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPexEntryPoint", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvedPythonDistributionEntryPoints": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.addresses" + ], + "documentation": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.target_types_rules.GenerateTargetsFromPexBinaries": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "GenerateTargetsFromPexBinaries", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPexBinaryEntryPointDependency": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPexBinaryEntryPointDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPythonDistributionDependencies": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPythonDistributionDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonValidateDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonValidateDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.MyPycDistBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": "MyPycDistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "MyPycDistBuildEnvironmentRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "DistBuildEnvironmentRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.UsesMyPycField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "UsesMyPycField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "MyPyPartition(root_field_sets: 'FrozenOrderedSet[MyPyFieldSet]', closure: 'FrozenOrderedSet[Target]', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartition", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartitions": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.skip_field.SkipMyPyField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.skip_field", + "name": "SkipMyPyField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPy": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPy", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "construct_scope_mypy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyConfigFile": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_export" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyExportSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyExtraTypeStubsLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyExtraTypeStubsLockfileSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.backend.python", + "pants.engine.addresses", + "pants.engine.target" + ], + "documentation": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyLockfileSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "documentation": "Any ancestor files found.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request for ancestor files of the given names.\n\n\"Ancestor files\" means all files with one of the given names that are siblings of, or in parent\ndirectories of, a `.py` or `.pyi` file in the input_files.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystem": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.fs" + ], + "documentation": "A PEP 517/518 build system configuration.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystemRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to find build system config in the given dir of the given digest.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystemRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to build dists via a PEP 517 build backend.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.interpreter_constraints", + "name": "InterpreterConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistWheels": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.target" + ], + "documentation": "Contains the wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistWheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPex": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "documentation": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPex", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Request to build the local dists from the dependency closure of a set of addresses.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.BuildPexResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.platform", + "pants.engine.process" + ], + "documentation": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "BuildPexResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex" + ] + }, + "pants.backend.python.util_rules.pex.CompletePlatforms": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.python", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "CompletePlatforms", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPex": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": "OptionalPex(maybe_pex: 'Pex | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex.Pex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": "Wrapper for a digest containing a pex file created with some filename.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "Pex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex" + ] + }, + "pants.backend.python.util_rules.pex.PexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_pex_process" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "PexProcess(pex: 'Pex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ] + }, + "pants.backend.python.util_rules.pex.PexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "documentation": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.PexResolveInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "documentation": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexResolveInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex.VenvPex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "documentation": "VenvPex(digest: 'Digest', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_venv_pex_process" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "VenvPexProcess(venv_pex: 'VenvPex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "VenvPexRequest(pex_request: 'PexRequest', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexRequest", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexCli": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCli", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex_cli" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_cli.PexCliProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "PexCliProcess(*, subcommand: 'Iterable[str]', extra_args: 'Iterable[str]', description: 'str', set_resolve_args: 'bool' = True, additional_input_digest: 'Optional[Digest]' = None, extra_env: 'Optional[Mapping[str, str]]' = None, output_files: 'Optional[Iterable[str]]' = None, output_directories: 'Optional[Iterable[str]]' = None, python: 'Optional[PythonExecutable]' = None, level: 'LogLevel' = , concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCliProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexPEX": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [], + "documentation": "The Pex PEX binary.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexPEX", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexEnvironment": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.option.global_options" + ], + "documentation": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonExecutable | None' = None, venv_use_symlinks: 'bool' = False)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexRuntimeEnvironment": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexRuntimeEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PythonExecutable": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "documentation": "The BinaryPath of a Python executable.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PythonExecutable", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolve", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "ChosenPythonResolveRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.GlobalRequirementConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "documentation": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "GlobalRequirementConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_from_targets.InterpreterConstraintsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "InterpreterConstraintsRequest(addresses: 'Iterable[Address]', *, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "InterpreterConstraintsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.PexFromTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "PexFromTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.RequirementsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Requests a PEX containing only thirdparty requirements for internal/non-portable use.\n\nUsed as part of an optimization to reduce the \"overhead\" (in terms of both time and space) of\nthirdparty requirements by taking advantage of certain PEX features.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "RequirementsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._ConstraintsRepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "_ConstraintsRepositoryPexRequest(repository_pex_request: '_RepositoryPexRequest')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_ConstraintsRepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._PexRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Determine the requirement strings used transitively.\n\nThis type is private because callers should likely use `RequirementsPexRequest` or\n`PexFromTargetsRequest` instead.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_PexRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._RepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "_RepositoryPexRequest(addresses: 'Iterable[Address]', *, internal_only: 'bool', hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_lockfile_args: 'tuple[str, ...]' = ()) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_RepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfile": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "documentation": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfileRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A request to load and validate the content of the given lockfile.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfileRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.PexRequirements": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "PexRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfig": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.unions" + ], + "documentation": "Configuration from `[python]` that impacts how the resolve is created.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfig", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfigRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Find all configuration from `[python]` that impacts how the resolve is created.\n\nIf `resolve_name` is None, then most per-resolve options will be ignored because there is no way\nfor users to configure them. However, some options like `[python-repos].indexes` will still be\nloaded.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfigRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFiles": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "dependees": [ + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "builtins", + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "PythonSourceFilesRequest(targets: 'Iterable[Target]', *, include_resources: 'bool' = True, include_files: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.StrippedPythonSourceFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "A PythonSourceFiles that has had its source roots stripped.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "StrippedPythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.vcs_versioning.AllVCSVersionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.GeneratePythonFromSetuptoolsSCMRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "GeneratePythonFromSetuptoolsSCMRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.PythonVCSVersionMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "PythonVCSVersionMappingMarker", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.VCSVersionPythonResolveField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "VCSVersionPythonResolveField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "HandleScalacOptionsRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.base.build_root", + "pants.core", + "pants.engine.fs" + ], + "documentation": "HandleScalacOptionsResult(item: 'ScalacOptionsItem')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.ScalaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "ScalaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPCompileRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPDependencyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "ScalaBSPDependencyModulesRequest(field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPDependencyModulesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPDependencyModulesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPLanguageSupport", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_resources_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "documentation": "ScalaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPResourcesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaMainClassesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaMainClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaTestClassesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaTestClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalacOptionsHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModules": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.core", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch", + "pants.jvm.resolve.key" + ], + "documentation": "ThirdpartyModules(resolve: 'CoursierResolveKey', entries: 'dict[CoursierLockfileEntry, ClasspathEntry]', merged_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "ThirdpartyModulesRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModulesRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.spec.ScalaMainClassesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "documentation": "ScalaMainClassesResult(items: 'tuple[ScalaMainClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalaTestClassesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "documentation": "ScalaTestClassesResult(items: 'tuple[ScalaTestClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalacOptionsResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "documentation": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac.CompileScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac", + "name": "CompileScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.AllScalaPluginTargets": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.compile.scalac_plugins", + "pants.build_graph.address", + "pants.core" + ], + "documentation": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPlugins": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac_plugins", + "pants.core", + "pants.engine.target" + ], + "documentation": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPlugins", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "documentation": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala, pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetWithoutResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "ScalaPluginsForTargetWithoutResolveRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetWithoutResolveRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "ScalaPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaLibraryDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaLibraryDependencyRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaPluginDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaPluginDependenciesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaSourceDependencies", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolve": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.dependency_inference.rules" + ], + "documentation": "ScalaRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "ScalaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolveRequest", + "provider": "pants.backend.scala.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.AnalyzeScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "documentation": "AnalyzeScalaSourceRequest(source_files: 'SourceFiles', scala_version: 'str', source3: 'bool')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.FallibleScalaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "documentation": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.dependency_inference.scala_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "documentation": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[ScalaProvidedSymbol]', provided_symbols_encoded: 'FrozenOrderedSet[ScalaProvidedSymbol]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.AllScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "AllScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.FirstPartyScalaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "FirstPartyScalaTargetsMappingRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.check.ScalacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.check.scalac_check" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.check", + "name": "ScalacCheckRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.repl.ScalaRepl": { + "consumed_by_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.repl", + "name": "ScalaRepl", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.scala.goals.tailor.PutativeScalaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeScalaTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.scala.goals.tailor", + "name": "PutativeScalaTargetsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.GatherScalafmtConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [], + "documentation": "GatherScalafmtConfigFilesRequest(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "GatherScalafmtConfigFilesRequest", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.Partition": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.lint.scalafmt.rules", + "pants.core" + ], + "documentation": "Partition(process: 'JvmProcess', description: 'str')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "Partition", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtConfigFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "builtins", + "pants.backend.scala.lint.scalafmt.rules" + ], + "documentation": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtRequest", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtToolLockfileSentinel", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.Setup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.scala.lint.scalafmt.rules", + "pants.core" + ], + "documentation": "Setup(partitions: 'tuple[Partition, ...]', original_snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "Setup", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.SetupScalafmtPartition": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [], + "documentation": "SetupScalafmtPartition(classpath_entries: 'tuple[str, ...]', merged_sources_digest: 'Digest', extra_immutable_input_digests: 'FrozenDict[str, Digest]', config_file: 'str', files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "SetupScalafmtPartition", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.skip_field.SkipScalafmtField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.skip_field", + "name": "SkipScalafmtField", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.subsystem.ScalafmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition" + ], + "dependees": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.subsystem", + "name": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "construct_scope_scalafmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.resolve.lockfile.ValidateResolveHasScalaRuntimeRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.jvm.goals.lockfile" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.lockfile", + "name": "ValidateResolveHasScalaRuntimeRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateJvmArtifactsForResolveRequest", + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala.ScalaSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala", + "name": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala_infer.ScalaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala_infer", + "name": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalac.Scalac": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalac", + "name": "Scalac", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalatest.Scalatest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalatest", + "name": "Scalatest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalatest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaSettingsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "ScalatestTestFieldSet(address: 'Address', sources: 'ScalatestTestSourceField', timeout: 'ScalatestTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'ScalatestTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ] + }, + "pants.backend.scala.test.scalatest.TestSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.scala.test.scalatest", + "pants.core", + "pants.engine.environment", + "pants.engine.target" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetup", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.test.scalatest.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "TestSetupRequest(field_set: 'ScalatestTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetupRequest", + "provider": "pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionRequest": { + "consumed_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "ScalaArtifactsForVersionRequest(scala_version: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionRequest", + "provider": "pants.backend.scala.util_rules.versions", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.scala.util_rules.versions" + ], + "documentation": "ScalaArtifactsForVersionResult(compiler_coordinate: 'Coordinate', library_coordinate: 'Coordinate', compiler_main: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.shell.dependency_inference.AllShellTargets": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "AllShellTargets", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.find_all_shell_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.InferShellDependencies": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "InferShellDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.ParseShellImportsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "ParseShellImportsRequest(digest: 'Digest', fp: 'str')", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParseShellImportsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ParsedShellImports": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.process" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParsedShellImports", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ShellMapping": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "A mapping of Shell file names to their owning file address.", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ShellMapping", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.rules.ShellcheckRequest": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck" + ], + "dependees": [ + "pants.backend.shell.lint.shellcheck" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.rules", + "name": "ShellcheckRequest", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.skip_field.SkipShellcheckField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.skip_field", + "name": "SkipShellcheckField", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.subsystem.Shellcheck": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck" + ], + "dependees": [ + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.subsystem", + "name": "Shellcheck", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shellcheck" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.rules.ShfmtRequest": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt" + ], + "dependees": [ + "pants.backend.shell.lint.shfmt" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.rules", + "name": "ShfmtRequest", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.skip_field.SkipShfmtField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.skip_field", + "name": "SkipShfmtField", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.subsystem.Shfmt": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt" + ], + "dependees": [ + "pants.backend.shell.lint.shfmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.subsystem", + "name": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [ + "construct_scope_shfmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shell_command.GenerateFilesFromShellCommandRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.run_shell_command" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_command", + "name": "GenerateFilesFromShellCommandRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.shell_command.RunShellCommand": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.backend.shell.shell_command.run_shell_debug_adapter_binary" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_command", + "name": "RunShellCommand", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shell_command.ShellCommandProcessRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.prepare_shell_command_process" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "ShellCommandProcessRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.shell.shell_command", + "name": "ShellCommandProcessRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shell_command.run_shell_command", + "pants.backend.shell.shell_command.run_shell_command_request" + ] + }, + "pants.backend.shell.shell_setup.ShellSetup": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.shell.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_setup", + "name": "ShellSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shell_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2FieldSet": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "Shunit2FieldSet(address: 'Address', sources: pants.backend.shell.target_types.Shunit2TestSourceField, timeout: pants.backend.shell.target_types.Shunit2TestTimeoutField, shell: pants.backend.shell.target_types.Shunit2ShellField, runtime_package_dependencies: pants.core.goals.test.RuntimePackageDependenciesField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2FieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2Runner": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.core", + "pants.engine.environment" + ], + "documentation": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2Runner", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2RunnerRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "Shunit2RunnerRequest(address: pants.build_graph.address.Address, test_file_content: pants.engine.fs.FileContent, shell_field: pants.backend.shell.target_types.Shunit2ShellField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2RunnerRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "TestSetup(process: pants.engine.process.Process)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "TestSetupRequest(field_set: pants.backend.shell.shunit2_test_runner.Shunit2FieldSet)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.tailor.PutativeShellTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.tailor.find_putative_targets" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeShellTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.shell.tailor", + "name": "PutativeShellTargetsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.target_types.ShellGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.target_types.generator_settings" + ], + "dependees": [ + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.target_types", + "name": "ShellGeneratorSettingsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.InferTerraformModuleDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "InferTerraformModuleDependenciesRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.ParseTerraformModuleSources": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [], + "documentation": "ParseTerraformModuleSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParseTerraformModuleSources", + "provider": "pants.backend.terraform.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ] + }, + "pants.backend.terraform.dependency_inference.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParserSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2Parser": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_hcl2_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2ParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2ParserLockfileSentinel", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformCheckRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformCheckRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformValidateSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_validate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.tailor.PutativeTerraformTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PutativeTerraformTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.terraform.goals.tailor", + "name": "PutativeTerraformTargetsRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TfFmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TffmtRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TffmtRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "FmtTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.style.StyleSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "builtins", + "pants.backend.terraform.style", + "pants.core" + ], + "documentation": "StyleSetup(directory_to_process: 'dict[str, tuple[TerraformProcess, tuple[Address, ...]]]', original_snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.terraform.style", + "name": "StyleSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.style.setup_terraform_style" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.style.StyleSetupRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.style.setup_terraform_style" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [], + "documentation": "StyleSetupRequest(request: 'FmtTargetsRequest | CheckRequest', args: 'Iterable[str]')", + "is_union": false, + "module": "pants.backend.terraform.style", + "name": "StyleSetupRequest", + "provider": "pants.backend.terraform.style", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformProcess": { + "consumed_by_rules": [ + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [], + "documentation": "A request to invoke Terraform.", + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformProcess", + "provider": "pants.backend.terraform.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformTool": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependees": [ + "pants.backend.experimental.terraform" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformTool", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_download_terraform" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.base.specs.RawSpecs": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Convert the specs into matching targets and files.\n\nUnlike `Specs`, this does not consider include vs. ignore specs. It simply matches all relevant\ntargets/files.\n\nWhen you want to operate on what the user specified, use `Specs`. Otherwise, you can use\neither `Specs` or `RawSpecs` in rules, e.g. to find what targets exist in a directory.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.base.specs.RawSpecsWithoutFileOwners": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "The subset of `RawSpecs` that do not use the `Owners` rule to match targets.\n\nThis exists to work around a cycle in the rule graph. Usually, consumers should use the simpler\n`Get(Addresses, RawSpecs)`, which will result in this rule being used.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecsWithoutFileOwners", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses" + ] + }, + "pants.base.specs.Specs": { + "consumed_by_rules": [ + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "The specs provided by the user for what to run on.\n\nThe `ignores` will filter out all relevant `includes`.\n\nIf your rule does not need to consider includes vs. ignores, e.g. to find all targets in a\ndirectory, you can directly use `RawSpecs`.", + "is_union": false, + "module": "pants.base.specs", + "name": "Specs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.bsp.context.BSPContext": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.core" + ], + "dependencies": [ + "pants.engine.internals.session" + ], + "documentation": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "is_union": false, + "module": "pants.bsp.context", + "name": "BSPContext", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.rules.bsp_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.goal.BSPGoal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.goal", + "name": "BSPGoal", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_experimental_bsp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.protocol.BSPHandlerMapping": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.core" + ], + "dependencies": [], + "documentation": "Union type for rules to register handlers for BSP methods.", + "is_union": true, + "module": "pants.bsp.protocol", + "name": "BSPHandlerMapping", + "provider": "pants.bsp.protocol", + "returned_by_rules": [], + "union_members": [ + "BuildTargetSourcesHandlerMapping", + "CompileRequestHandlerMapping", + "DependencyModulesHandlerMapping", + "DependencySourcesHandlerMapping", + "InitializeBuildHandlerMapping", + "JavacOptionsHandlerMapping", + "ResourcesRequestHandlerMapping", + "ScalaMainClassesHandlerMapping", + "ScalaTestClassesHandlerMapping", + "ScalacOptionsHandlerMapping", + "WorkspaceBuildTargetsHandlerMapping" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.base.BuildTargetIdentifier": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A unique identifier for a target, can use any URI-compatible encoding as long as it is unique\nwithin the workspace.\n\nClients should not infer metadata out of the URI structure such as the path or query parameters,\nuse BuildTarget instead.", + "is_union": false, + "module": "pants.bsp.spec.base", + "name": "BuildTargetIdentifier", + "provider": "pants.bsp.spec.base", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.spec.compile.CompileResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.compile", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "documentation": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "is_union": false, + "module": "pants.bsp.spec.compile", + "name": "CompileResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.lifecycle.InitializeBuildResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.spec.lifecycle", + "pants.engine.unions" + ], + "documentation": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "is_union": false, + "module": "pants.bsp.spec.lifecycle", + "name": "InitializeBuildResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.lifecycle.bsp_build_initialize" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.resources.ResourcesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.resources", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "documentation": "ResourcesResult(items: 'tuple[ResourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.resources", + "name": "ResourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencyModulesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "documentation": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencyModulesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencySourcesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "documentation": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencySourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.SourcesResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "documentation": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "SourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.WorkspaceBuildTargetsResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "documentation": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "WorkspaceBuildTargetsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.compile.CompileOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "CompileOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal', origin_id: 'str | None' = None, arguments: 'tuple[str, ...] | None' = ())", + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ] + }, + "pants.bsp.util_rules.compile.CompileRequestHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.BSPLanguageSupport": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Union exposed by language backends to inform BSP core rules of capabilities to advertise to\nclients.", + "is_union": true, + "module": "pants.bsp.util_rules.lifecycle", + "name": "BSPLanguageSupport", + "provider": "pants.bsp.util_rules.lifecycle", + "returned_by_rules": [], + "union_members": [ + "JavaBSPLanguageSupport", + "ScalaBSPLanguageSupport" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.InitializeBuildHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.lifecycle", + "name": "InitializeBuildHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.resources.ResourcesForOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ResourcesForOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesForOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.resources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ] + }, + "pants.bsp.util_rules.resources.ResourcesRequestHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetInternal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.bsp.spec.base" + ], + "documentation": "BSPBuildTargetInternal(name: 'str', specs: 'RawSpecs', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetInternal", + "provider": "pants.bsp.util_rules.targets, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetSourcesInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.target" + ], + "documentation": "Source files and roots for a BSP build target.\n\nIt is a separate class so that it is computed lazily only when called for by an RPC call.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetSourcesInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargets": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "documentation": "BSPBuildTargets(targets_mapping: 'FrozenDict[str, BSPBuildTargetInternal]')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook to allow language backends to provide metadata for BSP build targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPBuildTargetsMetadataRequest", + "ScalaBSPBuildTargetsMetadataRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.core" + ], + "documentation": "Response type for a BSPBuildTargetsMetadataRequest.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook to allow language backends to compile targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPCompileRequest", + "ScalaBSPCompileRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.bsp.util_rules.compile", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.resolve.key" + ], + "documentation": "Result of compilation of a target capable of target compilation.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook to allow language backends to provide dependency modules.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "ScalaBSPDependencyModulesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "documentation": "BSPDependencyModulesResult(modules: 'tuple[DependencyModule, ...]', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook to allow language backends to provide resources for targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPResourcesRequest", + "ScalaBSPResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.bsp.util_rules.resources", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "Resources for a target.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BuildTargetSourcesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BuildTargetSourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencyModulesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencyModulesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencySourcesHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencySourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "GenerateOneBSPBuildTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.base.build_root", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "documentation": "GenerateOneBSPBuildTargetResult(build_target: 'BuildTarget', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "MaterializeBuildTargetSourcesRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.base.build_root", + "pants.bsp.util_rules.targets" + ], + "documentation": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ResolveOneDependencyModuleRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "documentation": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.WorkspaceBuildTargetsHandlerMapping": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "WorkspaceBuildTargetsHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets._ParseOneBSPMappingRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "_ParseOneBSPMappingRequest(name: 'str', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "_ParseOneBSPMappingRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ] + }, + "pants.build_graph.address.AddressInput": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A string that has been parsed and normalized using the Address syntax.\n\nAn AddressInput must be resolved into an Address using the engine (which involves inspecting\ndisk to determine the types of its path component).", + "is_union": false, + "module": "pants.build_graph.address", + "name": "AddressInput", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.build_graph.address.BuildFileAddressRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to find the BUILD file path for an address.", + "is_union": false, + "module": "pants.build_graph.address", + "name": "BuildFileAddressRequest", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ] + }, + "pants.core.goals.check.Check": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "Check", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.check.check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.check.CheckRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "A union for StyleRequests that should be type-checkable.\n\nSubclass and install a member of this type to provide a linter.", + "is_union": true, + "module": "pants.core.goals.check", + "name": "CheckRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCheckRequest", + "JavacCheckRequest", + "KotlincCheckRequest", + "MyPyRequest", + "ScalacCheckRequest", + "TerraformCheckRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.process" + ], + "documentation": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.core.goals.check.CheckResults": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.resolve.key" + ], + "documentation": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResults", + "provider": "pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.terraform.goals.check.terraform_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.check.check" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.Deploy": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "Deploy(exit_code: int)", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "Deploy", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.deploy.run_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.DeployFieldSet": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [], + "documentation": "The FieldSet type for the `deploy` goal.\n\nUnion members may list any fields required to fulfill the instantiation of the `DeployProcess`\nresult of the deploy rule.", + "is_union": true, + "module": "pants.core.goals.deploy", + "name": "DeployFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployHelmDeploymentFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.deploy.DeployProcess": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.core", + "pants.engine.process" + ], + "documentation": "A process that when executed will have the side effect of deploying a target.\n\nTo provide with the ability to deploy a given target, create a custom `DeployFieldSet` for\nthat given target and implement a rule that returns `DeployProcess` for that custom field set:\n\nExample:\n\n @dataclass(frozen=True)\n class MyDeploymentFieldSet(DeployFieldSet):\n pass\n\n @rule\n async def my_deployment_process(field_set: MyDeploymentFieldSet) -> DeployProcess:\n # Create the underlying process that executes the deployment\n process = Process(...)\n return DeployProcess(\n name=\"my_deployment\",\n process=InteractiveProcess.from_process(process)\n )\n\n def rules():\n return [\n *collect_rules(),\n UnionRule(DeployFieldSet, MyDeploymentFieldSet)\n ]\n\nUse the `publish_dependencies` field to provide with a list of targets that produce packages\nwhich need to be externally published before the deployment process is executed.", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeployProcess", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.deploy.DeploySubsystem": { + "consumed_by_rules": [ + "pants.core.goals.deploy.run_deploy" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeploySubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_experimental_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy._PublishProcessesForTargetRequest": { + "consumed_by_rules": [ + "pants.core.goals.deploy.publish_process_for_target" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "_PublishProcessesForTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "_PublishProcessesForTargetRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.export.Export": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.base.build_root", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "Export", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.export.export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.export.ExportRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A union for exportable data provided by a backend.\n\nSubclass and install a member of this type to export data.", + "is_union": true, + "module": "pants.core.goals.export", + "name": "ExportRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ExportVenvsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = ())", + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.core.goals.export.ExportResults": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportSubsystem": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.Fmt": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "Fmt", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.scala.lint.scalafmt.rules", + "pants.core", + "pants.engine.process" + ], + "documentation": "FmtResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', formatter_name: 'str')", + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtResult", + "provider": "pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.experimental.go, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.isort, pants.backend.python.lint.yapf, pants.backend.shell.lint.shfmt", + "returned_by_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt_build_files", + "pants.core.goals.fmt.fmt_target_batch", + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.fmt.FmtSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtTargetsRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt" + ], + "dependencies": [], + "documentation": "FmtTargetsRequest(field_sets: 'Iterable[_FS]', snapshot: 'Snapshot') -> 'None'", + "is_union": true, + "module": "pants.core.goals.fmt", + "name": "FmtTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AutoflakeRequest", + "BlackRequest", + "BufFormatRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "PyUpgradeRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt_target_batch", + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.fmt._FmtBatchResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt" + ], + "documentation": "_FmtBatchResult(results: 'tuple[FmtResult, ...]', input: 'Digest', output: 'Digest')", + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "_FmtBatchResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fmt.fmt_build_files", + "pants.core.goals.fmt.fmt_target_batch" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.fmt._FmtBuildFilesBatchRequest": { + "consumed_by_rules": [ + "pants.core.goals.fmt.fmt_build_files" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "_FmtBuildFilesBatchRequest(request_types: 'tuple[type[_FmtBuildFilesRequest], ...]', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "_FmtBuildFilesBatchRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.fmt._FmtBuildFilesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf" + ], + "dependencies": [], + "documentation": "_FmtBuildFilesRequest(snapshot: 'Snapshot')", + "is_union": true, + "module": "pants.core.goals.fmt", + "name": "_FmtBuildFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "BlackRequest", + "BuildifierRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt_build_files", + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.fmt._FmtTargetBatchRequest": { + "consumed_by_rules": [ + "pants.core.goals.fmt.fmt_target_batch" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Format all the targets in the given batch.\n\nNOTE: Several requests can be made in parallel (via `MultiGet`) iff the target batches are\n non-overlapping. Within the request, the FmtTargetsRequests will be issued sequentially\n with the result of each run fed into the next run. To maximize parallel performance, the\n targets in a batch should share a FieldSet.", + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "_FmtTargetBatchRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfile": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A union base for generating ecosystem-specific lockfiles.\n\nEach language ecosystem should set up a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile` and `GenerateJVMLockfile`, and register a union rule. They should\nalso set up a simple rule that goes from that class -> `WrappedGenerateLockfile`.\n\nSubclasses will usually want to add additional properties, such as what requirements to\ninstall and Python interpreter constraints.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GenerateJvmLockfile", + "GeneratePythonLockfile" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfileResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "The result of generating a lockfile for a particular resolve.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfileResult", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "dependees": [ + "pants.backend.docker", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_generate_lockfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateToolLockfileSentinel": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "Tools use this as an entry point to say how to generate their tool lockfile.\n\nEach language ecosystem should set up a union member of `GenerateLockfile`, like\n`GeneratePythonLockfile`, as explained in that class's docstring.\n\nEach language ecosystem should also subclass `GenerateToolLockfileSentinel`, e.g.\n`GeneratePythonToolLockfileSentinel`. The subclass does not need to do anything - it is only used to know which language ecosystems tools correspond to.\n\nThen, each tool should subclass their language ecosystem's subclass of `GenerateToolLockfileSentinel` and set up a rule that goes from the\nsubclass -> the language's lockfile request, e.g. BlackLockfileSentinel ->\nGeneratePythonLockfile. Register `UnionRule(GenerateToolLockfileSentinel, MySubclass)`.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateToolLockfileSentinel", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AutoflakeLockfileSentinel", + "BanditLockfileSentinel", + "BlackLockfileSentinel", + "CoveragePyLockfileSentinel", + "DebugPyLockfileSentinel", + "DocformatterLockfileSentinel", + "DockerfileParserLockfileSentinel", + "Flake8LockfileSentinel", + "GoogleJavaFormatToolLockfileSentinel", + "GrpcJavaToolLockfileSentinel", + "HelmKubeParserLockfileSentinel", + "HelmPostRendererLockfileSentinel", + "IPythonLockfileSentinel", + "IsortLockfileSentinel", + "JavaParserToolLockfileSentinel", + "JunitToolLockfileSentinel", + "KotlinParserToolLockfileSentinel", + "KtlintToolLockfileSentinel", + "LambdexLockfileSentinel", + "MyPyExtraTypeStubsLockfileSentinel", + "MyPyLockfileSentinel", + "MypyProtobufLockfileSentinel", + "PoetryLockfileSentinel", + "PyUpgradeLockfileSentinel", + "PylintLockfileSentinel", + "PyoxidizerLockfileSentinel", + "PytestLockfileSentinel", + "ScalaParserToolLockfileSentinel", + "ScalafmtToolLockfileSentinel", + "ScalapbcToolLockfileSentinel", + "ScalatestToolLockfileSentinel", + "SetuptoolsLockfileSentinel", + "SetuptoolsSCMLockfileSentinel", + "StripJarToolLockfileSentinel", + "TerraformHcl2ParserLockfileSentinel", + "TwineLockfileSentinel", + "YapfLockfileSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNames": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNames", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNamesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A hook for a language ecosystem to declare which resolves it has defined.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> KnownUserResolveNames, usually by simply reading the\n`resolves` option from the relevant subsystem.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "KnownJVMUserResolveNamesRequest", + "KnownPythonUserResolveNamesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.RequestedUserResolveNames": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "The user resolves requested for a particular language ecosystem.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> UserGenerateLockfiles.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "RequestedUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RequestedJVMUserResolveNames", + "RequestedPythonUserResolveNames" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.UserGenerateLockfiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "UserGenerateLockfiles", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.WrappedGenerateLockfile": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "WrappedGenerateLockfile", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.lint.Lint": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "Lint", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.lint.lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintFilesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.project_info" + ], + "dependencies": [], + "documentation": "The entry point for linters that do not use targets.", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "LintFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RegexLintRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.lint.LintResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.process" + ], + "documentation": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResult", + "provider": "pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.pylint.rules.pylint_lint" + ] + }, + "pants.core.goals.lint.LintResults": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.java", + "pants.backend.shell", + "pants.core", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "Zero or more LintResult objects for a single linter.\n\nTypically, linters will return one result. If they no-oped, they will return zero results.\nHowever, some linters may need to partition their input and thus may need to return multiple\nresults. For example, many Python linters will need to group by interpreter compatibility.", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResults", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.helm, pants.backend.project_info, pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pylint, pants.backend.shell.lint.shellcheck", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.flake8_lint", + "pants.backend.python.lint.pylint.rules.pylint_lint", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.lint.LintSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.lint.lint" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintTargetsRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.helm", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.shell.lint.shellcheck" + ], + "dependencies": [], + "documentation": "The entry point for linters that need targets.", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "LintTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "BanditRequest", + "BufLintRequest", + "Flake8Request", + "HadolintRequest", + "HelmLintRequest", + "PylintRequest", + "ShellcheckRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.package.AllPackageableTargets": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependees": [ + "pants.backend.docker" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "AllPackageableTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.find_all_packageable_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.BuiltPackage": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "documentation": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "is_union": false, + "module": "pants.core.goals.package", + "name": "BuiltPackage", + "provider": "pants.backend.awslambda.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.google_cloud_function.python, pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.target_types.package_archive_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.core.goals.package.Package": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "Package", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.package_asset" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.PackageFieldSet": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "dependencies": [], + "documentation": "The fields necessary to build an asset from a target.", + "is_union": true, + "module": "pants.core.goals.package", + "name": "PackageFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ArchiveFieldSet", + "DeployJarFieldSet", + "DockerFieldSet", + "GoBinaryFieldSet", + "HelmPackageFieldSet", + "PackageWarFileFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonAwsLambdaFieldSet", + "PythonDistributionFieldSet", + "PythonGoogleCloudFunctionFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target" + ] + }, + "pants.core.goals.package.PackageSubsystem": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "PackageSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.Publish": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "Publish", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishFieldSet": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "dependencies": [], + "documentation": "FieldSet for PublishRequest.\n\nUnion members may list any fields required to fulfill the instantiation of the\n`PublishProcesses` result of the publish rule.", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "HelmPublishFieldSet", + "PublishDockerImageFieldSet", + "PublishPythonPackageFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishProcesses": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcesses", + "provider": "pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.core", + "returned_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.python.goals.publish.twine_upload", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.package_for_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishProcessesRequest": { + "consumed_by_rules": [ + "pants.core.goals.publish.package_for_publish" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Internal request taking all field sets for a target and turning it into a `PublishProcesses`\ncollection (via registered publish plugins).", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcessesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "dependencies": [], + "documentation": "Implement a union member subclass of this union class along with a PublishFieldSet subclass\nthat appoints that member subclass in order to receive publish requests for targets compatible\nwith the field set.\n\nThe `packages` hold all artifacts produced for a given target to be published.\n\nExample:\n\n PublishToMyRepoRequest(PublishRequest):\n pass\n\n PublishToMyRepoFieldSet(PublishFieldSet):\n publish_request_type = PublishToMyRepoRequest\n\n # Standard FieldSet semantics from here on:\n required_fields = (MyRepositories,)\n ...", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PublishDockerImageRequest", + "PublishHelmChartRequest", + "PublishPythonPackageRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.publish.package_for_publish" + ] + }, + "pants.core.goals.publish.PublishSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.Repl": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "Repl", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.ReplImplementation": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A REPL implementation for a specific language or runtime.\n\nProxies from the top-level `repl` goal to an actual implementation.", + "is_union": true, + "module": "pants.core.goals.repl", + "name": "ReplImplementation", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "IPythonRepl", + "PythonRepl", + "ScalaRepl" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "documentation": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplRequest", + "provider": "pants.backend.experimental.scala, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.Run": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "Run", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.run.run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.RunDebugAdapterRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "documentation": "Like RunRequest, but launches the process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunDebugAdapterRequest", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request", + "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary", + "pants.backend.shell.shell_command.run_shell_debug_adapter_binary", + "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunFieldSet": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "The fields necessary from a target to run a program/script.", + "is_union": true, + "module": "pants.core.goals.run", + "name": "RunFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployJarFieldSet", + "DockerFieldSet", + "GoBinaryFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonSourceFieldSet", + "RunShellCommand" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.helm", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "documentation": "RunRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunRequest", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.run.run" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.AllOwnedSources": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "All files in the project already owned by targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "AllOwnedSources", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.determine_all_owned_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.DisjointSourcePutativeTarget": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": "Putative target whose sources don't overlap with those of any existing targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "DisjointSourcePutativeTarget", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditBuildFilesRequest": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "EditBuildFilesRequest(putative_targets: 'PutativeTargets')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditBuildFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditedBuildFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "documentation": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditedBuildFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTarget": { + "consumed_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A potential target to add, detected by various heuristics.\n\nThis class uses the term \"target\" in the loose sense. It can also represent an invocation of a\ntarget-generating macro.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTarget", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargets": { + "consumed_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargetsRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "PutativeTargetsRequest(dirs: 'tuple[str, ...]', deprecated_recursive_dirs: 'tuple[str, ...]' = ())", + "is_union": true, + "module": "pants.core.goals.tailor", + "name": "PutativeTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PutativeDockerTargetsRequest", + "PutativeGoTargetsRequest", + "PutativeHelmChartTargetsRequest", + "PutativeJavaTargetsRequest", + "PutativeKotlinTargetsRequest", + "PutativeProtobufTargetsRequest", + "PutativePythonTargetsRequest", + "PutativeScalaTargetsRequest", + "PutativeShellTargetsRequest", + "PutativeTerraformTargetsRequest", + "PutativeThriftTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.TailorGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.TailorSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.tailor" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.UniquelyNamedPutativeTargets": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.target" + ], + "documentation": "Putative targets that have no name conflicts with existing targets (or each other).", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "UniquelyNamedPutativeTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.test.BuildPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "BuildPackageDependenciesRequest(field: 'RuntimePackageDependenciesField')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuildPackageDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.BuiltPackageDependencies": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuiltPackageDependencies", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.CoverageDataCollection": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.python" + ], + "dependencies": [], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "CoverageDataCollection", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCoverageDataCollection", + "PytestCoverageDataCollection" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.CoverageReports": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.process", + "pants.engine.target", + "pants.option.global_options" + ], + "documentation": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "CoverageReports", + "provider": "pants.backend.experimental.go, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.Test": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.console", + "pants.engine.desktop", + "pants.engine.fs", + "pants.engine.internals.session", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "Test", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.run_tests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestDebugAdapterRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "Like TestDebugRequest, but launches the test process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request", + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test", + "pants.jvm.test.junit.setup_junit_debug_adapter_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestDebugRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "documentation": "TestDebugRequest(process: 'InteractiveProcess')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.generate_go_tests_debug_request", + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestExtraEnv": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [ + "pants.engine.environment" + ], + "documentation": "TestExtraEnv(env: 'Environment')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestExtraEnv", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.get_filtered_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestFieldSet": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "The fields necessary to run tests on a target.", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestFieldSet", + "HelmUnitTestFieldSet", + "JunitTestFieldSet", + "PythonTestFieldSet", + "ScalatestTestFieldSet", + "Shunit2FieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.go", + "pants.core", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "documentation": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', address: 'Address', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestResult", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.jvm.test.junit.run_junit_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.test.get_filtered_environment", + "pants.core.goals.test.run_tests", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithBlackRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithBlackRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithYapfRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithYapfRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedFieldsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedFieldsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedTargetsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenamedFieldTypes": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenamedFieldTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.determine_renamed_field_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenamedTargetTypes": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "Deprecated target type names to new names.", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenamedTargetTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.determine_renamed_target_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RewrittenBuildFile": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "documentation": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.RewrittenBuildFileRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "RewrittenBuildFileRequest(path: 'str', lines: 'tuple[str, ...]', colors_enabled: 'bool')", + "is_union": true, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFileRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "FormatWithBlackRequest", + "FormatWithYapfRequest", + "RenameDeprecatedFieldsRequest", + "RenameDeprecatedTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesGoal": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.debug_adapter.DebugAdapterSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.debug_adapter", + "name": "DebugAdapterSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_debug_adapter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrap": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.system_binaries.find_python" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "PythonBootstrap(options: 'OptionValueContainer', environment: 'Environment', asdf_standard_tool_paths: 'tuple[str, ...]', asdf_local_tool_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrap", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrapSubsystem": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrapSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.target_types.AllAssetTargets": { + "consumed_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "dependees": [ + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.find_all_assets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.core.target_types.AllAssetTargetsByPath": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsByPath", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.core.target_types.AllAssetTargetsRequest": { + "consumed_by_rules": [ + "pants.core.target_types.find_all_assets" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "AllAssetTargetsRequest()", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.core.target_types.ArchiveFieldSet": { + "consumed_by_rules": [ + "pants.core.target_types.package_archive_target" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ArchiveFieldSet(address: 'Address', packages: 'ArchivePackagesField', files: 'ArchiveFilesField', format_field: 'ArchiveFormatField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.core.target_types", + "name": "ArchiveFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateFileSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_file_source" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateFileSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateResourceSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_resource_source" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateResourceSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.RelocateFilesViaCodegenRequest": { + "consumed_by_rules": [ + "pants.core.target_types.relocate_files" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "RelocateFilesViaCodegenRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.util_rules.archive.CreateArchive": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.create_archive" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A request to create an archive.\n\nAll files in the input snapshot will be included in the resulting archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "CreateArchive", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.package_archive_target" + ] + }, + "pants.core.util_rules.archive.ExtractedArchive": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "documentation": "The result of extracting an archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "ExtractedArchive", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.core.util_rules.archive.MaybeExtractArchiveRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "documentation": "A request to extract a single archive file (otherwise returns the input digest).\n\n:param digest: The digest of the archive to maybe extract. If the archive contains a single file\n which matches a known suffix, the `ExtractedArchive` will contain the extracted digest.\n Otherwise the `ExtractedArchive` will contain this digest.\n:param use_suffix: If provided, extracts the single file archive as if it had this suffix.\n Useful in situations where the file is archived then renamed.\n (E.g. A Python `.whl` is a renamed `.zip`, so the client should provide `\".zip\"`)", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "MaybeExtractArchiveRequest", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.asdf.AsdfToolPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "AsdfToolPathsRequest(tool_name: 'str', tool_description: 'str', resolve_standard: 'bool', resolve_local: 'bool', extra_env_var_names: 'tuple[str, ...]', paths_option_name: 'str', bin_relpath: 'str' = 'bin')", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.asdf.AsdfToolPathsResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependencies": [ + "pants.base.build_root", + "pants.engine.environment" + ], + "documentation": "AsdfToolPathsResult(tool_name: 'str', env: 'Environment', standard_tool_paths: 'tuple[str, ...]' = (), local_tool_paths: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.config_files.ConfigFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "documentation": "Config files used by a tool run by Pants.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.config_files.ConfigFilesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Resolve the specified config files if given, else look for candidate config files if\ndiscovery is enabled.\n\nFiles in `check_existence` only need to exist, whereas files in `check_content` both must exist\nand contain the bytes snippet in the file.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.distdir.DistDir": { + "consumed_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.lint.lint", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests" + ], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.base.build_root" + ], + "documentation": "The directory to which we write distributable files.", + "is_union": false, + "module": "pants.core.util_rules.distdir", + "name": "DistDir", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.distdir.get_distdir" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.external_tool.DownloadedExternalTool": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.build_files.fmt.buildifier", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "documentation": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "DownloadedExternalTool", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.external_tool.ExternalToolRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ExternalToolRequest(download_file_request: 'DownloadFile', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "ExternalToolRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.source_files.SourceFiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "dependees": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.engine.target" + ], + "documentation": "A merged snapshot of the `sources` fields of multiple targets.", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.source_files.determine_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.style.setup_terraform_style", + "pants.core.goals.fmt.fmt_target_batch", + "pants.core.goals.lint.lint", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.source_files.SourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.core.util_rules.source_files.determine_source_files" + ], + "dependees": [ + "pants.backend.experimental.scala", + "pants.core" + ], + "dependencies": [], + "documentation": "SourceFilesRequest(sources_fields: Iterable[pants.engine.target.SourcesField], *, for_sources_types: Iterable[Type[pants.engine.target.SourcesField]] = (,), enable_codegen: bool = False)", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.style.setup_terraform_style", + "pants.core.goals.fmt.fmt_target_batch", + "pants.core.goals.lint.lint", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileName": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "StrippedFileName(value: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileName", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileNameRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "StrippedFileNameRequest(file_path: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFileNames": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFileNames", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "documentation": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironment": { + "consumed_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironmentVars": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.environment" + ], + "documentation": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironmentVars", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.BashBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [], + "documentation": "The `bash` binary.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.get_bash" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.system_binaries.get_bash" + ] + }, + "pants.core.util_rules.system_binaries.BashBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_bash" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "BashBinaryRequest(search_path: 'SearchPath' = SearchPath(['/usr/bin', '/bin', '/usr/local/bin']))", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.system_binaries.get_bash" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPathRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Request to find a binary of a given name.\n\nIf `check_file_entries` is `True` a BinaryPathRequest will consider any entries in the\n`search_path` that are file paths in addition to traditional directory paths.\n\nIf a `test` is specified all binaries that are found will be executed with the test args and\nonly those binaries whose test executions exit with return code 0 will be retained.\nAdditionally, if test execution includes stdout content, that will be used to fingerprint the\nbinary path so that upgrades and downgrades can be detected. A reasonable test for many programs\nmight be `BinaryPathTest(args=[\"--version\"])` since it will both ensure the program runs and\nalso produce stdout text that changes upon upgrade or downgrade of the binary at the discovered\npath.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPathRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPaths": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.process" + ], + "documentation": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShims": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker" + ], + "dependencies": [ + "pants.backend.experimental.helm" + ], + "documentation": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `bin_directory` added to\nPATH so that the binaries are available for execution.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShims", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.docker.util_rules.docker_binary.find_docker" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShimsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Request to create shims for one or more system binaries.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShimsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.docker.util_rules.docker_binary.find_docker" + ] + }, + "pants.core.util_rules.system_binaries.CatBinary": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.util_rules.system_binaries.find_cat_wrapper" + ], + "dependees": [ + "pants.backend.experimental.helm", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CatBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_cat_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ChmodBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ChmodBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.CpBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CpBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_cp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.DiffBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format" + ] + }, + "pants.core.util_rules.system_binaries.DiffBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "DiffBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format" + ] + }, + "pants.core.util_rules.system_binaries.GitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.GunzipBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "GunzipBinary(python: 'PythonBinary')", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GunzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip", + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.GunzipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "GunzipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GunzipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.MaybeGitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "pants.vcs.git.get_git_worktree" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MaybeGitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git", + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MkdirBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MkdirBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MvBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependees": [ + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MvBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.OpenBinary": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "OpenBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_open" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.PythonBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.system_binaries.find_gunzip", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.core" + ], + "dependencies": [], + "documentation": "A Python3 interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nPython is usable for `@rule` scripting independently of `pants.backend.python`, but currently\nthirdparty dependencies are not supported, because PEX lives in that backend.\n\nTODO: Consider extracting PEX out into the core in order to support thirdparty dependencies.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "PythonBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "dependees": [ + "pants.backend.experimental.scala", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ReadlinkBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ] + }, + "pants.core.util_rules.system_binaries.TarBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TarBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TouchBinary": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TouchBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_touch" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.UnzipBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "pants.jvm.classpath.loose_classfiles" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_unzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.UnzipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "UnzipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.ZipBinary": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.core.util_rules.system_binaries.find_zip_wrapper", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.core" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.find_zip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive" + ] + }, + "pants.core.util_rules.system_binaries.ZipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip_wrapper" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "ZipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive" + ] + }, + "pants.engine.addresses.Addresses": { + "consumed_by_rules": [ + "pants.backend.project_info.dependees.dependees_goal", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.filter_targets.filter_targets", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.engine.addresses", + "name": "Addresses", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.project_info.dependees.map_addresses_to_dependees", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.addresses.UnparsedAddressInputs": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Raw addresses that have not been parsed yet.\n\nYou can convert these into fully normalized `Addresses` and `Targets` like this:\n\n await Get(Addresses, UnparsedAddressInputs([\"//:tgt1\", \"//:tgt2\"], owning_address=None)\n await Get(Targets, UnparsedAddressInputs([...], owning_address=Address(\"original\"))\n\nThis is intended for contexts where the user specifies addresses outside of the `dependencies`\nfield, such as through an option or a special field on a target that is not normal\n`dependencies`. You should not use this to resolve the `dependencies` field; use\n`await Get(Addresses, DependenciesRequest)` for that.\n\nIf the addresses are coming from a target's fields, set `owning_address` so that relative\nreferences like `:sibling` work properly.\n\nUnlike the `dependencies` field, this type does not work with `!` and `!!` ignores.\n\nSet `description_of_origin` to a value like \"CLI arguments\" or \"the `dependencies` field\nfrom {tgt.address}\". It is used for better error messages.", + "is_union": false, + "module": "pants.engine.addresses", + "name": "UnparsedAddressInputs", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ] + }, + "pants.engine.desktop.OpenFilesRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "OpenFilesRequest(files: Iterable[pathlib.PurePath], *, error_if_open_not_found: bool = True)", + "is_union": false, + "module": "pants.engine.desktop", + "name": "OpenFilesRequest", + "provider": "pants.engine.desktop", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.environment.EnvironmentRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Requests a subset of the variables set in the environment.\n\nRequesting only the relevant subset of the environment reduces invalidation caused by unrelated\nchanges.", + "is_union": false, + "module": "pants.engine.environment", + "name": "EnvironmentRequest", + "provider": "pants.engine.environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.export.export", + "pants.core.goals.test.get_filtered_environment", + "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.fs.CreateDigest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to create a Digest with the input FileContent and/or Directory values.\n\nThe engine will create any parent directories necessary, e.g. `FileContent('a/b/c.txt')` will\nresult in `a/`, `a/b`, and `a/b/c.txt` being created. You only need to use `Directory` to\ncreate an empty directory.\n\nThis does _not_ actually materialize the digest to the build root. You must use\n`engine.fs.Workspace` in a `@goal_rule` to save the resulting digest to disk.", + "is_union": false, + "module": "pants.engine.fs", + "name": "CreateDigest", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_analysis.generate_import_config", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.setup_py.generate_setup_py", + "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.strip_jar.strip_jar.build_processors" + ] + }, + "pants.engine.fs.DigestSubset": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to get a subset of a digest.\n\nExample:\n\n result = await Get(Digest, DigestSubset(original_digest, PathGlobs([\"subdir1\", \"f.txt\"]))", + "is_union": false, + "module": "pants.engine.fs", + "name": "DigestSubset", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.util_rules.dists.find_build_system", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "pants.engine.fs.DownloadFile": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Retrieve the contents of a file via an HTTP GET request or directly for local file:// URLs.\n\nTo compute the `expected_digest`, manually download the file, then run `shasum -a 256` to\ncompute the fingerprint and `wc -c` to compute the expected length of the downloaded file in\nbytes.", + "is_union": false, + "module": "pants.engine.fs", + "name": "DownloadFile", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.engine.fs.PathGlobs": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "PathGlobs(globs: 'Iterable[str]', glob_match_error_behavior: 'GlobMatchErrorBehavior' = , conjunction: 'GlobExpansionConjunction' = , description_of_origin: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.fs", + "name": "PathGlobs", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.core.goals.fmt.fmt_build_files", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.util_rules.config_files.find_config_file", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ] + }, + "pants.engine.internals.graph.OwnersRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request for the owners of a set of file paths.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "OwnersRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.process.InteractiveProcess": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core" + ], + "documentation": "InteractiveProcess(argv: 'Iterable[str]', *, env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), run_in_workspace: 'bool' = False, forward_signals_to_process: 'bool' = True, restartable: 'bool' = False, cleanup: 'bool | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, keep_sandboxes: 'KeepSandboxes | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "InteractiveProcess", + "provider": "pants.backend.experimental.helm, pants.engine.process", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.engine.process.interactive_process_from_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.export.export", + "pants.core.goals.publish.run_publish", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.process.Process": { + "consumed_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.go.util_rules.sdk", + "pants.backend.google_cloud_function.python", + "pants.backend.helm.util_rules.tool", + "pants.backend.python", + "pants.backend.terraform.dependency_inference", + "pants.backend.terraform.tool", + "pants.engine.environment", + "pants.engine.target", + "pants.jvm.jdk_rules", + "pants.jvm.resolve.coursier_setup" + ], + "documentation": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None, remote_cache_speculation_delay_millis: 'int' = 0) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "Process", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.terraform, pants.backend.shell, pants.core, pants.engine.process", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.run_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.process.ProcessResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "dependencies": [ + "pants.engine.process", + "pants.option.global_options" + ], + "documentation": "Result of executing a process which should not fail.\n\nIf the process has a non-zero exit code, this will raise an exception, unlike\nFallibleProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessResult", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.export_virtualenv", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.run_shell_command", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.engine.process.ProductDescription": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependees": [ + "pants.backend.experimental.helm" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.process" + ], + "documentation": "ProductDescription(value: 'str')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProductDescription", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactory": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "is_union": false, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactory", + "provider": "pants.core", + "returned_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback", + "pants.goal.stats_aggregator.construct_callback" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactoryRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "A request for a particular WorkunitsCallbackFactory.", + "is_union": true, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactoryRequest", + "provider": "pants.engine.streaming_workunit_handler", + "returned_by_rules": [], + "union_members": [ + "AnonymousTelemetryCallbackFactoryRequest", + "StatsAggregatorCallbackFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.AllTargetsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Find all targets in the project.\n\nUse with either `AllUnexpandedTargets` or `AllTargets`.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ] + }, + "pants.engine.target.CoarsenedTargets": { + "consumed_by_rules": [ + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "dependencies": [], + "documentation": "The CoarsenedTarget roots of a transitive graph walk for some addresses.\n\nTo collect all reachable CoarsenedTarget members, use `def closure`.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargets", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.jvm.classpath.classpath" + ] + }, + "pants.engine.target.CoarsenedTargetsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to get CoarsenedTargets for input roots.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile" + ] + }, + "pants.engine.target.DependenciesRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "DependenciesRequest(field: 'Dependencies', include_special_cased_deps: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.project_info.dependees.map_addresses_to_dependees", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.jvm.package.war.package_war" + ] + }, + "pants.engine.target.FieldDefaultFactoryRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "Registers a dynamic default for a Field.\n\nSee `FieldDefaults`.", + "is_union": true, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "JvmResolveFieldDefaultFactoryRequest", + "PythonResolveFieldDefaultFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldDefaultFactoryResult": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core" + ], + "documentation": "A wrapper for a function which computes the default value of a Field.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldSetsPerTargetRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "FieldSetsPerTargetRequest(field_set_superclass: 'Type[_FS]', targets: 'Iterable[Target]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target" + ] + }, + "pants.engine.target.GenerateSourcesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.python", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [], + "documentation": "A request to go from protocol sources -> a particular language.\n\nThis should be subclassed for each distinct codegen implementation. The subclasses must define\nthe class properties `input` and `output`. The subclass must also be registered via\n`UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest)`, for example.\n\nThe rule to actually implement the codegen should take the subclass as input, and it must\nreturn `GeneratedSources`.\n\nThe `exportable` attribute disables the use of this codegen by the `export-codegen` goal when\nset to False.\n\nFor example:\n\n class GenerateFortranFromAvroRequest:\n input = AvroSources\n output = FortranSources\n\n @rule\n def generate_fortran_from_avro(request: GenerateFortranFromAvroRequest) -> GeneratedSources:\n ...\n\n def rules():\n return [\n generate_fortran_from_avro,\n UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateDockerContextFiles", + "GenerateDockerfileRequest", + "GenerateFileSourceRequest", + "GenerateFilesFromShellCommandRequest", + "GenerateGoFromProtobufRequest", + "GenerateJavaFromProtobufRequest", + "GeneratePythonFromProtobufRequest", + "GeneratePythonFromSetuptoolsSCMRequest", + "GeneratePythonFromThriftRequest", + "GenerateResourceSourceRequest", + "GenerateScalaFromProtobufRequest", + "RelocateFilesViaCodegenRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.GenerateTargetsRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.plugin_development", + "pants.backend.python" + ], + "dependencies": [], + "documentation": "GenerateTargetsRequest(generator: '_TargetGenerator', template_address: 'Address', template: 'dict[str, Any]', overrides: 'dict[str, dict[Address, dict[str, Any]]]')", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateFromPantsRequirementsRequest", + "GenerateFromPipenvRequirementsRequest", + "GenerateFromPoetryRequirementsRequest", + "GenerateFromPythonRequirementsRequest", + "GenerateTargetsFromGoModRequest", + "GenerateTargetsFromPexBinaries" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.GeneratedSources": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.python", + "pants.engine.environment", + "pants.engine.target" + ], + "documentation": "GeneratedSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.shell.shell_command.run_shell_command", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.relocate_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.GeneratedTargets": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "builtins", + "pants.base.build_root", + "pants.engine.fs", + "pants.engine.unions" + ], + "documentation": "A mapping of the address of generated targets to the targets themselves.", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedTargets", + "provider": "pants.backend.experimental.go, pants.backend.plugin_development, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.HydrateSourcesRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "HydrateSourcesRequest(field: 'SourcesField', *, for_sources_types: 'Iterable[type[SourcesField]]' = (,), enable_codegen: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "HydrateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.InferDependenciesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "A request to infer dependencies by analyzing source files.\n\nTo set up a new inference implementation, subclass this class. Set the class property\n`infer_from` to the FieldSet subclass you are able to infer from. This will cause the FieldSet\nclass, and any subclass, to use your inference implementation.\n\nNote that there cannot be more than one implementation for a particular `FieldSet` class.\n\nRegister this subclass with `UnionRule(InferDependenciesRequest, InferFortranDependencies)`, for example.\n\nThen, create a rule that takes the subclass as a parameter and returns `InferredDependencies`.\n\nFor example:\n\n class InferFortranDependencies(InferDependenciesRequest):\n infer_from = FortranDependenciesInferenceFieldSet\n\n @rule\n def infer_fortran_dependencies(request: InferFortranDependencies) -> InferredDependencies:\n hydrated_sources = await Get(HydratedSources, HydrateSources(request.sources))\n ...\n return InferredDependencies(...)\n\n def rules():\n return [\n infer_fortran_dependencies,\n UnionRule(InferDependenciesRequest, InferFortranDependencies),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "InferDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "InferApacheThriftPythonDependencies", + "InferConftestDependencies", + "InferDockerDependencies", + "InferGoBinaryMainDependencyRequest", + "InferGoPackageDependenciesRequest", + "InferGoThirdPartyPackageDependenciesRequest", + "InferHelmChartDependenciesRequest", + "InferHelmDeploymentDependenciesRequest", + "InferHelmUnitTestChartDependencyRequest", + "InferInitDependencies", + "InferJavaSourceDependencies", + "InferKotlinJunitTestDependencyRequest", + "InferKotlinRuntimeDependencyRequest", + "InferKotlinSourceDependencies", + "InferPexBinaryEntryPointDependency", + "InferProtobufDependencies", + "InferProtobufJavaRuntimeDependencyRequest", + "InferPythonCloudFunctionHandlerDependency", + "InferPythonDistributionDependencies", + "InferPythonImportDependencies", + "InferPythonLambdaHandlerDependency", + "InferPythonProtobufDependencies", + "InferScalaLibraryDependencyRequest", + "InferScalaPBRuntimeDependencyRequest", + "InferScalaPluginDependenciesRequest", + "InferScalaSourceDependencies", + "InferShellDependencies", + "InferTerraformModuleDependenciesRequest", + "InferThriftDependencies" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.InferredDependencies": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.addresses", + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "documentation": "InferredDependencies(include: 'Iterable[Address]', *, exclude: 'Iterable[Address]' = ()) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "InferredDependencies", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.google_cloud_function.python, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.PluginField": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java" + ], + "dependencies": [], + "documentation": null, + "is_union": true, + "module": "pants.engine.target", + "name": "PluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GoOwningGoModAddressField", + "PrefixedJvmJdkField", + "PrefixedJvmResolveField", + "ProtobufPythonInterpreterConstraintsField", + "ProtobufPythonResolveField", + "PythonSourceRootField", + "SkipBufFormatField", + "SkipBufLintField" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.SourcesPathsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to resolve the file names of the `source`/`sources` field.\n\nUse via `Get(SourcesPaths, SourcesPathRequest(tgt.get(SourcesField))`.\n\nThis is faster than `Get(HydratedSources, HydrateSourcesRequest)` because it does not snapshot\nthe files and it only resolves the file names.\n\nThis does not consider codegen, and only captures the files from the field. Use\n`HydrateSourcesRequest` to use codegen.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPathsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettings": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings", + "pants.backend.codegen.thrift.target_types.generator_settings", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.scala.target_types.scala_settings_request", + "pants.backend.shell.target_types.generator_settings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.TargetFilesGeneratorSettingsRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "dependencies": [], + "documentation": "An optional union to provide dynamic settings for a `TargetFilesGenerator`.\n\nSee `TargetFilesGenerator`.", + "is_union": true, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettingsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GeneratorSettingsRequest", + "GeneratorSettingsRequest", + "PythonFilesGeneratorSettingsRequest", + "ScalaSettingsRequest", + "ShellGeneratorSettingsRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.TargetRootsToFieldSetsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "TargetRootsToFieldSetsRequest(field_set_superclass: 'Type[_FS]', *, goal_description: 'str', no_applicable_targets_behavior: 'NoApplicableTargetsBehavior', expect_single_field_set: 'bool' = False, shard: 'int' = 0, num_shards: 'int' = -1) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetRootsToFieldSetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.run_publish", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.target.Targets": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.target", + "pants.engine.unions" + ], + "documentation": "A heterogeneous collection of instances of Target subclasses.\n\nWhile every element will be a subclass of `Target`, there may be many different `Target` types\nin this collection, e.g. some `FileTarget` and some `PythonTestTarget`.\n\nOften, you will want to filter out the relevant targets by looking at what fields they have\nregistered, e.g.:\n\n valid_tgts = [tgt for tgt in tgts if tgt.has_fields([Compatibility, PythonSources])]\n\nYou should not check the Target's actual type because this breaks custom target types;\nfor example, prefer `tgt.has_field(PythonTestsSourcesField)` to\n`isinstance(tgt, PythonTestsTarget)`.", + "is_union": false, + "module": "pants.engine.target", + "name": "Targets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.engine.target.TransitiveTargetsRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "A request to get the transitive dependencies of the input roots.\n\nResolve the transitive targets with `await Get(TransitiveTargets,\nTransitiveTargetsRequest([addr1, addr2])`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.paths", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.UnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek" + ], + "dependees": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.backend.python", + "pants.core" + ], + "dependencies": [], + "documentation": "Like `Targets`, but will not replace target generators with their generated targets (e.g.\nreplace `python_sources` \"BUILD targets\" with generated `python_source` \"file targets\").", + "is_union": false, + "module": "pants.engine.target", + "name": "UnexpandedTargets", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.project_info.peek.peek", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.engine.target.ValidateDependenciesRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.python" + ], + "dependencies": [], + "documentation": "A request to validate dependencies after they have been computed.\n\nAn implementing rule should raise an exception if dependencies are invalid.", + "is_union": true, + "module": "pants.engine.target", + "name": "ValidateDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "PythonValidateDependenciesRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.ValidatedDependencies": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "documentation": "ValidatedDependencies()", + "is_union": false, + "module": "pants.engine.target", + "name": "ValidatedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.WrappedTargetRequest": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "Used with `WrappedTarget` to get the Target corresponding to an address.\n\n`description_of_origin` is used for error messages when the address does not actually exist. If\nyou are confident this cannot happen, set the string to something like ``.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.core.goals.run.run" + ] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetry": { + "consumed_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetry", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_anonymous_telemetry" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetryCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetryCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorSubsystem": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_stats" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.bsp.compile.BSPClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A wrapper around a `ClasspathEntryRequest` which notifies the BSP client on completion.\n\nTODO: Because this struct contains a `task_id`, messages will re-render in every run, even\nthough the underlying computation does not re-run. See #15426 for an alternative.", + "is_union": false, + "module": "pants.jvm.bsp.compile", + "name": "BSPClasspathEntryRequest", + "provider": "pants.jvm.bsp.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.classpath.Classpath": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.key" + ], + "documentation": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "Classpath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.classpath" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.classpath.LooseClassfiles": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.scala", + "pants.core", + "pants.jvm.compile" + ], + "documentation": "The contents of a classpath entry as loose classfiles.\n\nNote that `ClasspathEntry` and `Classpath` both guarantee that they contain JAR files, and so\ncreating loose classfiles from them involves extracting their entry.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "LooseClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.compile.ClasspathDependenciesRequest": { + "consumed_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "ClasspathDependenciesRequest(request: 'ClasspathEntryRequest', ignore_generated: 'bool' = False)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathDependenciesRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.ClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nIf `[jvm].reproducible_jars`, then all JARs in a classpath entry must have had timestamps\nstripped -- either natively, or via the `pants.jvm.strip_jar` rules.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.\n\nNote: Non-jar artifacts (e.g., executables with \"exe\" packaging) may end up on the classpath if\nthey are dependencies.\nTODO: Does there need to be a filtering mechanism to exclude non-jar artifacts in the default case?", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.jvm.compile", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.jvm.compile.required_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.classpath.classpath", + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.compile.ClasspathEntryRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "A request for a ClasspathEntry for the given CoarsenedTarget and resolve.\n\nTODO: Move to `classpath.py`.", + "is_union": true, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [ + "CompileJavaSourceRequest", + "CompileKotlinSourceRequest", + "CompileScalaSourceRequest", + "CoursierFetchRequest", + "DeployJarClasspathEntryRequest", + "JvmResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.compile.ClasspathEntryRequestFactory": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.unions" + ], + "documentation": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.calculate_jvm_request_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.compile.ClasspathEntryRequests": { + "consumed_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java, pants.jvm.compile", + "returned_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntries": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.compile.required_classfiles" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process", + "pants.jvm.bsp.compile", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resources.assemble_resources_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmTypeProvidingTargets": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AvailableThirdPartyArtifacts": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.ThirdPartySymbolMapping": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "The third party symbols provided by all `jvm_artifact` targets.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.symbol_mapper.FirstPartyMappingRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "An entry point for a specific implementation of mapping JVM package names to owning targets.\n\nAll implementations will be merged together.\n\nThe addresses should all be file addresses, rather than BUILD addresses.", + "is_union": true, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "FirstPartyMappingRequest", + "provider": "pants.jvm.dependency_inference.symbol_mapper", + "returned_by_rules": [], + "union_members": [ + "FirstPartyJavaTargetsMappingRequest", + "FirstPartyKotlinTargetsMappingRequest", + "FirstPartyScalaTargetsMappingRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMap": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "The first party symbols provided by a single inference implementation.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMap", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMapping": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.engine.unions" + ], + "documentation": "The merged first and third party symbols provided by all inference implementations.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.GenerateJvmLockfile": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.unions", + "pants.jvm.goals.lockfile", + "pants.jvm.resolve.common" + ], + "documentation": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', artifacts: 'ArtifactRequirements')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.goals.lockfile.KnownJVMUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "KnownJVMUserResolveNamesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.RequestedJVMUserResolveNames": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "RequestedJVMUserResolveNames", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveRequest": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.scala" + ], + "dependencies": [], + "documentation": "Hook for backends to validate the artifact requirements requested for a resolve.\n\nThe main user is the Scala backend which will ensure scala-library is present in the resolve.", + "is_union": true, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [ + "ValidateResolveHasScalaRuntimeRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "documentation": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile._ValidateJvmArtifactsRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "_ValidateJvmArtifactsRequest(artifacts: 'ArtifactRequirements', resolve_name: 'str')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "_ValidateJvmArtifactsRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.jdk_rules.InternalJdk": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [], + "documentation": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "InternalJdk", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.internal_jdk" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jdk_rules.JdkEnvironment": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process", + "pants.jvm.jdk_rules" + ], + "documentation": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int', global_jvm_options: 'tuple[str, ...]', java_home_command: 'str')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkEnvironment", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JdkRequest": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "Request for a JDK with a specific major version, or a default (`--jvm-jdk` or System).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkRequest", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JvmProcess": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.jvm_process" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "JvmProcess(jdk: 'JdkEnvironment', argv: 'Iterable[str]', classpath_entries: 'Iterable[str]', input_digest: 'Digest', description: 'str', level: 'LogLevel' = , extra_jvm_options: 'Iterable[str] | None' = None, extra_nailgun_keys: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_env: 'Mapping[str, str] | None' = None, timeout_seconds: 'int | float | None' = None, platform: 'Platform | None' = None, cache_scope: 'ProcessCacheScope | None' = None, use_nailgun: 'bool' = True, remote_cache_speculation_delay: 'int | None' = None)", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JvmProcess", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.jdk_rules.Nailgun": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "documentation": "Nailgun(classpath_entry: 'ClasspathEntry')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "Nailgun", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.deploy_jar_classpath" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarClasspathEntryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarFieldSet": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "DeployJarFieldSet(address: 'Address', main_class: pants.jvm.target_types.JvmMainClassNameField, output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmDependenciesField, jdk_version: pants.jvm.target_types.JvmJdkField)", + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarFieldSet", + "provider": "pants.backend.experimental.java, pants.jvm.package.deploy_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.jvm.package.war.PackageWarFileFieldSet": { + "consumed_by_rules": [ + "pants.jvm.package.war.package_war" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "PackageWarFileFieldSet(address: 'Address', output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmWarDependenciesField, descriptor: pants.jvm.target_types.JvmWarDescriptorAddressField, content: pants.jvm.target_types.JvmWarContentField)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "PackageWarFileFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.jvm.package.war.RenderWarContentRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "RenderWarContentRequest(content: pants.jvm.target_types.JvmWarContentField)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarContentRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderWarDeploymentDescriptorRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "RenderWarDeploymentDescriptorRequest(descriptor: pants.jvm.target_types.JvmWarDescriptorAddressField, owning_address: pants.build_graph.address.Address)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarDeploymentDescriptorRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarContent": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.addresses", + "pants.jvm.package.war" + ], + "documentation": "RenderedWarContent(digest: Digest)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarContent", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarDeploymentDescriptor": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.engine.target", + "pants.jvm.package.war" + ], + "documentation": "RenderedWarDeploymentDescriptor(digest: Digest)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.resolve.common.ArtifactRequirements": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.build_graph.address", + "pants.core" + ], + "documentation": "An ordered list of Coordinates used as requirements.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "ArtifactRequirements", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.common", + "returned_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.common.GatherJvmCoordinatesRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A request to turn strings of coordinates (`group:artifact:version`) and/or addresses to\n`jvm_artifact` targets into `ArtifactRequirements`.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "GatherJvmCoordinatesRequest", + "provider": "pants.jvm.resolve.common", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierFetchRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierFetchRequest", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierLockfileEntry": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A single artifact entry from a Coursier-resolved lockfile.\n\nThese fields are nearly identical to the JSON objects from the\n\"dependencies\" entries in Coursier's --json-output-file format.\nBut unlike Coursier's JSON report, a CoursierLockfileEntry\nincludes the content-address of the artifact fetched by Coursier\nand ingested by Pants.\n\nFor example, a Coursier JSON report dependency entry might look like this:\n\n```\n{\n \"coord\": \"com.chuusai:shapeless_2.13:2.3.3\",\n \"file\": \"/home/USER/.cache/coursier/v1/https/repo1.maven.org/maven2/com/chuusai/shapeless_2.13/2.3.3/shapeless_2.13-2.3.3.jar\",\n \"directDependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ],\n \"dependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ]\n}\n```\n\nThe equivalent CoursierLockfileEntry would look like this:\n\n```\nCoursierLockfileEntry(\n coord=\"com.chuusai:shapeless_2.13:2.3.3\", # identical\n file_name=\"shapeless_2.13-2.3.3.jar\" # PurePath(entry[\"file\"].name)\n direct_dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n file_digest=FileDigest(fingerprint=, ...),\n)\n```\n\nThe fields `remote_url` and `pants_address` are set by Pants if the `coord` field matches a\n`jvm_artifact` that had either the `url` or `jar` fields set.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierLockfileEntry", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolveInfo": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.resolve.common" + ], + "documentation": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolvedLockfile": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.common", + "pants.jvm.resolve.key" + ], + "documentation": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ResolvedClasspathEntries": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "A collection of resolved classpath entries.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspath": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "builtins", + "pants.jvm.resolve.common", + "pants.jvm.resolve.coursier_fetch" + ], + "documentation": "A fully fetched and merged classpath for running a JVM tool.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspathRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "A request to set up the classpath for a JVM tool by fetching artifacts and merging the\nclasspath.\n\n:param prefix: if set, should be a relative directory that will\n be prepended to every classpath element. This is useful for\n keeping all classpath elements isolated under a single directory\n in a process invocation, where other inputs on the process's\n root directory might interfere with un-prefixed classpath\n entries (or vice versa).", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspathRequest", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_setup.Coursier": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "Coursier", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.coursier_setup.CoursierFetchProcess": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "CoursierFetchProcess(args: 'Tuple[str, ...]', input_digest: 'Digest', output_directories: 'Tuple[str, ...]', output_files: 'Tuple[str, ...]', description: 'str')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierFetchProcess", + "provider": "pants.jvm.resolve.coursier_setup", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_setup.CoursierSubsystem": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.jvm_tool.GenerateJvmLockfileFromTool": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.rules", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.java.dependency_inference.java_parser", + "pants.backend.java.lint.google_java_format.rules", + "pants.backend.kotlin.dependency_inference.kotlin_parser", + "pants.backend.kotlin.lint.ktlint.rules", + "pants.backend.scala.dependency_inference.scala_parser", + "pants.backend.scala.lint.scalafmt.rules", + "pants.backend.scala.test.scalatest", + "pants.jvm.strip_jar.strip_jar", + "pants.jvm.test.junit" + ], + "documentation": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "is_union": false, + "module": "pants.jvm.resolve.jvm_tool", + "name": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.key.CoursierResolveKey": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "dependees": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "documentation": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.key", + "name": "CoursierResolveKey", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.key", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resources.JvmResourcesRequest": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resources", + "name": "JvmResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.strip_jar.strip_jar.StripJarCompiledClassfiles": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "documentation": "StripJarCompiledClassfiles(digest: Digest)", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.strip_jar.strip_jar.StripJarRequest": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "StripJarRequest(digest: Digest, filenames: Tuple[str, ...])", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarRequest", + "provider": "pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.package_deploy_jar" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.jvm.subsystems.JvmSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.target_types.jvm_resolve_field_default_factory", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependees": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.subsystems", + "name": "JvmSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_jvm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.target_types.JvmResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmJdkField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmJdkField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmResolveField": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [ + "pants.engine.target" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmResolveField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestFieldSet": { + "consumed_by_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_adapter_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": "JunitTestFieldSet(address: 'Address', sources: 'JunitTestSourceField', timeout: 'JunitTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'TestExtraEnvVarsField')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.test.junit.TestSetup": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.environment", + "pants.engine.target", + "pants.jvm.test.junit" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetup", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.test.junit.TestSetupRequest": { + "consumed_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "TestSetupRequest(field_set: 'JunitTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetupRequest", + "provider": "pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.util_rules.ExtractFileDigest": { + "consumed_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "dependees": [ + "pants.backend.experimental.java" + ], + "dependencies": [], + "documentation": "ExtractFileDigest(digest: 'Digest', file_path: 'str')", + "is_union": false, + "module": "pants.jvm.util_rules", + "name": "ExtractFileDigest", + "provider": "pants.jvm.util_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.option.global_options.GlobalOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.project_info.paths.paths", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.run.run", + "pants.core.goals.tailor.tailor", + "pants.core.util_rules.distdir.get_distdir", + "pants.jvm.jdk_rules.jvm_process" + ], + "dependees": [ + "pants.backend.docker", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.option.global_options", + "name": "GlobalOptions", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.scope.Scope": { + "consumed_by_rules": [], + "dependees": [], + "dependencies": [], + "documentation": "An options scope.", + "is_union": false, + "module": "pants.option.scope", + "name": "Scope", + "provider": "pants.option.scope", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_scope_", + "construct_scope_anonymous_telemetry", + "construct_scope_apache_thrift", + "construct_scope_autoflake", + "construct_scope_bandit", + "construct_scope_black", + "construct_scope_buf", + "construct_scope_buildifier", + "construct_scope_check", + "construct_scope_count_loc", + "construct_scope_coursier", + "construct_scope_coverage_py", + "construct_scope_debug_adapter", + "construct_scope_debugpy", + "construct_scope_dependees", + "construct_scope_dependencies", + "construct_scope_docformatter", + "construct_scope_docker", + "construct_scope_dockerfile_parser", + "construct_scope_download_terraform", + "construct_scope_experimental_bsp", + "construct_scope_experimental_deploy", + "construct_scope_export", + "construct_scope_export_codegen", + "construct_scope_filedeps", + "construct_scope_filter", + "construct_scope_flake8", + "construct_scope_fmt", + "construct_scope_generate_lockfiles", + "construct_scope_go_test", + "construct_scope_gofmt", + "construct_scope_golang", + "construct_scope_google_java_format", + "construct_scope_grpc_python_plugin", + "construct_scope_hadolint", + "construct_scope_helm", + "construct_scope_helm_k8s_parser", + "construct_scope_helm_post_renderer", + "construct_scope_helm_unittest", + "construct_scope_ipython", + "construct_scope_isort", + "construct_scope_java_infer", + "construct_scope_javac", + "construct_scope_junit", + "construct_scope_jvm", + "construct_scope_kotlin", + "construct_scope_kotlin_infer", + "construct_scope_kotlinc", + "construct_scope_ktlint", + "construct_scope_lambdex", + "construct_scope_lint", + "construct_scope_list", + "construct_scope_mypy", + "construct_scope_mypy_protobuf", + "construct_scope_package", + "construct_scope_paths", + "construct_scope_peek", + "construct_scope_pex", + "construct_scope_pex_binary_defaults", + "construct_scope_pex_cli", + "construct_scope_poetry", + "construct_scope_protobuf_java_grpc", + "construct_scope_protoc", + "construct_scope_publish", + "construct_scope_py_constraints", + "construct_scope_pylint", + "construct_scope_pyoxidizer", + "construct_scope_pytest", + "construct_scope_python", + "construct_scope_python_bootstrap", + "construct_scope_python_infer", + "construct_scope_python_native_code", + "construct_scope_python_protobuf", + "construct_scope_python_repos", + "construct_scope_python_thrift", + "construct_scope_pyupgrade", + "construct_scope_regex_lint", + "construct_scope_repl", + "construct_scope_roots", + "construct_scope_run", + "construct_scope_scala", + "construct_scope_scala_infer", + "construct_scope_scalac", + "construct_scope_scalafmt", + "construct_scope_scalapb", + "construct_scope_scalatest", + "construct_scope_scc", + "construct_scope_setup_py_generation", + "construct_scope_setuptools", + "construct_scope_setuptools_scm", + "construct_scope_shell_setup", + "construct_scope_shellcheck", + "construct_scope_shfmt", + "construct_scope_source", + "construct_scope_stats", + "construct_scope_subprocess_environment", + "construct_scope_tailor", + "construct_scope_terraform_fmt", + "construct_scope_terraform_hcl2_parser", + "construct_scope_terraform_validate", + "construct_scope_test", + "construct_scope_thrift", + "construct_scope_twine", + "construct_scope_update_build_files", + "construct_scope_yapf" + ] + }, + "pants.source.source_root.AllSourceRoots": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependees": [ + "pants.backend.project_info", + "pants.backend.python" + ], + "dependencies": [ + "pants.engine.fs" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "AllSourceRoots", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.all_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.OptionalSourceRoot": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.engine.fs", + "pants.source.source_root" + ], + "documentation": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.OptionalSourceRootsResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.source.source_root" + ], + "documentation": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRoot": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.source.source_root" + ], + "documentation": "SourceRoot(path: 'str')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ] + }, + "pants.source.source_root.SourceRootConfig": { + "consumed_by_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [ + "pants.option.scope" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootConfig", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.SourceRootRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_source_root" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Find the source root for the given path.\n\nIf you have multiple paths, particularly if many of them share parent directories, you'll get\nbetter performance with a `SourceRootsRequest` (see above) instead.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.SourceRootsRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_roots" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "Find the source roots for the given files and/or dirs.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRootsResult": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.python", + "pants.core" + ], + "dependencies": [ + "pants.source.source_root" + ], + "documentation": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ] + }, + "pants.vcs.git.GitWorktreeRequest": { + "consumed_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "dependees": [ + "pants.core" + ], + "dependencies": [], + "documentation": "GitWorktreeRequest(gitdir: 'PathLike[str] | None' = None, subdir: 'PathLike[str] | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "GitWorktreeRequest", + "provider": "pants.vcs.git", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + }, + "pants.vcs.git.MaybeGitWorktree": { + "consumed_by_rules": [], + "dependees": [ + "pants.backend.experimental.python" + ], + "dependencies": [ + "pants.vcs.git" + ], + "documentation": "MaybeGitWorktree(git_worktree: 'GitWorktree | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "MaybeGitWorktree", + "provider": "pants.core", + "returned_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + } + }, + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "", + "check", + "filter" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "filter", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "filter" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "filter" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.core" + }, + "experimental-deploy": { + "consumed_scopes": [ + "", + "experimental-deploy", + "filter" + ], + "description": "Perform a deployment process.", + "is_implemented": true, + "name": "experimental-deploy", + "provider": "pants.core" + }, + "experimental-explorer": { + "consumed_scopes": [], + "description": "Run the Pants Explorer Web UI server.", + "is_implemented": true, + "name": "experimental-explorer", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.backend.docker" + }, + "filedeps": { + "consumed_scopes": [ + "", + "filedeps", + "filter" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "fmt": { + "consumed_scopes": [ + "", + "filter", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "generate-lockfiles" + ], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": [ + "", + "filter", + "lint" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": [ + "", + "filter", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": [ + "", + "filter", + "paths" + ], + "description": "List the paths between two addresses.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": [ + "", + "filter", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": [ + "", + "filter", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "filter", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "filter", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "debug-adapter", + "filter", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": [ + "", + "filter", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "debug-adapter", + "filter", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "filter", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.14/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_rule_info": { + "construct_scope_": { + "description": null, + "documentation": "Options to control the overall behavior of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_", + "output_type": "GlobalOptions", + "provider": "pants.core" + }, + "construct_scope_anonymous_telemetry": { + "description": null, + "documentation": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + }, + "construct_scope_apache_thrift": { + "description": null, + "documentation": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_autoflake": { + "description": null, + "documentation": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_autoflake", + "output_type": "Autoflake", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "construct_scope_bandit": { + "description": null, + "documentation": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_bandit", + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + }, + "construct_scope_black": { + "description": null, + "documentation": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_black", + "output_type": "Black", + "provider": "pants.core" + }, + "construct_scope_buf": { + "description": null, + "documentation": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buf", + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "construct_scope_buildifier": { + "description": null, + "documentation": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buildifier", + "output_type": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "construct_scope_check": { + "description": null, + "documentation": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_check", + "output_type": "CheckSubsystem", + "provider": "pants.core" + }, + "construct_scope_count_loc": { + "description": null, + "documentation": "Count lines of code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_count_loc", + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_coursier": { + "description": null, + "documentation": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coursier", + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_coverage_py": { + "description": null, + "documentation": "Configuration for Python test coverage measurement.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_debug_adapter": { + "description": null, + "documentation": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debug_adapter", + "output_type": "DebugAdapterSubsystem", + "provider": "pants.core" + }, + "construct_scope_debugpy": { + "description": null, + "documentation": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debugpy", + "output_type": "DebugPy", + "provider": "pants.backend.python" + }, + "construct_scope_dependees": { + "description": null, + "documentation": "List all targets that depend on any of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependees", + "output_type": "DependeesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_dependencies": { + "description": null, + "documentation": "List the dependencies of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependencies", + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_docformatter": { + "description": null, + "documentation": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docformatter", + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + }, + "construct_scope_docker": { + "description": null, + "documentation": "Options for interacting with Docker.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docker", + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + }, + "construct_scope_dockerfile_parser": { + "description": null, + "documentation": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + }, + "construct_scope_download_terraform": { + "description": null, + "documentation": "Terraform (https://terraform.io)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_experimental_bsp": { + "description": null, + "documentation": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_bsp", + "output_type": "BSPGoal", + "provider": "pants.core" + }, + "construct_scope_experimental_deploy": { + "description": null, + "documentation": "Perform a deployment process.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_deploy", + "output_type": "DeploySubsystem", + "provider": "pants.core" + }, + "construct_scope_export": { + "description": null, + "documentation": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export", + "output_type": "ExportSubsystem", + "provider": "pants.core" + }, + "construct_scope_export_codegen": { + "description": null, + "documentation": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_type": "ExportCodegenSubsystem", + "provider": "pants.backend.docker" + }, + "construct_scope_filedeps": { + "description": null, + "documentation": "List all source and BUILD files a target depends on.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filedeps", + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_filter": { + "description": null, + "documentation": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filter", + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_flake8": { + "description": null, + "documentation": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_flake8", + "output_type": "Flake8", + "provider": "pants.backend.python.lint.flake8" + }, + "construct_scope_fmt": { + "description": null, + "documentation": "Autoformat source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fmt", + "output_type": "FmtSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_lockfiles": { + "description": null, + "documentation": "Generate lockfiles for Python third-party dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_go_test": { + "description": null, + "documentation": "Options for Go tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_test", + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_gofmt": { + "description": null, + "documentation": "Gofmt-specific options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_gofmt", + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_golang": { + "description": null, + "documentation": "Options for Golang support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_golang", + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_google_java_format": { + "description": null, + "documentation": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "construct_scope_grpc_python_plugin": { + "description": null, + "documentation": "The gRPC Protobuf plugin for Python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_hadolint": { + "description": null, + "documentation": "A linter for Dockerfiles.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_hadolint", + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + }, + "construct_scope_helm": { + "description": null, + "documentation": "The Helm command line (https://helm.sh)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm", + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_k8s_parser": { + "description": null, + "documentation": "Analyses K8S manifests rendered by Helm.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_k8s_parser", + "output_type": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_post_renderer": { + "description": null, + "documentation": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_post_renderer", + "output_type": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_unittest": { + "description": null, + "documentation": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_unittest", + "output_type": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_ipython": { + "description": null, + "documentation": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ipython", + "output_type": "IPython", + "provider": "pants.backend.python" + }, + "construct_scope_isort": { + "description": null, + "documentation": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_isort", + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + }, + "construct_scope_java_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_java_infer", + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_javac": { + "description": null, + "documentation": "The javac Java source compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_javac", + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_junit": { + "description": null, + "documentation": "The JUnit test framework (https://junit.org)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_junit", + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_jvm": { + "description": null, + "documentation": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jvm", + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_kotlin": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin", + "output_type": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlin_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Kotlin targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin_infer", + "output_type": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlinc": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlinc", + "output_type": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_ktlint": { + "description": null, + "documentation": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ktlint", + "output_type": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "construct_scope_lambdex": { + "description": null, + "documentation": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lambdex", + "output_type": "Lambdex", + "provider": "pants.backend.awslambda.python" + }, + "construct_scope_lint": { + "description": null, + "documentation": "Run all linters and/or formatters in check mode.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lint", + "output_type": "LintSubsystem", + "provider": "pants.core" + }, + "construct_scope_list": { + "description": null, + "documentation": "Lists all targets matching the file or target arguments.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_list", + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_mypy": { + "description": null, + "documentation": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy", + "output_type": "MyPy", + "provider": "pants.backend.python.typecheck.mypy" + }, + "construct_scope_mypy_protobuf": { + "description": null, + "documentation": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_package": { + "description": null, + "documentation": "Create a distributable package.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_package", + "output_type": "PackageSubsystem", + "provider": "pants.core" + }, + "construct_scope_paths": { + "description": null, + "documentation": "List the paths between two addresses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_paths", + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_peek": { + "description": null, + "documentation": "Display BUILD target info", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_peek", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_pex": { + "description": null, + "documentation": "How Pants uses Pex to run Python subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex", + "output_type": "PexRuntimeEnvironment", + "provider": "pants.core" + }, + "construct_scope_pex_binary_defaults": { + "description": null, + "documentation": "Default settings for creating PEX executables.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + }, + "construct_scope_pex_cli": { + "description": null, + "documentation": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_type": "PexCli", + "provider": "pants.core" + }, + "construct_scope_poetry": { + "description": null, + "documentation": "Used to generate lockfiles for third-party Python dependencies (deprecated).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_poetry", + "output_type": "PoetrySubsystem", + "provider": "pants.backend.docker" + }, + "construct_scope_protobuf_java_grpc": { + "description": null, + "documentation": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protobuf_java_grpc", + "output_type": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "construct_scope_protoc": { + "description": null, + "documentation": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protoc", + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_publish": { + "description": null, + "documentation": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_publish", + "output_type": "PublishSubsystem", + "provider": "pants.core" + }, + "construct_scope_py_constraints": { + "description": null, + "documentation": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "construct_scope_pylint": { + "description": null, + "documentation": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pylint", + "output_type": "Pylint", + "provider": "pants.backend.python.lint.pylint" + }, + "construct_scope_pyoxidizer": { + "description": null, + "documentation": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "construct_scope_pytest": { + "description": null, + "documentation": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pytest", + "output_type": "PyTest", + "provider": "pants.backend.python" + }, + "construct_scope_python": { + "description": null, + "documentation": "Options for Pants's Python backend.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python", + "output_type": "PythonSetup", + "provider": "pants.core" + }, + "construct_scope_python_bootstrap": { + "description": null, + "documentation": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_infer", + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_python_native_code": { + "description": null, + "documentation": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_type": "PythonNativeCode", + "provider": "pants.core" + }, + "construct_scope_python_protobuf": { + "description": null, + "documentation": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.14/docs/protobuf-python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_python_repos": { + "description": null, + "documentation": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_repos", + "output_type": "PythonRepos", + "provider": "pants.core" + }, + "construct_scope_python_thrift": { + "description": null, + "documentation": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_pyupgrade": { + "description": null, + "documentation": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_type": "PyUpgrade", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "construct_scope_regex_lint": { + "description": null, + "documentation": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_repl": { + "description": null, + "documentation": "Open a REPL with the specified code loadable.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_repl", + "output_type": "ReplSubsystem", + "provider": "pants.core" + }, + "construct_scope_roots": { + "description": null, + "documentation": "List the repo's registered source roots.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_roots", + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_run": { + "description": null, + "documentation": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_run", + "output_type": "RunSubsystem", + "provider": "pants.core" + }, + "construct_scope_scala": { + "description": null, + "documentation": "Scala programming language", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala", + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scala_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalac": { + "description": null, + "documentation": "The Scala compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalac", + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalafmt": { + "description": null, + "documentation": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "construct_scope_scalapb": { + "description": null, + "documentation": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalapb", + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "construct_scope_scalatest": { + "description": null, + "documentation": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalatest", + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scc": { + "description": null, + "documentation": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scc", + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + }, + "construct_scope_setup_py_generation": { + "description": null, + "documentation": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools": { + "description": null, + "documentation": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools", + "output_type": "Setuptools", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools_scm": { + "description": null, + "documentation": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools_scm", + "output_type": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_shell_setup": { + "description": null, + "documentation": "Options for Pants's Shell support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + }, + "construct_scope_shellcheck": { + "description": null, + "documentation": "A linter for shell scripts.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + }, + "construct_scope_shfmt": { + "description": null, + "documentation": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shfmt", + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + }, + "construct_scope_source": { + "description": null, + "documentation": "Configuration for roots of source trees.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_source", + "output_type": "SourceRootConfig", + "provider": "pants.core" + }, + "construct_scope_stats": { + "description": null, + "documentation": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_stats", + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + }, + "construct_scope_subprocess_environment": { + "description": null, + "documentation": "Environment settings for forked subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + }, + "construct_scope_tailor": { + "description": null, + "documentation": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_tailor", + "output_type": "TailorSubsystem", + "provider": "pants.core" + }, + "construct_scope_terraform_fmt": { + "description": null, + "documentation": "Terraform fmt options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_hcl2_parser": { + "description": null, + "documentation": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_validate": { + "description": null, + "documentation": "Terraform validate options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_test": { + "description": null, + "documentation": "Run tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_test", + "output_type": "TestSubsystem", + "provider": "pants.core" + }, + "construct_scope_thrift": { + "description": null, + "documentation": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_thrift", + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_twine": { + "description": null, + "documentation": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_twine", + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_update_build_files": { + "description": null, + "documentation": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.14/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_yapf": { + "description": null, + "documentation": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yapf", + "output_type": "Yapf", + "provider": "pants.core" + }, + "pants.backend.awslambda.python.rules.package_python_awslambda": { + "description": "Create Python AWS Lambda", + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonAwsLambdaFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.awslambda.python.rules.package_python_awslambda", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency": { + "description": "Inferring dependency from the python_awslambda `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonLambdaHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler": { + "description": "Determining the handler for a `python_awslambda` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonAwsHandlerRequest" + ], + "name": "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "output_type": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.build_files.fmt.black.register.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "BlackRequest", + "Black" + ], + "name": "pants.backend.build_files.fmt.black.register.black_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.build_files.fmt.black" + }, + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt": { + "description": "Format with Buildifier", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "BuildifierRequest", + "Buildifier" + ], + "name": "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "pants.backend.build_files.fmt.yapf.register.yapf_fmt": { + "description": "Format with Yapf", + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "YapfRequest", + "Yapf" + ], + "name": "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.codegen.export_codegen_goal.export_codegen": { + "description": "`export-codegen` goal", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "FilteredTargets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_type": "ExportCodegen", + "provider": "pants.backend.docker" + }, + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf": { + "description": "Generate Go source files from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets": { + "description": "Map import paths for all Go Protobuf targets.", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "ProtobufGoModuleImportPathsMappingsHook", + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": [ + "GoCodegenBuildProtobufRequest" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProtobufJavaRuntimeForResolve, ProtobufJavaRuntimeForResolveRequest, ..)", + "Get(ProtobufJavaGrpcRuntimeForResolve, ProtobufJavaGrpcRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferProtobufJavaRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaGrpcRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "output_type": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "output_type": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GrpcJavaToolLockfileSentinel", + "JavaProtobufGrpcSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf": { + "description": "Generate Java from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc", + "ProtobufJavaGrpcPlugin" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GrpcJavaToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "output_type": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format": { + "description": "Format with buf format", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, BufFormatRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "BufFormatRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_type": "FmtResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DiffBinary, DiffBinaryRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "BufFormatRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.setup_buf_format", + "output_type": "Process", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf": { + "description": "Lint with buf lint", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BufLintRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_type": "LintResults", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies": { + "description": "Inferring Protobuf dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "InferProtobufDependencies", + "ProtobufMapping", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files": { + "description": "Creating map of Protobuf file names to Protobuf targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules": { + "description": "Creating map of Protobuf targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MypyProtobufLockfileSentinel", + "PythonProtobufMypyPlugin", + "PythonSetup" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf": { + "description": "Generate Python from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaPBRuntimeForResolve, ScalaPBRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferScalaPBRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPBRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "output_type": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf": { + "description": "Generate Scala from Protobuf", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalapbcToolLockfileSentinel", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "MaterializeJvmPluginRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "MaterializeJvmPluginsRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ScalaPBSubsystem", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.tailor.find_putative_targets": { + "description": "Determine candidate Protobuf targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets": { + "description": "Find all Protobuf targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules": { + "description": "Creating map of Thrift targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift": { + "description": "Generate Python from Thrift", + "documentation": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "GenerateThriftSourcesRequest", + "ApacheThriftSetup" + ], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies": { + "description": "Inferring Thrift dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files": { + "description": "Creating map of Thrift file names to Thrift targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllThriftTargets" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets": { + "description": "Determine candidate Thrift targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets": { + "description": "Find all Thrift targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParsedThriftRequest" + ], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.docker.goals.package_image.build_docker_image": { + "description": null, + "documentation": "Build a Docker image using `docker build`.", + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "KeepSandboxes", + "UnionMembership" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.publish.push_docker_images": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerFieldSet" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerBinary", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.tailor.find_putative_targets": { + "description": "Determine candidate Docker targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.lint.hadolint.rules.run_hadolint": { + "description": "Lint with Hadolint", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "HadolintRequest", + "Hadolint" + ], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_type": "LintResults", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": [ + "DockerfileInfoRequest" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerfileParserLockfileSentinel", + "DockerfileParser", + "PythonSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "DockerfileParseRequest", + "ParserSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.target_types.all_docker_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.docker.target_types.all_docker_targets", + "output_type": "AllDockerImageTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies": { + "description": null, + "documentation": "Inspects the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "InferDockerDependencies", + "AllPackageableTargets" + ], + "name": "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.find_docker": { + "description": "Finding the `docker` binary and related tooling", + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": [ + "DockerBinaryRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_binary.find_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.get_docker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBinary, DockerBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_args.docker_build_args": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerBuildArgsRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "DockerBuildContextRequest" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateDockerContextFiles" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateDockerfileRequest" + ], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.go.go_sources.load_go_binary.setup_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "LoadedGoBinaryRequest" + ], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.check.check_go": { + "description": "Check Go compilation", + "documentation": null, + "input_gets": [ + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": [ + "GoCheckRequest" + ], + "name": "pants.backend.go.goals.check.check_go", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.package_binary.package_go_binary": { + "description": "Package Go binary", + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.create_go_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_targets": { + "description": "Determine candidate Go targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources", + "GolangSubsystem" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoTestFieldSet" + ], + "name": "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.generate_go_tests_debug_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoTestFieldSet" + ], + "name": "pants.backend.go.goals.test.generate_go_tests_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.run_go_tests": { + "description": "Test with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(GenerateCoverageSetupCodeResult, GenerateCoverageSetupCodeRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GoTestFieldSet", + "TestSubsystem", + "GoTestSubsystem", + "TestExtraEnv", + "GoRoot" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.lint.gofmt.rules.gofmt_fmt": { + "description": "Format with gofmt", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GofmtRequest", + "GofmtSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.generate_targets_from_go_mod": { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "documentation": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromGoModRequest", + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_map_import_paths_by_module": { + "description": "Analyze and map Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis": { + "description": "Analyze Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMappings, GoModuleImportPathsMappingsHook, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.go_merge_import_paths_analysis", + "output_type": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_dependencies": { + "description": "Infer dependencies for first-party Go packages", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoPackageDependenciesRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies": { + "description": "Infer dependencies for third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoThirdPartyPackageDependenciesRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.map_import_paths_to_packages": { + "description": "Map Go targets owned by module to import paths", + "documentation": null, + "input_gets": [], + "input_types": [ + "GoImportPathMappingRequest", + "AllGoModuleImportPathsMappings" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_type": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPostCompilationRequest" + ], + "name": "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "output_type": "AssemblyPostCompilation", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPreCompilationRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "output_type": "FallibleAssemblyPreCompilation", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary": { + "description": "Determine first-party package used by `go_binary` target", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "GoBinaryMainPackageRequest" + ], + "name": "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "InferGoBinaryMainDependencyRequest" + ], + "name": "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.build_go_package": { + "description": "Compile with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(ApplyCodeCoverageResult, ApplyCodeCoverageRequest, ..)", + "Get(FallibleAssemblyPreCompilation, AssemblyPreCompilationRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(AssemblyPostCompilation, AssemblyPostCompilationRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BuildGoPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)" + ], + "input_types": [ + "GoCompileActionIdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.render_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.required_built_go_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuiltGoPackage" + ], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuildGoPackageRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request": { + "description": "Set up Go compilation request", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateCoverageSetupCodeRequest" + ], + "name": "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "output_type": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(ApplyCodeCoverageToFileResult, ApplyCodeCoverageToFileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ApplyCodeCoverageRequest" + ], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "output_type": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ApplyCodeCoverageToFileRequest" + ], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "output_type": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports": { + "description": "Merge Go coverage data", + "documentation": null, + "input_gets": [ + "Get(RenderGoCoverageReportResult, RenderGoCoverageReportRequest, ..)" + ], + "input_types": [ + "GoCoverageDataCollection" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "RenderGoCoverageReportRequest", + "DistDir", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "output_type": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgAnalysisRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": [ + "FirstPartyPkgImportPathRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgDigestRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)" + ], + "input_types": [ + "GolangSubsystem" + ], + "name": "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "output_type": "GoBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.determine_go_mod_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoModInfoRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets": { + "description": "Find all `go_mod` targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "output_type": "AllGoModTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, RawSpecs, ..)" + ], + "input_types": [ + "NearestAncestorGoModRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "output_type": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_owning_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(NearestAncestorGoModResult, NearestAncestorGoModRequest, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(Address, AddressInput, ..)" + ], + "input_types": [ + "OwningGoModRequest", + "AllGoModTargets" + ], + "name": "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.goroot.setup_goroot": { + "description": "Find Go binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GolangSubsystem", + "GoBootstrap" + ], + "name": "pants.backend.go.util_rules.goroot.setup_goroot", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports": { + "description": "Determine Go std lib's imports", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "output_type": "GoStdLibImports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.generate_import_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ImportConfigRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.util_rules.import_analysis.generate_import_config", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.link_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "LinkGoBinaryRequest" + ], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.compute_go_tool_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoSdkToolIDRequest" + ], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.setup_go_sdk_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "GolangSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.tests_analysis.generate_testmain": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GenerateTestMainRequest" + ], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyModuleRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyPackageRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ModuleDescriptorsRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages": { + "description": "Download and analyze all third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": [ + "AllThirdPartyPackagesRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.extract_package_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "ThirdPartyPkgAnalysisRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function": { + "description": "Create Python Google Cloud Function", + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonGoogleCloudFunctionFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency": { + "description": "Inferring dependency from the python_google_cloud_function `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonCloudFunctionHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler": { + "description": "Determining the handler for a `python_google_cloud_function` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonGoogleHandlerRequest" + ], + "name": "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "output_type": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "output_type": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata": { + "description": "Inferring Helm chart dependencies", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "InferHelmChartDependenciesRequest", + "FirstPartyHelmChartMapping", + "ThirdPartyHelmArtifactMapping", + "HelmSubsystem" + ], + "name": "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.analyse_deployment": { + "description": "Analyse Helm deployment", + "documentation": null, + "input_gets": [ + "Get(RenderedHelmFiles, HelmDeploymentRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ParsedKubeManifest, ParseKubeManifestRequest, ..)" + ], + "input_types": [ + "AnalyseHelmDeploymentRequest" + ], + "name": "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "output_type": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmDeploymentReport, AnalyseHelmDeploymentRequest, ..)" + ], + "input_types": [ + "FirstPartyHelmDeploymentMappingRequest", + "AllDockerImageTargets" + ], + "name": "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "output_type": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies": { + "description": "Find the dependencies needed by a Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)" + ], + "input_types": [ + "InferHelmDeploymentDependenciesRequest" + ], + "name": "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)" + ], + "input_types": [ + "InferHelmUnitTestChartDependencyRequest", + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.deploy.run_helm_deploy": { + "description": "Run Helm deploy process", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmPostRenderer, HelmDeploymentPostRendererRequest, ..)", + "Get(InteractiveProcess, HelmDeploymentRequest, ..)" + ], + "input_types": [ + "DeployHelmDeploymentFieldSet", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.deploy.run_helm_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.run_helm_lint": { + "description": "Lint Helm charts", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)" + ], + "input_types": [ + "HelmLintRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_type": "LintResults", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.package.run_helm_package": { + "description": "Package Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmPackageFieldSet" + ], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.publish.publish_helm_chart": { + "description": "Push Helm chart to OCI registries", + "documentation": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)" + ], + "input_types": [ + "PublishHelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.publish.publish_helm_chart", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.tailor.find_putative_helm_targets": { + "description": "Determine candidate Helm chart targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeHelmChartTargetsRequest", + "AllOwnedSources", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmArtifact", + "HelmSubsystem" + ], + "name": "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "output_type": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedHelmArtifact, HelmArtifact, ..)" + ], + "input_types": [ + "AllHelmArtifactTargets" + ], + "name": "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "output_type": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "_StripHelmArtifactPrefixRequest" + ], + "name": "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts": { + "description": "Fetch third party Helm Chart artifacts", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ResolvedHelmArtifact, HelmArtifact, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, _StripHelmArtifactPrefixRequest, ..)" + ], + "input_types": [ + "FetchHelmArfifactsRequest" + ], + "name": "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "output_type": "FetchedHelmArtifacts", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "HelmKubeParserSubsystem" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "output_type": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest": { + "description": "Parse Kubernetes resource manifest", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseKubeManifestRequest", + "_HelmKubeParserTool" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "output_type": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmKubeParserLockfileSentinel", + "HelmKubeParserSubsystem", + "PythonSetup" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher": { + "description": "Configure Helm post-renderer", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupHelmPostRenderer", + "_HelmPostRendererTool", + "CatBinary" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "output_type": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool": { + "description": "Setup Helm post renderer binaries", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "HelmPostRendererSubsystem" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "output_type": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmPostRendererLockfileSentinel", + "HelmPostRendererSubsystem", + "PythonSetup" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestPluginBinding", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "output_type": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_artifact_targets", + "output_type": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_chart_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_chart_targets", + "output_type": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_deployment_targets", + "output_type": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_unittest_test_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "output_type": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestFieldSet" + ], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestFieldSet" + ], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.run_helm_unittest": { + "description": "Run Helm Unittest", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "HelmUnitTestFieldSet", + "TestSubsystem", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.test.unittest.run_helm_unittest", + "output_type": "TestResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.create_chart_from_artifact": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "FetchedHelmArtifact" + ], + "name": "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.find_chart_for_deployment": { + "description": "Find Helm deployment's chart", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(FetchedHelmArtifacts, FetchHelmArfifactsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchedHelmArtifact, ..)" + ], + "input_types": [ + "FindHelmDeploymentChart" + ], + "name": "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.get_helm_chart": { + "description": "Collect all source code and subcharts of a Helm Chart", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(FetchedHelmArtifacts, FetchHelmArfifactsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchedHelmArtifact, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParseHelmChartMetadataDigest" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "HelmChartMetaSourceField" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "HelmChartMetadata" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment": { + "description": "Prepare Helm deployment post-renderer", + "documentation": null, + "input_gets": [ + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)", + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)", + "Get(HelmPostRenderer, SetupHelmPostRenderer, ..)" + ], + "input_types": [ + "HelmDeploymentPostRendererRequest", + "DockerOptions", + "UnionMembership" + ], + "name": "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "output_type": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)" + ], + "input_types": [ + "_HelmDeploymentProcessWrapper" + ], + "name": "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.run_renderer": { + "description": "Render Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "_HelmDeploymentProcessWrapper" + ], + "name": "pants.backend.helm.util_rules.renderer.run_renderer", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process": { + "description": "Prepare Helm deployment renderer", + "documentation": null, + "input_gets": [ + "Get(HelmChart, FindHelmDeploymentChart, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "HelmDeploymentRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "output_type": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.find_chart_source_root": { + "description": "Detect Helm chart source root", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "HelmChartRootRequest" + ], + "name": "pants.backend.helm.util_rules.sources.find_chart_source_root", + "output_type": "HelmChartRoot", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.get_helm_source_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartSourceFilesRequest" + ], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.all_helm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmPlugin, ExternalHelmPluginBinding, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.helm.util_rules.tool.all_helm_plugins", + "output_type": "HelmPlugins", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.download_external_helm_plugin": { + "description": "Download external Helm plugin", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ExternalHelmPluginRequest" + ], + "name": "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "output_type": "HelmPlugin", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.helm_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "HelmProcess", + "HelmBinary", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.setup_helm": { + "description": "Download and configure Helm", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "HelmSubsystem", + "HelmPlugins" + ], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.java.bsp.rules.bsp_java_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_java_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_javac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": [ + "JavacOptionsParams" + ], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaBSPBuildTargetsMetadataRequest" + ], + "name": "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.handle_bsp_java_options_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HandleJavacOptionsRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.compile.javac.compile_java_source": { + "description": "Compile with javac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "JvmSubsystem", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.java.dependency_inference.java_parser.build_processors", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaParserToolLockfileSentinel" + ], + "name": "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SourceFiles" + ], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis": { + "description": "Inferring Java dependencies and exports by source analysis", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis": { + "description": "Inferring Java dependencies by source analysis", + "documentation": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": [ + "InferJavaSourceDependencies" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets": { + "description": "Find all Java targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols": { + "description": "Map all first party Java targets to their packages", + "documentation": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.check.javac_check": { + "description": "Check javac compilation", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "JavacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.goals.check.javac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.tailor.find_putative_targets": { + "description": "Determine candidate Java targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources", + "JavacSubsystem" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt": { + "description": "Format with Google Java Format", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GoogleJavaFormatRequest", + "GoogleJavaFormatSubsystem", + "InternalJdk" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source": { + "description": "Compile with kotlinc", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(KotlincPluginTargetsForTarget, KotlincPluginsForTargetRequest, ..)", + "Get(KotlincPlugins, KotlincPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinSubsystem", + "KotlincSubsystem", + "CompileKotlinSourceRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlincPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "output_type": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "output_type": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "KotlincPluginsRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "output_type": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "KotlincPluginsForTargetRequest", + "AllKotlincPluginTargets", + "JvmSubsystem", + "KotlincSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "output_type": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinParserCompiledClassfiles", + "SourceFiles" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "output_type": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinParserToolLockfileSentinel" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleKotlinSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "output_type": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "output_type": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis": { + "description": "Inferring Kotlin dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferKotlinSourceDependencies", + "KotlinInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency": { + "description": "Infer dependency on Kotlin runtime artifacts for Kotlin targets.", + "documentation": null, + "input_gets": [ + "Get(KotlinRuntimeForResolve, KotlinRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferKotlinRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "output_type": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets": { + "description": "Find all Kotlin targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "output_type": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols": { + "description": "Map all first party Kotlin targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyKotlinTargetsMappingRequest", + "AllKotlinTargets", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.check.kotlinc_check": { + "description": "Check compilation for Kotlin", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "KotlincCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.kotlin.goals.check.kotlinc_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.tailor.find_putative_targets": { + "description": "Determine candidate Kotlin targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeKotlinTargetsRequest", + "AllOwnedSources", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KtlintToolLockfileSentinel", + "KtlintSubsystem" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt": { + "description": "Format with Ktlint", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KtlintToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "KtlintRequest", + "KtlintSubsystem", + "InternalJdk" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency": { + "description": "Infer dependency on Kotlin Junit support artifact.", + "documentation": null, + "input_gets": [ + "Get(KotlinJunitLibrariesForResolve, KotlinJunitLibrariesForResolveRequest, ..)" + ], + "input_types": [ + "InferKotlinJunitTestDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinJunitLibrariesForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "output_type": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + "pants.backend.project_info.count_loc.count_loc": { + "description": "`count-loc` goal", + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsPaths" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependees.dependees_goal": { + "description": "`dependees` goal", + "documentation": null, + "input_gets": [ + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "DependeesSubsystem", + "Console" + ], + "name": "pants.backend.project_info.dependees.dependees_goal", + "output_type": "DependeesGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependees.find_dependees": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependeesRequest", + "AddressToDependees" + ], + "name": "pants.backend.project_info.dependees.find_dependees", + "output_type": "Dependees", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependees.map_addresses_to_dependees": { + "description": "Map all targets to their dependees", + "documentation": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.project_info.dependees.map_addresses_to_dependees", + "output_type": "AddressToDependees", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependencies.dependencies": { + "description": "`dependencies` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "Addresses", + "DependenciesSubsystem" + ], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filedeps.file_deps": { + "description": "`filedeps` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "Console", + "FiledepsSubsystem", + "BuildRoot", + "Addresses" + ], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filter_targets.filter_targets": { + "description": "`filter` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Addresses", + "FilterSubsystem", + "Console" + ], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_roots.list_roots": { + "description": "`roots` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Console", + "RootsSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_type": "Roots", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_targets.list_targets": { + "description": "`list` goal", + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "Addresses", + "ListSubsystem", + "Console" + ], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_type": "List", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.paths": { + "description": "`paths` goal", + "documentation": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "PathsSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.project_info.paths.paths", + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.get_target_data": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.get_target_data", + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.peek": { + "description": "`peek` goal", + "documentation": null, + "input_gets": [ + "Get(TargetDatas, UnexpandedTargets, ..)" + ], + "input_types": [ + "Console", + "PeekSubsystem", + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.peek", + "output_type": "Peek", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.lint_with_regex_patterns": { + "description": "Lint with regex patterns", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "RegexLintRequest", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_type": "LintResults", + "provider": "pants.backend.project_info" + }, + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects": { + "description": "Find all Python targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules": { + "description": "Creating map of first party Python targets to Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses": { + "description": "Creating map of third party targets to Python modules", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ParsePythonDependenciesRequest", + "ParserScript" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "output_type": "ParserScript", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies": { + "description": "Inferring dependencies on `conftest.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source": { + "description": "Inferring Python dependencies by analyzing source", + "documentation": null, + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargets, AllAssetTargetsRequest, ..)", + "Get(AllAssetTargetsByPath, AllAssetTargets, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies": { + "description": "Inferring dependencies on `__init__.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.generate_coverage_reports": { + "description": "Generate Pytest coverage reports", + "documentation": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "KeepSandboxes", + "DistDir" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.merge_coverage_data": { + "description": "Merge Pytest coverage data", + "documentation": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "CoveragePyLockfileSentinel", + "CoverageSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ExportPythonTool", + "PexPEX", + "PexEnvironment" + ], + "name": "pants.backend.python.goals.export.export_tool", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "_ExportVenvRequest", + "PythonSetup", + "PexPEX", + "PexEnvironment" + ], + "name": "pants.backend.python.goals.export.export_virtualenv", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenvs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportResult, _ExportVenvRequest, ..)", + "Get(ExportPythonTool, ExportPythonToolSentinel, ..)", + "Get(ExportResult, ExportPythonTool, ..)" + ], + "input_types": [ + "ExportVenvsRequest", + "PythonSetup", + "DistDir", + "UnionMembership" + ], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_type": "ExportResults", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.lockfile.determine_python_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownPythonUserResolveNamesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.generate_lockfile": { + "description": "Generate Python lockfile", + "documentation": null, + "input_gets": [ + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)", + "Get(MaybeWarnPythonRepos, MaybeWarnPythonReposRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "PoetrySubsystem", + "GenerateLockfilesSubsystem" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.maybe_warn_python_repos": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MaybeWarnPythonReposRequest", + "PythonRepos" + ], + "name": "pants.backend.python.goals.lockfile.maybe_warn_python_repos", + "output_type": "MaybeWarnPythonRepos", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.setup_poetry_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PoetryLockfileSentinel", + "PoetrySubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_poetry_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratePythonLockfile" + ], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.package_pex_binary.package_pex_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(Pex, PexFromTargetsRequest, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.publish.twine_upload": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.pytest_runner.debug_python_test": { + "description": "Set up Pytest to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "PythonTestFieldSet" + ], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.debugpy_python_test": { + "description": "Set up debugpy to run an interactive Pytest session", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "PythonTestFieldSet", + "DebugPy", + "DebugAdapterSubsystem", + "PyTest" + ], + "name": "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": [ + "AllPytestPluginSetupsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_python_test": { + "description": "Run Pytest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "PythonTestFieldSet", + "TestSubsystem" + ], + "name": "pants.backend.python.goals.pytest_runner.run_python_test", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "PythonSetup", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_runtime_packages": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "RuntimePackagesPluginRequest" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_ipython_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_python_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonRepl", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PexBinaryFieldSet, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "UseDeprecatedPexBinaryRunSemanticsOption", + "PexBinaryDefaults", + "PexEnvironment" + ], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, PexBinaryFieldSet, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "UseDeprecatedPexBinaryRunSemanticsOption", + "DebugPy", + "DebugAdapterSubsystem" + ], + "name": "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, PythonSourceFieldSet, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "DebugPy", + "DebugAdapterSubsystem" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SetupKwargs, SetupKwargsRequest, ..)" + ], + "input_types": [ + "ExportedTarget", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.generate_chroot": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.generate_chroot", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.generate_setup_py": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.generate_setup_py", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_exporting_owner": { + "description": "Get exporting owner for target", + "documentation": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "OwnedDependency" + ], + "name": "pants.backend.python.goals.setup_py.get_exporting_owner", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_owned_dependencies": { + "description": "Find all code to be published in the distribution", + "documentation": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_owned_dependencies", + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_requirements": { + "description": "Compute distribution's 3rd party requirements", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.get_requirements", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_sources", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.package_python_dist": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.package_python_dist", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.tailor.find_putative_targets": { + "description": "Determine candidate Python targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.lint.autoflake.rules.autoflake_fmt": { + "description": "Format with Autoflake", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "AutoflakeRequest", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "pants.backend.python.lint.autoflake.subsystem.autoflake_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AutoflakeExportSentinel", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AutoflakeLockfileSentinel", + "Autoflake", + "PythonSetup" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint": { + "description": "Lint with Bandit", + "documentation": null, + "input_gets": [ + "Get(LintResult, BanditPartition, ..)" + ], + "input_types": [ + "BanditRequest", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "BanditPartition", + "Bandit" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint_partition", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.bandit_export": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditExportSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.bandit_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditLockfileSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.black.rules.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "BlackRequest", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.black_export": { + "description": "Determine Black interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackExportSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.black_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.setup_black_lockfile": { + "description": "Determine Black interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackLockfileSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.docformatter.rules.docformatter_fmt": { + "description": "Format with docformatter", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DocformatterRequest", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.docformatter.subsystem.docformatter_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DocformatterExportSentinel", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DocformatterLockfileSentinel", + "Docformatter", + "PythonSetup" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.flake8.rules.flake8_lint": { + "description": "Lint with Flake8", + "documentation": null, + "input_gets": [ + "Get(LintResult, Flake8Partition, ..)" + ], + "input_types": [ + "Flake8Request", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.rules.flake8_lint_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Flake8Partition", + "Flake8", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.flake8_lint_partition", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_export": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8ExportSentinel", + "Flake8", + "Flake8FirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Flake8" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8LockfileSentinel", + "Flake8FirstPartyPlugins", + "Flake8", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.isort.rules.isort_fmt": { + "description": "Format with isort", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "IsortRequest", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.isort.subsystem.isort_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "IsortExportSentinel", + "Isort" + ], + "name": "pants.backend.python.lint.isort.subsystem.isort_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "IsortLockfileSentinel", + "Isort", + "PythonSetup" + ], + "name": "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.pylint.rules.pylint_determine_partitions": { + "description": "Determine if necessary to partition Pylint input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "PylintRequest", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_determine_partitions", + "output_type": "PylintPartitions", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.pylint_lint": { + "description": "Lint using Pylint", + "documentation": null, + "input_gets": [ + "Get(PylintPartitions, PylintRequest, ..)", + "Get(LintResult, PylintPartition, ..)" + ], + "input_types": [ + "PylintRequest", + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint", + "output_type": "LintResults", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.pylint_lint_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "PylintPartition", + "Pylint", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.pylint_lint_partition", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_export": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PylintExportSentinel", + "Pylint", + "PylintFirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PylintLockfileSentinel", + "PylintFirstPartyPlugins", + "Pylint", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt": { + "description": "Format with pyupgrade", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PyUpgradeRequest", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyUpgradeExportSentinel", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyUpgradeLockfileSentinel", + "PyUpgrade", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "pants.backend.python.lint.yapf.rules.yapf_fmt": { + "description": "Format with yapf", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "YapfRequest", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YapfLockfileSentinel", + "Yapf", + "PythonSetup" + ], + "name": "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.lint.yapf.subsystem.yapf_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YapfExportSentinel", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.subsystem.yapf_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement": { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "UnionMembership" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.python_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from requirements.txt", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints": { + "description": "`py-constraints` goal", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependees, DependeesRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyoxidizerLockfileSentinel", + "PyOxidizer", + "PythonSetup" + ], + "name": "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DebugPyLockfileSentinel", + "DebugPy", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile": { + "description": "Determine all Python interpreter versions used by iPython in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "IPythonLockfileSentinel", + "IPython", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "LambdexLockfileSentinel", + "Lambdex", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.subsystems.pytest.pytest_export": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PytestExportSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.pytest_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PytestLockfileSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile": { + "description": "Determine all Python interpreter versions used by setuptools in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "SetuptoolsLockfileSentinel", + "Setuptools", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SetuptoolsSCMLockfileSentinel", + "SetuptoolsSCM", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.subsystems.twine.setup_twine_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TwineLockfileSentinel", + "TwineSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateTargetsFromPexBinaries", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency": { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies": { + "description": null, + "documentation": "Infer dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_files_generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonResolveFieldDefaultFactoryRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_pex_entry_point": { + "description": "Determining the entry point for a `pex_binary` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePexEntryPointRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points": { + "description": "Determining the entry points for a `python_distribution` target", + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "ResolvePythonDistributionEntryPointsRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.validate_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "PythonValidateDependenciesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.validate_python_dependencies", + "output_type": "ValidatedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment": { + "description": "Get mypyc build environment", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)" + ], + "input_types": [ + "MyPycDistBuildEnvironmentRequest", + "MyPyFirstPartyPlugins", + "MyPyConfigFile", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "output_type": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions": { + "description": "Determine if necessary to partition MyPy input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck": { + "description": "Typecheck using MyPy", + "documentation": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "BuildRoot", + "MyPy", + "PythonSetup", + "MkdirBinary", + "CpBinary", + "MvBinary", + "GlobalOptions" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_export": { + "description": "Determine MyPy interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyExportSentinel", + "MyPy", + "PythonSetup", + "MyPyFirstPartyPlugins" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile": { + "description": "Set up lockfile request for [mypy].extra_type_stubs", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyExtraTypeStubsLockfileSentinel", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile": { + "description": "Determine MyPy interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyLockfileSentinel", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "AncestorFilesRequest" + ], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.find_build_system": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "BuildSystemRequest", + "Setuptools" + ], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.run_pep517_build": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DistBuildRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.build_local_dists": { + "description": "Building local distributions", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "LocalDistsPexRequest" + ], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex.build_pex": { + "description": null, + "documentation": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexCliProcess, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PexRequest", + "PythonSetup", + "Platform", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_type": "BuildPexResult", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_optional_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)" + ], + "input_types": [ + "OptionalPexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_type": "OptionalPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)" + ], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_type": "Pex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_venv_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexRequest", + "BashBinary", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_type": "VenvPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, PexProcess, ..)" + ], + "input_types": [ + "PexPEX", + "Pex" + ], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "VenvPex" + ], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "PexCompletePlatformsField" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.find_interpreter": { + "description": "Find Python interpreter for constraints", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_type": "PythonExecutable", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_venv_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.wrap_venv_prex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_type": "VenvPexRequest", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.download_pex_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "PexCli" + ], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_type": "PexPEX", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonNativeCode", + "GlobalOptions", + "PexRuntimeEnvironment" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_environment.find_pex_python": { + "description": "Prepare environment for running PEXes", + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBinary", + "PexRuntimeEnvironment", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_type": "PexEnvironment", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "ChosenPythonResolveRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_type": "PexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequirementsPexRequest" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_RepositoryPexRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "InterpreterConstraintsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ResolvePexConfigRequest", + "PythonSetup", + "PythonRepos", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "output_type": "ResolvePexConfig", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.load_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "LoadedLockfileRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_type": "LoadedLockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.python_sources.prepare_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "PythonSourceFilesRequest", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.python_sources.strip_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFiles, ..)" + ], + "input_types": [ + "PythonSourceFiles" + ], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets": { + "description": "Find all vcs_version targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "output_type": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeGitWorktree, GitWorktreeRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GeneratePythonFromSetuptoolsSCMRequest", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllVCSVersionTargets", + "PythonSetup", + "PythonVCSVersionMappingMarker" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ReadlinkBinary, ReadlinkBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsMetadataRequest", + "BashBinary", + "JvmSubsystem", + "ScalaSubsystem", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaMainClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request", + "output_type": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaTestClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request", + "output_type": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": [ + "ScalacOptionsParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.collect_thirdparty_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ThirdpartyModulesRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "output_type": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "HandleScalacOptionsRequest", + "BuildRoot", + "Workspace" + ], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPDependencyModulesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "output_type": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.compile_scala_source": { + "description": "Compile with scalac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.fetch_scala_library": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "ScalaLibraryRequest" + ], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.fetch_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaPluginsRequest" + ], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis": { + "description": "Inferring Scala dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency": { + "description": "Infer dependency on scala-library artifact for Scala target.", + "documentation": null, + "input_gets": [ + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferScalaLibraryDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies": { + "description": "Infer dependency on scala plugin artifacts for Scala target.", + "documentation": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": [ + "InferScalaPluginDependenciesRequest" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "AnalyzeScalaSourceRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "SourceFilesRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "output_type": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaParserToolLockfileSentinel" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleScalaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets": { + "description": "Find all Scala targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols": { + "description": "Map all first party Scala targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.check.scalac_check": { + "description": "Check compilation for Scala", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ScalacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.repl.create_scala_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaRepl", + "BashBinary", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.tailor.find_putative_targets": { + "description": "Determine candidate Scala targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files": { + "description": null, + "documentation": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "GatherScalafmtConfigFilesRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalafmtToolLockfileSentinel", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt": { + "description": "Format with scalafmt", + "documentation": null, + "input_gets": [ + "Get(Setup, ScalafmtRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ScalafmtRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partition, SetupScalafmtPartition, ..)" + ], + "input_types": [ + "ScalafmtRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt", + "output_type": "Setup", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)" + ], + "input_types": [ + "SetupScalafmtPartition", + "InternalJdk", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.setup_scalafmt_partition", + "output_type": "Partition", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.scala_settings_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaInferSubsystem", + "ScalaSettingsRequest" + ], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalatestToolLockfileSentinel", + "Scalatest" + ], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.run_scalatest_test": { + "description": "Run Scalatest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "ScalatestTestFieldSet" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaArtifactsForVersionRequest" + ], + "name": "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version", + "output_type": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.shell.dependency_inference.find_all_shell_targets": { + "description": "Find all Shell targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.infer_shell_dependencies": { + "description": "Inferring Shell dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": [ + "InferShellDependencies", + "ShellMapping", + "ShellSetup" + ], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.map_shell_files": { + "description": "Creating map of Shell file names to Shell targets", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllShellTargets" + ], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.parse_shell_imports": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ParseShellImportsRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck": { + "description": "Lint with Shellcheck", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ShellcheckRequest", + "Shellcheck" + ], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_type": "LintResults", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt": { + "description": "Format with shfmt", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ShfmtRequest", + "Shfmt" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.backend.shell.shell_command.prepare_shell_command_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ShellCommandProcessRequest", + "ShellSetup", + "BashBinary" + ], + "name": "pants.backend.shell.shell_command.prepare_shell_command_process", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shell_command.run_shell_command": { + "description": "Running shell command", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, ShellCommandProcessRequest, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "GenerateFilesFromShellCommandRequest" + ], + "name": "pants.backend.shell.shell_command.run_shell_command", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shell_command.run_shell_command_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Process, ShellCommandProcessRequest, ..)" + ], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.backend.shell.shell_command.run_shell_command_request", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shell_command.run_shell_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.backend.shell.shell_command.run_shell_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell": { + "description": "Determine shunit2 shell", + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Shunit2RunnerRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2": { + "description": "Run tests with Shunit2", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Shunit2FieldSet", + "TestSubsystem" + ], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Shunit2FieldSet" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test": { + "description": "Setup Shunit2 to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Shunit2FieldSet" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target": { + "description": "Setup shunit2", + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "ShellSetup", + "TestSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.tailor.find_putative_targets": { + "description": "Determine candidate shell targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources", + "ShellSetup" + ], + "name": "pants.backend.shell.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ShellGeneratorSettingsRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + }, + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferTerraformModuleDependenciesRequest" + ], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TerraformHcl2ParserLockfileSentinel", + "TerraformHcl2Parser", + "PythonSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "TerraformHcl2Parser" + ], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseTerraformModuleSources", + "ParserSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.check.terraform_check": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StyleSetup, StyleSetupRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": [ + "TerraformCheckRequest", + "TerraformValidateSubsystem" + ], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets": { + "description": "Determine candidate Terraform targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeTerraformTargetsRequest", + "TerraformTool", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt": { + "description": "Format with `terraform fmt`", + "documentation": null, + "input_gets": [ + "Get(StyleSetup, StyleSetupRequest, ..)", + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "TffmtRequest", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_type": "FmtResult", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.style.setup_terraform_style": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "StyleSetupRequest" + ], + "name": "pants.backend.terraform.style.setup_terraform_style", + "output_type": "StyleSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.tool.setup_terraform_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "TerraformProcess", + "TerraformTool" + ], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.bsp.rules.bsp_context": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SessionValues" + ], + "name": "pants.bsp.rules.bsp_context", + "output_type": "BSPContext", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.bsp_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPCompileResult, CompileOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_type": "CompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.compile_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPCompileResult, BSPCompileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileOneBSPTargetRequest", + "BSPContext", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.compile.compile_bsp_target", + "output_type": "BSPCompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.lifecycle.bsp_build_initialize": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InitializeBuildParams", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.bsp_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPResourcesResult, ResourcesForOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.resources.bsp_resources_request", + "output_type": "ResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.resources_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPResourcesResult, BSPResourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesForOneBSPTargetRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.resources.resources_bsp_target", + "output_type": "BSPResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": [ + "SourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_type": "SourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DependencyModulesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependencySourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_workspace_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateOneBSPBuildTargetResult, GenerateOneBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "BSPBuildTargets", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPBuildTargetsMetadataResult, BSPBuildTargetsMetadataRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "GenerateOneBSPBuildTargetRequest", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "output_type": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "MaterializeBuildTargetSourcesRequest", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(BSPBuildTargetInternal, _ParseOneBSPMappingRequest, ..)" + ], + "input_types": [ + "BSPGoal" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "output_type": "BSPBuildTargets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.parse_one_bsp_mapping": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_ParseOneBSPMappingRequest" + ], + "name": "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecsWithoutFileOwners, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal", + "UnionMembership", + "FieldDefaults" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "output_type": "Targets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BuildTargetIdentifier", + "BSPBuildTargets" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "output_type": "BSPBuildTargetSourcesInfo", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_one_dependency_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(BSPDependencyModulesResult, BSPDependencyModulesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResolveOneDependencyModuleRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + }, + "pants.core.goals.check.check": { + "description": "`check` goal", + "documentation": null, + "input_gets": [ + "Get(CheckResults, CheckRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "FilteredTargets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_type": "Check", + "provider": "pants.core" + }, + "pants.core.goals.deploy.publish_process_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)" + ], + "input_types": [ + "_PublishProcessesForTargetRequest" + ], + "name": "pants.core.goals.deploy.publish_process_for_target", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.deploy.run_deploy": { + "description": "`experimental-deploy` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(DeployProcess, DeployFieldSet, ..)", + "Get(PublishProcesses, _PublishProcessesForTargetRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "DeploySubsystem" + ], + "name": "pants.core.goals.deploy.run_deploy", + "output_type": "Deploy", + "provider": "pants.core" + }, + "pants.core.goals.export.export": { + "description": "`export` goal", + "documentation": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir" + ], + "name": "pants.core.goals.export.export", + "output_type": "Export", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt": { + "description": "`fmt` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(_FmtBatchResult, _FmtTargetBatchRequest, ..)", + "Get(_FmtBatchResult, _FmtBuildFilesBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FmtSubsystem", + "BuildFileOptions", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_type": "Fmt", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt_build_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(FmtResult, _FmtBuildFilesRequest, ..)" + ], + "input_types": [ + "_FmtBuildFilesBatchRequest" + ], + "name": "pants.core.goals.fmt.fmt_build_files", + "output_type": "_FmtBatchResult", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt_target_batch": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FmtResult, FmtTargetsRequest, ..)" + ], + "input_types": [ + "_FmtTargetBatchRequest" + ], + "name": "pants.core.goals.fmt.fmt_target_batch", + "output_type": "_FmtBatchResult", + "provider": "pants.core" + }, + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal": { + "description": "`generate-lockfiles` goal", + "documentation": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, RequestedUserResolveNames, ..)", + "Get(WrappedGenerateLockfile, GenerateToolLockfileSentinel, ..)", + "Get(GenerateLockfileResult, GenerateLockfile, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + }, + "pants.core.goals.lint.lint": { + "description": "`lint` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(LintResults, LintTargetsRequest, ..)", + "Get(FmtResult, FmtTargetsRequest, ..)", + "Get(FmtResult, _FmtBuildFilesRequest, ..)", + "Get(LintResults, LintFilesRequest, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Specs", + "BuildFileOptions", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_type": "Lint", + "provider": "pants.core" + }, + "pants.core.goals.package.find_all_packageable_targets": { + "description": "Find all packageable targets in project", + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)" + ], + "input_types": [ + "AllTargets" + ], + "name": "pants.core.goals.package.find_all_packageable_targets", + "output_type": "AllPackageableTargets", + "provider": "pants.core" + }, + "pants.core.goals.package.package_asset": { + "description": "`package` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "DistDir" + ], + "name": "pants.core.goals.package.package_asset", + "output_type": "Package", + "provider": "pants.core" + }, + "pants.core.goals.publish.package_for_publish": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(PublishProcesses, PublishRequest, ..)" + ], + "input_types": [ + "PublishProcessesRequest" + ], + "name": "pants.core.goals.publish.package_for_publish", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.publish.run_publish": { + "description": "`publish` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "PublishSubsystem" + ], + "name": "pants.core.goals.publish.run_publish", + "output_type": "Publish", + "provider": "pants.core" + }, + "pants.core.goals.repl.run_repl": { + "description": "`repl` goal", + "documentation": null, + "input_gets": [ + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "ReplSubsystem", + "FilteredTargets", + "UnionMembership", + "CompleteEnvironment" + ], + "name": "pants.core.goals.repl.run_repl", + "output_type": "Repl", + "provider": "pants.core" + }, + "pants.core.goals.run.run": { + "description": "`run` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(RunDebugAdapterRequest, RunFieldSet, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "DebugAdapterSubsystem", + "GlobalOptions", + "Workspace", + "BuildRoot", + "CompleteEnvironment" + ], + "name": "pants.core.goals.run.run", + "output_type": "Run", + "provider": "pants.core" + }, + "pants.core.goals.tailor.determine_all_owned_sources": { + "description": "Determine all files already owned by targets", + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_type": "AllOwnedSources", + "provider": "pants.core" + }, + "pants.core.goals.tailor.edit_build_files": { + "description": "Edit BUILD files with new targets", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "EditBuildFilesRequest", + "TailorSubsystem" + ], + "name": "pants.core.goals.tailor.edit_build_files", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + }, + "pants.core.goals.tailor.rename_conflicting_targets": { + "description": null, + "documentation": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": [ + "PutativeTargets", + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + }, + "pants.core.goals.tailor.restrict_conflicting_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PutativeTarget" + ], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + }, + "pants.core.goals.tailor.tailor": { + "description": "`tailor` goal", + "documentation": null, + "input_gets": [ + "Get(SpecsPaths, Specs, ..)", + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions", + "GlobalOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_type": "TailorGoal", + "provider": "pants.core" + }, + "pants.core.goals.test.build_runtime_package_dependencies": { + "description": "Build runtime package dependencies for tests", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "BuildPackageDependenciesRequest" + ], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + }, + "pants.core.goals.test.get_filtered_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "TestSubsystem" + ], + "name": "pants.core.goals.test.get_filtered_environment", + "output_type": "TestExtraEnv", + "provider": "pants.core" + }, + "pants.core.goals.test.run_tests": { + "description": "`test` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(TestDebugRequest, TestFieldSet, ..)", + "Get(TestDebugAdapterRequest, TestFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(TestResult, TestFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, CoverageDataCollection, ..)", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "DebugAdapterSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId" + ], + "name": "pants.core.goals.test.run_tests", + "output_type": "Test", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.determine_renamed_field_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_field_types", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.determine_renamed_target_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes" + ], + "name": "pants.core.goals.update_build_files.determine_renamed_target_types", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_black": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithBlackRequest", + "Black" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_yapf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithYapfRequest", + "Yapf" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields": { + "description": "Check for deprecated field type names", + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedFieldsRequest", + "RenamedFieldTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets": { + "description": "Check for deprecated target type names", + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameDeprecatedTargetsRequest", + "RenamedTargetTypes" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.update_build_files": { + "description": "Update all BUILD files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership", + "Specs" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap.python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)" + ], + "input_types": [ + "PythonBootstrapSubsystem" + ], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_type": "PythonBootstrap", + "provider": "pants.core" + }, + "pants.core.target_types.find_all_assets": { + "description": "Find all assets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets", + "AllAssetTargetsRequest" + ], + "name": "pants.core.target_types.find_all_assets", + "output_type": "AllAssetTargets", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_file_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateFileSourceRequest" + ], + "name": "pants.core.target_types.hydrate_file_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_resource_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateResourceSourceRequest" + ], + "name": "pants.core.target_types.hydrate_resource_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.map_assets_by_path": { + "description": "Mapping assets by path", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllAssetTargets" + ], + "name": "pants.core.target_types.map_assets_by_path", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + }, + "pants.core.target_types.package_archive_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": [ + "ArchiveFieldSet" + ], + "name": "pants.core.target_types.package_archive_target", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.target_types.relocate_files": { + "description": "Relocating loose files for `relocated_files` targets", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "RelocateFilesViaCodegenRequest" + ], + "name": "pants.core.target_types.relocate_files", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest": { + "description": null, + "documentation": "Backwards-compatibility helper.", + "input_gets": [], + "input_types": [ + "Digest" + ], + "name": "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest", + "output_type": "MaybeExtractArchiveRequest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.create_archive": { + "description": "Creating an archive file", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ZipBinary, ZipBinaryRequest, ..)", + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CreateArchive" + ], + "name": "pants.core.util_rules.archive.create_archive", + "output_type": "Digest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.maybe_extract_archive": { + "description": "Extracting an archive file", + "documentation": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary, UnzipBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(GunzipBinary, GunzipBinaryRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MaybeExtractArchiveRequest" + ], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_type": "ExtractedArchive", + "provider": "pants.core" + }, + "pants.core.util_rules.asdf.resolve_asdf_tool_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "AsdfToolPathsRequest", + "BuildRoot" + ], + "name": "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "output_type": "AsdfToolPathsResult", + "provider": "pants.core" + }, + "pants.core.util_rules.config_files.find_config_file": { + "description": "Find config files", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ConfigFilesRequest" + ], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_type": "ConfigFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.distdir.get_distdir": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GlobalOptions", + "BuildRoot" + ], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_type": "DistDir", + "provider": "pants.core" + }, + "pants.core.util_rules.external_tool.download_external_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ExternalToolRequest" + ], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + }, + "pants.core.util_rules.source_files.determine_source_files": { + "description": "Get all relevant source files", + "documentation": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFilesRequest" + ], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_type": "SourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_file_name": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "StrippedFileNameRequest" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_type": "StrippedFileName", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_source_roots": { + "description": null, + "documentation": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFiles" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_sources_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourcesPaths" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + }, + "pants.core.util_rules.subprocess_environment.get_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "SubprocessEnvironment" + ], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.create_binary_shims": { + "description": null, + "documentation": "Creates a bin directory with shims for all requested binaries.\n\nUseful as input digest for a Process to setup a `bin` directory for PATH.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryShimsRequest", + "BashBinary", + "MkdirBinary", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_type": "BinaryShims", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_bash": { + "description": "Finding the `bash` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "BashBinaryRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryPathRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_type": "BinaryPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat": { + "description": "Finding the `cat` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cat", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "CatBinaryRequest", + "CatBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_cat_wrapper", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod": { + "description": "Finding the `chmod` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ChmodBinaryRequest", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_chmod_wrapper", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cp": { + "description": "Finding the `cp` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cp", + "output_type": "CpBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff": { + "description": "Finding the `diff` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DiffBinaryRequest", + "DiffBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_diff_wrapper", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_git", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GitBinaryRequest", + "GitBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_git_wrapper", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_gunzip": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_gunzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GunzipBinaryRequest", + "GunzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip_wrapper", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir": { + "description": "Finding the `mkdir` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MkdirBinaryRequest", + "MkdirBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_mkdir_wrapper", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mv": { + "description": "Finding the `mv` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mv", + "output_type": "MvBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_open": { + "description": "Finding the `open` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_open", + "output_type": "OpenBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_python": { + "description": "Finding a `python` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "PythonBootstrap" + ], + "name": "pants.core.util_rules.system_binaries.find_python", + "output_type": "PythonBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink": { + "description": "Finding the `readlink` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_readlink", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ReadlinkBinaryRequest", + "ReadlinkBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_readlink_wrapper", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar": { + "description": "Finding the `tar` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TarBinaryRequest", + "TarBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_tar_wrapper", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_touch": { + "description": "Finding the `touch` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_touch", + "output_type": "TouchBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip": { + "description": "Finding the `unzip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnzipBinaryRequest", + "UnzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip": { + "description": "Finding the `zip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ZipBinaryRequest", + "ZipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_zip_wrapper", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.get_bash": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.maybe_find_git", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MaybeGitBinaryRequest", + "MaybeGitBinary" + ], + "name": "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.engine.process.fallible_to_exec_result_or_raise": { + "description": null, + "documentation": "Converts a FallibleProcessResult to a ProcessResult or raises an error.", + "input_gets": [], + "input_types": [ + "FallibleProcessResult", + "ProductDescription", + "KeepSandboxes" + ], + "name": "pants.engine.process.fallible_to_exec_result_or_raise", + "output_type": "ProcessResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.get_multi_platform_request_description": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Process" + ], + "name": "pants.engine.process.get_multi_platform_request_description", + "output_type": "ProductDescription", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.interactive_process_from_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InteractiveProcessRequest" + ], + "name": "pants.engine.process.interactive_process_from_process", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.goal.anonymous_telemetry.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AnonymousTelemetryCallbackFactoryRequest", + "AnonymousTelemetry" + ], + "name": "pants.goal.anonymous_telemetry.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.goal.stats_aggregator.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.jvm.bsp.compile.notify_for_classpath_entry": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "BSPClasspathEntryRequest", + "BSPContext" + ], + "name": "pants.jvm.bsp.compile.notify_for_classpath_entry", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "ClasspathEntryRequestFactory" + ], + "name": "pants.jvm.classpath.classpath", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.loose_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ClasspathEntry", + "UnzipBinary" + ], + "name": "pants.jvm.classpath.loose_classfiles", + "output_type": "LooseClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.calculate_jvm_request_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnionMembership" + ], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.classpath_dependency_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.compile_classpath_entries": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ClasspathEntryRequests" + ], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.required_classfiles": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleClasspathEntry" + ], + "name": "pants.jvm.compile.required_classfiles", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping": { + "description": null, + "documentation": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "output_type": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets": { + "description": "Find all jvm_artifact targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields": { + "description": "Find all targets with experimental_provides fields in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SymbolMap, FirstPartyMappingRequest, ..)" + ], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem", + "ThirdPartySymbolMapping" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "output_type": "SymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.determine_jvm_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownJVMUserResolveNamesRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.generate_jvm_lockfile": { + "description": "Generate JVM lockfile", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.fetch_nailgun": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.internal_jdk": { + "description": null, + "documentation": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)" + ], + "input_types": [ + "JvmSubsystem" + ], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.jvm_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess", + "JvmSubsystem", + "GlobalOptions" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.prepare_jdk_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.deploy_jar_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": [ + "DeployJarClasspathEntryRequest" + ], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.package_deploy_jar": { + "description": null, + "documentation": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Producing a ZIP file containing _only_ the JAR manifest file for the `main_class`\n3. Creating a deploy jar with a broken ZIP index by concatenating all dependency JARs together,\n followed by the thin JAR we created\n4. Using the unix `zip` utility's repair function to fix the broken fat jar", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, StripJarRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BashBinary", + "ZipBinary", + "JvmSubsystem", + "DeployJarFieldSet" + ], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.package_war": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "PackageWarFileFieldSet", + "BashBinary", + "ZipBinary" + ], + "name": "pants.jvm.package.war.package_war", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_content": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "RenderWarContentRequest" + ], + "name": "pants.jvm.package.war.render_war_content", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_deployment_descriptor": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderWarDeploymentDescriptorRequest" + ], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile": { + "description": null, + "documentation": "Fetch every artifact in a lockfile.", + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [ + "CoursierResolvedLockfile" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord": { + "description": null, + "documentation": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "CoursierLockfileEntry" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile": { + "description": null, + "documentation": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier": { + "description": "Fetch with coursier", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierFetchRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "CoursierResolveKey" + ], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "ToolClasspathRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets": { + "description": null, + "documentation": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": [ + "Get(Digest, PathGlobs, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "Coursier", + "CoursierFetchProcess" + ], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.setup_coursier": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBinary" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "GatherJvmCoordinatesRequest" + ], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": [ + "GenerateJvmLockfileFromTool" + ], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resources.assemble_resources_jar": { + "description": "Assemble resources", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "BashBinary", + "TouchBinary", + "JvmSubsystem", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.jvm.strip_jar.strip_jar.build_processors", + "output_type": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StripJarToolLockfileSentinel" + ], + "name": "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.strip_jar": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "StripJarCompiledClassfiles", + "InternalJdk", + "StripJarRequest" + ], + "name": "pants.jvm.strip_jar.strip_jar.strip_jar", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types.jvm_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JvmResolveFieldDefaultFactoryRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.target_types.jvm_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.generate_junit_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JunitToolLockfileSentinel", + "JUnit" + ], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.run_junit_test": { + "description": "Run JUnit", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.run_junit_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "JunitTestFieldSet" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Environment, EnvironmentRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.util_rules.digest_to_file_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "ExtractFileDigest" + ], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + }, + "pants.source.source_root.all_roots": { + "description": "Compute all source roots", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootConfig" + ], + "name": "pants.source.source_root.all_roots", + "output_type": "AllSourceRoots", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_root": { + "description": null, + "documentation": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest", + "SourceRootConfig" + ], + "name": "pants.source.source_root.get_optional_source_root", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_roots": { + "description": null, + "documentation": "Rule to request source roots that may not exist.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_optional_source_roots", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_root": { + "description": null, + "documentation": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest" + ], + "name": "pants.source.source_root.get_source_root", + "output_type": "SourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_roots": { + "description": null, + "documentation": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_source_roots", + "output_type": "SourceRootsResult", + "provider": "pants.core" + }, + "pants.vcs.git.get_git_worktree": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GitWorktreeRequest", + "MaybeGitBinary" + ], + "name": "pants.vcs.git.get_git_worktree", + "output_type": "MaybeGitWorktree", + "provider": "pants.core" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "\nAny tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.14/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [docker].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. \"/\".\n\nIt uses the `[docker].default_repository` by default.\n\nrepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory`, `parent_directory`, and `default_repository`.\n\nRegistries may also configure the repository value for specific registries.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nlabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: default|[=|[,]])\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this image to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_run_shell_command": { + "alias": "experimental_run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n experimental_run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `experimental_shell_command`, in addition to `workdir` you only have the `command` and `dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the current working directory of the command, relative to the project root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "experimental_shell_command": { + "alias": "experimental_shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n experimental_shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n dependencies=[\":scripts\"],\n outputs=[\"results/\", \"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output from the command logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "outputs", + "default": null, + "description": "Specify the shell command output files and directories.\n\nUse a trailing slash on directory names, i.e. `my_dir/`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": null, + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in the shell process. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an http_source is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target. `http_source` has the following signature:\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\nThe filename defaults to the last part of the URL path (E.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory). You can easily get the len and checksum with the following command:\n `curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null`", + "provider": "", + "required": true, + "type_hint": "str | HTTPSource" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go', '*.s')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.go', '*_test.go', '!test_ignore.go']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_artifact": { + "alias": "helm_artifact", + "description": "A third party Helm artifact.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registry", + "default": null, + "description": "Either registry alias (prefixed by `@`) configured in `[helm.registries]` for the Helm artifact or the full OCI registry URL.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repository", + "default": null, + "description": "Either a HTTP(S) URL to a classic repository, or a path inside an OCI registry (when `registry` is provided).", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "Artifact name of the chart, without version number.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The `version` part of a third party Helm chart.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A third party Helm artifact." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'values.yml', 'templates/*.yaml', 'templates/*.yml', 'templates/*.tpl', 'crds/*.yaml', 'crds/*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['values.yaml', 'templates/*.yaml', '!values_ignore.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "repository", + "default": null, + "description": "Repository to use in the Helm registry where this chart is going to be published.\n\nIf no value is given and `[helm].default-registry-repository` is undefined too, then the chart will be pushed to the root of the OCI registry.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any OCI registries to use for the built chart.\n\nThe address is an `oci://` prefixed domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [helm].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [helm.registries.my-registry-alias]\n address = \"oci://myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n helm_chart(\n registries = [\n \"@my-registry-alias\",\n \"oci://myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this Helm chart to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_lint", + "default": "False", + "description": "If set to true, do not run any linting in this Helm chart when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart." + }, + "helm_deployment": { + "alias": "helm_deployment", + "description": "A Helm chart deployment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "release_name", + "default": null, + "description": "Name of the release used in the deployment. If not set, the target name will be used instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.yaml', '*.yml')", + "description": "Helm configuration files for a given deployment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "namespace", + "default": null, + "description": "Kubernetes namespace for the given deployment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_crds", + "default": "False", + "description": "If true, then does not deploy the Custom Resource Definitions that are defined in the chart.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "values", + "default": null, + "description": "Individual values to use when rendering a given deployment.\n\nValue names should be defined using dot-syntax as in the following example:\n\n``` helm_deployment(\n values={\n \"nameOverride\": \"my_custom_name\",\n \"image.pullPolicy\": \"Always\",\n },\n) ```\n\nValues can be dynamically calculated using interpolation as shown in the following example:\n\n``` helm_deployment(\n values={\n \"configmap.deployedAt\": \"{env.DEPLOY_TIME}\",\n },\n) ```\n\nCheck the Helm backend documentation on what are the options available and its caveats when making usage of dynamic values in your deployments.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "create_namespace", + "default": "False", + "description": "If true, the namespace will be created if it doesn't exist.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "no_hooks", + "default": "False", + "description": "If true, none of the lifecycle hooks of the given chart will be included in the deployment.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": null, + "description": "Timeout in seconds when running a Helm deployment.", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart deployment." + }, + "helm_unittest_test": { + "alias": "helm_unittest_test", + "description": "A single helm-unittest suite file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A single helm-unittest suite file." + }, + "helm_unittest_tests": { + "alias": "helm_unittest_tests", + "description": "Generates a `helm_unittest_test` target per each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.yaml',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*_test.yaml', '!ignore_test.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"configmap_test.yaml\": {\"timeout\": 120},\n (\"deployment_test.yaml\", \"pod_test.yaml\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `helm_unittest_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "Generates a `helm_unittest_test` target per each file in the `sources` field." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.java', 'New*.java', '!OldExample.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.java', '!TestIgnore.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "excludes", + "default": null, + "description": "A list of unversioned coordinates (i.e. `group:artifact`) that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nThese values are passed directly to Coursier, and if specified incorrectly will show a parse error from Coursier.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., web.xml) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "kotlin_junit_test": { + "alias": "kotlin_junit_test", + "description": "A single Kotlin test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin test, run with JUnit." + }, + "kotlin_junit_tests": { + "alias": "kotlin_junit_tests", + "description": "Generate a `kotlin_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.kt', '!TestIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_junit_test` target for each file in the `sources` field." + }, + "kotlin_source": { + "alias": "kotlin_source", + "description": "A single Kotlin source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin source file containing application or library code." + }, + "kotlin_sources": { + "alias": "kotlin_sources", + "description": "Generate a `kotlin_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.kt', 'New*.kt', '!OldIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_source` target for each file in the `sources` field." + }, + "kotlinc_plugin": { + "alias": "kotlinc_plugin", + "description": "A plugin for `kotlinc`.\n\nTo enable a `kotlinc` plugin, define a target with this target type, and set the `artifact` field to the address of a `jvm_artifact` target that provides the plugin. Set the `plugin_id` field to the ID of the plugin if that name cannot be inferred from the `name` of this target.\n\nThe standard `kotlinc` plugins are available via the following artifact coordinates and IDs: * All-open: `org.jetbrains.kotlin:kotlin-allopen:VERSION` (ID: `all-open`) * No-arg: `org.jetbrains.kotlin:kotlin-noarg:VERSION` (ID: `no-arg`) * SAM with receiver: `org.jetbrains.kotlin:kotlin-sam-with-receiver:VERSION` (ID: `sam-with-receiver`) * kapt (annotation processor): `org.jetbrains.kotlin:org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:VERSION` (ID: `kapt3`) * Seralization: `org.jetbrains.kotlin:kotlin-serialization:VERSION` (ID: `serialization`)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `kotlinc`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_id", + "default": null, + "description": "The ID for `kotlinc` to use when setting options for the plugin.\n\nIf not set, the plugin ID defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "plugin_args", + "default": null, + "description": "Optional list of argument to pass to the plugin.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A plugin for `kotlinc`." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants. The generated targets will have the correct version based on the `version` in your `pants.toml`, and they will work with dependency inference.\n\nBecause the Plugin API is not yet stable, the version is set automatically for you to improve stability. If you're currently using a dev release, the version will be set to that exact dev release. If you're using an alpha release, release candidate (rc), or stable release, the version will allow any non-dev-release release within the release series, e.g. `>=2.14.0rc0,<2.15`.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n ```\n overrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n }\n ```\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same entry_point in multiple keys, so long as you don't override the same field more than one time for the entry_point.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.14/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.14/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.14/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.proto', 'new_*.proto', '!old_ignore*.proto']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.proto\": {\"grpc\": True},\n \"bar.proto\": {\"description\": \"our user model\"},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.14/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the `name` of the `pyoxidizer_target`. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by $ or surrounded with ${ }.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted entry_point passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or []).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets filesystem_resources.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.14/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.14/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: 'path.to.module'.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.14/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the Pex. This is most useful with Lambda Layers to make code uploads smaller when deps are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.14/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\n Example:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies ", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.14/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing setup.py, setup.cfg, pyproject.toml files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "env_vars", + "default": null, + "description": "Environment variables to set when running the PEP-517 build backend.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the long_description field in setup.py.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "uses_mypyc", + "default": "False", + "description": "If true, this distribution is built using mypyc.\n\nIn this case, Pants will build the distribution in an environment that includes mypy, as configured in the `[mypy]` subsystem, including plugins, config files, extra type stubs, and the distribution's own requirements (which normally would not be needed at build time, but in this case may provide necessary type annotations).\n\nYou will typically set this field on distributions whose setup.py uses mypyc.build.mypycify(). See https://mypyc.readthedocs.io/en/latest/index.html .", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.14/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'cloud_function.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.", + "provider": "", + "required": false, + "type_hint": "'python310' | 'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be 'event' or 'http'. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to --trigger-http.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style file from the `source` field.\n\nThis works with pip-style requirements files: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style file from the `source` field." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'new_*.py', '!old_ignore.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.14/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test_*.py', '*_test.py', 'tests.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo_test.py\": {\"timeout\": 120},\n \"bar_test.py\": {\"timeout\": 200},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an http_source is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target. `http_source` has the following signature:\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\nThe filename defaults to the last part of the URL path (E.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory). You can easily get the len and checksum with the following command:\n `curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null`", + "provider": "", + "required": true, + "type_hint": "str | HTTPSource" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.scala', '!TestIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_junit_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.scala', 'New*.scala', '!OldIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_sources` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala')).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Spec.scala', '!SuiteIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scalatest_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala'))." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.sh', 'new_*.sh', '!old_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test.sh', 'test_*.sh', '!test_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo_test.sh\": {\"timeout\": 120},\n \"bar_test.sh\": {\"timeout\": 200},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.tf', 'new_*.tf', '!old_ignore.tf']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.14/docs/thrift-python", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.thrift', 'new_*.thrift', '!old_ignore.thrift']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.14/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + }, + "vcs_version": { + "alias": "vcs_version", + "description": "Generates a version string from VCS state.\n\nUses a constrained but useful subset of the full functionality of setuptools_scm (https://github.com/pypa/setuptools_scm). These constraints avoid pitfalls in the interaction of setuptools_scm with Pants's hermetic environments.\n\nIn particular, we ignore any existing setuptools_scm config. Instead you must provide a subset of that config in this target's fields.\n\nIf you need functionality that is not currently exposed here, please reach out to us at https://www.pantsbuild.org/v2.14/docs/getting-help.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "tag_regex", + "default": "'^(?:[\\\\w-]+-)?(?P[vV]?\\\\d+(?:\\\\.\\\\d+){0,2}[^\\\\+]*)(?:\\\\+.*)?$'", + "description": "A Python regex string to extract the version string from a VCS tag.\n\nThe regex needs to contain either a single match group, or a group named version, that captures the actual version information.\n\nNote that this is unrelated to the tags field and Pants's own tags concept.\n\nSee https://github.com/pypa/setuptools_scm for implementation details.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "generate_to", + "default": null, + "description": "Generate the version data to this relative path, using the template field.\n\nNote that the generated output will not be written to disk in the source tree, but will be available as a generated dependency to code that depends on this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "template", + "default": null, + "description": "Generate the version data using this format string, which takes a version format kwarg.\n\nE.g., 'version = \"{version}\"'", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python", + "summary": "Generates a version string from VCS state." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.14/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.14.2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.14.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": null, + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": null, + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/", + "__pycache__" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/", + "__pycache__" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": [ + "fetch", + "validate", + "defer" + ], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cache-content-behavior=" + ], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-total-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-per-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `[GLOBAL].remote_store_headers` still work.\n\nIf you return `instance_name`, Pants will replace `[GLOBAL].remote_instance_name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.14.2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-read-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.14.2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-build-file-globs=" + ], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "typ": "UnmatchedBuildFileGlobs", + "unscoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-cli-globs=" + ], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "typ": "UnmatchedCliGlobs", + "unscoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.14/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-level=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Upcoming deprecation in version: 2.15.0.dev1, is scheduled to be removed in version: 2.17.0.dev1.", + "deprecation_active": false, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "2.17.0.dev1", + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "always", + "on_failure", + "never" + ], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--keep-sandboxes=" + ], + "env_var": "PANTS_KEEP_SANDBOXES", + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "indicatif-spinner", + "experimental-prodash" + ], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dynamic-ui-renderer=" + ], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.14/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": "Use the `cache_content_behavior` option instead.", + "removal_version": "2.15.0.dev1", + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]use-deprecated-directory-cli-args-semantics", + "config_key": "use_deprecated_directory_cli_args_semantics", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]use-deprecated-directory-cli-args-semantics" + ], + "env_var": "PANTS_USE_DEPRECATED_DIRECTORY_CLI_ARGS_SEMANTICS", + "help": "If true, Pants will use the old, deprecated semantics for directory arguments like `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test dir`: directories are shorthand for the target `dir:dir`, i.e. the target that leaves off `name=`.\n\nIf false, Pants will use the new semantics: directory arguments will match all files and targets in the directory, e.g. `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test dir` will run all tests in `dir`.\n\nThis also impacts the behavior of the `tailor` goal. If this option is true, `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 tailor dir` will run over `dir` and all recursive sub-directories. If false, specifying a directory will only add targets for that directory.", + "removal_hint": "If `use_deprecated_directory_cli_args_semantics` is already set explicitly to `false`, simply delete the option from `pants.toml` because `false` is now the default.\n\nIf set to true, removing the option will cause directory arguments like `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test project/dir` to now match all files and targets in the directory, whereas before it matched the target `project/dir:dir`. To keep the old semantics, use the explicit address syntax.", + "removal_version": "2.15.0.dev0", + "scoped_cmd_line_args": [ + "--use-deprecated-directory-cli-args-semantics", + "--no-use-deprecated-directory-cli-args-semantics" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-deprecated-directory-cli-args-semantics", + "--no-use-deprecated-directory-cli-args-semantics" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]use-deprecated-pex-binary-run-semantics", + "config_key": "use_deprecated_pex_binary_run_semantics", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]use-deprecated-pex-binary-run-semantics" + ], + "env_var": "PANTS_USE_DEPRECATED_PEX_BINARY_RUN_SEMANTICS", + "help": "If `true`, `run`ning a `pex_binary` will run your firstparty code by copying sources to a sandbox (while still using a PEX for thirdparty dependencies). Additionally, you can refer to the `pex_binary` using the value of its `entry_point` field (if it is a filename).\n\nIf `false`, `run`ning a `pex_binary` will build the PEX via `package` and run it directly. This makes `run` equivalent to using `package` and running the artifact. Additionally, the binary must be `run` using the `pex_binary`'s address, as passing a filename to `run` will run the `python_source`.\n\nNote that support has been added to Pants to allow you to `run` any `python_source`, so setting this to `true` should be reserved for maintaining backwards-compatibility with previous versions of Pants. Additionally, you can remove any `pex_binary` targets that exist solely for running Python code (and aren't meant to be packaged).", + "removal_hint": "If `use_deprecated_pex_binary_run_semantics` is already set explicitly to `false`, simply delete the option from `pants.toml` because `false` is now the default.\n\nIf set to `true`, removing the option will cause `run` on a `pex_binary` to package and run the built PEX file. Additionally, the `pex_binary` must be referred to by its address. To keep the old `run` semantics, use `run` on the relevant `python_source` target.", + "removal_version": "2.15.0.dev0", + "scoped_cmd_line_args": [ + "--use-deprecated-pex-binary-run-semantics", + "--no-use-deprecated-pex-binary-run-semantics" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-deprecated-pex-binary-run-semantics", + "--no-use-deprecated-pex-binary-run-semantics" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.14/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.14/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-thrift-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--thrift-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-expected-version=" + ], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake==1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-version=" + ], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake==1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-lockfile=" + ], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/lint/autoflake/autoflake.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=autoflake`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "help": "If true, don't use Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [ + "--remove-all-unused-imports" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "--remove-all-unused-imports" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-export" + ], + "env_var": "PANTS_AUTOFLAKE_EXPORT", + "help": "If true, export a virtual environment with Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-export", + "--no-autoflake-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython==3.1.18" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython==3.1.18" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/lint/bandit/bandit.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=bandit`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "If true, don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-export" + ], + "env_var": "PANTS_BANDIT_EXPORT", + "help": "If true, export a virtual environment with Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-export", + "--no-bandit-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==22.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==22.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/lint/black/black.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "If true, don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-export" + ], + "env_var": "PANTS_BLACK_EXPORT", + "help": "If true, export a virtual environment with Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-export", + "--no-black-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-version=" + ], + "env_var": "PANTS_BUF_VERSION", + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-template=" + ], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-format-skip" + ], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "help": "If true, don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-skip", + "--no-buf-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--format-skip", + "--no-format-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-lint-skip" + ], + "env_var": "PANTS_BUF_LINT_SKIP", + "help": "If true, don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-skip", + "--no-buf-lint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-skip", + "--no-lint-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--format-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--lint-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "buildifier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-version=" + ], + "env_var": "PANTS_BUILDIFIER_VERSION", + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-template=" + ], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buildifier-skip" + ], + "env_var": "PANTS_BUILDIFIER_SKIP", + "help": "If true, don't use Buildifier when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-skip", + "--no-buildifier-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_ARGS", + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "is_goal": false, + "provider": "pants.backend.build_files.fmt.buildifier", + "scope": "buildifier" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.14/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--check-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_CHECK_ONLY", + "help": "Only run these checkerss and skip all others.\n\nThe checkers names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkerss.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--check-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependees=transitive\"\n\nThis would allow you to run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 green all-changed`, which is shorthand for `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependees=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.0-M5-18-gfebf9838c", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.0-M5-18-gfebf9838c" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.5,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.5,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/subsystems/coverage_py.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=coverage-py`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil'].\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "debug-adapter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-host=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-host" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--host" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-port=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "is_goal": false, + "provider": "pants.core", + "scope": "debug-adapter" + }, + "debugpy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-version=", + "config_key": "version", + "default": "debugpy==1.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-version=" + ], + "env_var": "PANTS_DEBUGPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy==1.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.11" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.11" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-lockfile=" + ], + "env_var": "PANTS_DEBUGPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/subsystems/debugpy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=debugpy`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-console-script=" + ], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-entry-point=" + ], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DEBUGPY_ARGS", + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "debugpy" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees. If unspecified, list direct dependees only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/lint/docformatter/docformatter.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=docformatter`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "If true, don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-export" + ], + "env_var": "PANTS_DOCFORMATTER_EXPORT", + "help": "If true, export a virtual environment with docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-export", + "--no-docformatter-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find the Docker client and any tools required.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-tools=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_TOOLS", + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tools" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tools" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-tailor" + ], + "env_var": "PANTS_DOCKER_TAILOR", + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tailor", + "--no-docker-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-context-root=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-context-root" + ], + "typ": "workspace_path", + "unscoped_cmd_line_args": [ + "--default-context-root" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-verbose" + ], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-verbose", + "--no-build-verbose" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-version=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-lockfile=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/docker/subsystems/dockerfile.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=dockerfile-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.0.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.0.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.2.6|macos_x86_64|94d1efad05a06c879b9c1afc8a6f7acb2532d33864225605fc766ecdd58d9888|21328767", + "1.2.6|macos_arm64|452675f91cfe955a95708697a739d9b114c39ff566da7d9b31489064ceaaf66a|19774190", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.5|macos_x86_64|d196f94486e54407524a0efbcb5756b197b763863ead2e145f86dd6c80fc9ce8|21323818", + "1.2.5|macos_arm64|77dd998d26e578aa22de557dc142672307807c88e3a4da65d8442de61479899f|19767100", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.4|macos_x86_64|3e04343620fb01b8be01c8689dcb018b8823d8d7b070346086d7df22cc4cd5e6|21321939", + "1.2.4|macos_arm64|e596dcdfe55b2070a55fcb271873e86d1af7f6b624ffad4837ccef119fdac97a|19765021", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.3|macos_x86_64|2962b0ebdf6f431b8fb182ffc1d8b582b73945db0c3ab99230ffc360d9e297a2|21318448", + "1.2.3|macos_arm64|601962205ad3dcf9b1b75f758589890a07854506cbd08ca2fc25afbf373bff53|19757696", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.2|macos_x86_64|bd224d57718ed2b6e5e3b55383878d4b122c6dc058d65625605cef1ace9dcb25|21317982", + "1.2.2|macos_arm64|4750d46e47345809a0baa3c330771c8c8a227b77bec4caa7451422a21acefae5|19758608", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.1|macos_x86_64|d7c9a677efb22276afdd6c7703cbfee87d509a31acb247b96aa550a35154400a|21309907", + "1.2.1|macos_arm64|96e3659e89bfb50f70d1bb8660452ec433019d00a862d2291817c831305d85ea|19751670", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.0|macos_x86_64|f608b1fee818988d89a16b7d1b6d22b37cc98892608c52c22661ca6cbfc3d216|21309982", + "1.2.0|macos_arm64|d4df7307bad8c13e443493c53898a7060f77d661bfdf06215b61b65621ed53e9|19750767", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.1.9|macos_x86_64|c902b3c12042ac1d950637c2dd72ff19139519658f69290b310f1a5924586286|20709155", + "1.1.9|macos_arm64|918a8684da5a5529285135f14b09766bd4eb0e8c6612a4db7c121174b4831739|19835808", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.8|macos_x86_64|29ad0af72d498a76bbc51cc5cb09a6d6d0e5673cbbab6ef7aca57e3c3e780f46|20216382", + "1.1.8|macos_arm64|d6fefdc27396a019da56cce26f7eeea3d6986714cbdd488ff6a424f4bca40de8|19371647", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.7|macos_x86_64|5e7e939e084ae29af7fd86b00a618433d905477c52add2d4ea8770692acbceac|20213394", + "1.1.7|macos_arm64|a36b6e2810f81a404c11005942b69c3d1d9baa8dd07de6b1f84e87a67eedb58f|19371095", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.6|macos_x86_64|bbfc916117e45788661c066ec39a0727f64c7557bf6ce9f486bbd97c16841975|20168574", + "1.1.6|macos_arm64|dddb11195fc413653b98e7a830ec7314f297e6c22575fc878f4ee2287a25b4f5|19326402", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.5|macos_x86_64|7d4dbd76329c25869e407706fed01213beb9d6235c26e01c795a141c2065d053|20157551", + "1.1.5|macos_arm64|723363af9524c0897e9a7d871d27f0d96f6aafd11990df7e6348f5b45d2dbe2c|19328643", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.4|macos_x86_64|c2b2500835d2eb9d614f50f6f74c08781f0fee803699279b3eb0188b656427f2|20098620", + "1.1.4|macos_arm64|a753e6cf402beddc4043a3968ff3e790cf50cc526827cda83a0f442a893f2235|19248286", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.3|macos_x86_64|c54022e514a97e9b96dae24a3308227d034989ecbafb65e3293eea91f2d5edfb|20098660", + "1.1.3|macos_arm64|856e435da081d0a214c47a4eb09b1842f35eaa55e7ef0f9fa715d4816981d640|19244516", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.2|macos_x86_64|214da2e97f95389ba7557b8fcb11fe05a23d877e0fd67cd97fcbc160560078f1|20098558", + "1.1.2|macos_arm64|39e28f49a753c99b5e2cb30ac8146fb6b48da319c9db9d152b1e8a05ec9d4a13|19240921", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.1|macos_x86_64|85fa7c90359c4e3358f78e58f35897b3e466d00c0d0648820830cac5a07609c3|20094218", + "1.1.1|macos_arm64|9cd8faf29095c57e30f04f9ca5fa9105f6717b277c65061a46f74f22f0f5907e|19240711", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.0|macos_x86_64|6fb2af160879d807291980642efa93cc9a97ddf662b17cc3753065c974a5296d|20089311", + "1.1.0|macos_arm64|f69e0613f09c21d44ce2131b20e8b97909f3fc7aa90c443639475f5e474a22ec|19240009", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.0.11|macos_x86_64|92f2e7eebb9699e23800f8accd519775a02bd25fe79e1fe4530eca123f178202|19340098", + "1.0.11|macos_arm64|0f38af81641b00a2cbb8d25015d917887a7b62792c74c28d59e40e56ce6f265c|18498208", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.10|macos_x86_64|e7595530a0dcdaec757621cbd9f931926fd904b1a1e5206bf2c9db6b73cee04d|33021017", + "1.0.10|macos_arm64|eecea1343888e2648d5f7ea25a29494fd3b5ecde95d0231024414458c59cb184|32073869", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.9|macos_x86_64|fb791c3efa323c5f0c2c36d14b9230deb1dc37f096a8159e718e8a9efa49a879|33017665", + "1.0.9|macos_arm64|aa5cc13903be35236a60d116f593e519534bcabbb2cf91b69cae19307a17b3c0|32069384", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.8|macos_x86_64|e2493c7ae12597d4a1e6437f6805b0a8bcaf01fc4e991d1f52f2773af3317342|33018420", + "1.0.8|macos_arm64|9f0e1366484748ecbd87c8ef69cc4d3d79296b0e2c1a108bcbbff985dbb92de8|32068918", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|macos_arm64|cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.6|macos_x86_64|3a97f2fffb75ac47a320d1595e20947afc8324571a784f1bd50bd91e26d5648c|33022053", + "1.0.6|macos_arm64|aaff1eccaf4099da22fe3c6b662011f8295dad9c94a35e1557b92844610f91f3|32080428", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.2.6|macos_x86_64|94d1efad05a06c879b9c1afc8a6f7acb2532d33864225605fc766ecdd58d9888|21328767", + "1.2.6|macos_arm64|452675f91cfe955a95708697a739d9b114c39ff566da7d9b31489064ceaaf66a|19774190", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.5|macos_x86_64|d196f94486e54407524a0efbcb5756b197b763863ead2e145f86dd6c80fc9ce8|21323818", + "1.2.5|macos_arm64|77dd998d26e578aa22de557dc142672307807c88e3a4da65d8442de61479899f|19767100", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.4|macos_x86_64|3e04343620fb01b8be01c8689dcb018b8823d8d7b070346086d7df22cc4cd5e6|21321939", + "1.2.4|macos_arm64|e596dcdfe55b2070a55fcb271873e86d1af7f6b624ffad4837ccef119fdac97a|19765021", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.3|macos_x86_64|2962b0ebdf6f431b8fb182ffc1d8b582b73945db0c3ab99230ffc360d9e297a2|21318448", + "1.2.3|macos_arm64|601962205ad3dcf9b1b75f758589890a07854506cbd08ca2fc25afbf373bff53|19757696", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.2|macos_x86_64|bd224d57718ed2b6e5e3b55383878d4b122c6dc058d65625605cef1ace9dcb25|21317982", + "1.2.2|macos_arm64|4750d46e47345809a0baa3c330771c8c8a227b77bec4caa7451422a21acefae5|19758608", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.1|macos_x86_64|d7c9a677efb22276afdd6c7703cbfee87d509a31acb247b96aa550a35154400a|21309907", + "1.2.1|macos_arm64|96e3659e89bfb50f70d1bb8660452ec433019d00a862d2291817c831305d85ea|19751670", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.0|macos_x86_64|f608b1fee818988d89a16b7d1b6d22b37cc98892608c52c22661ca6cbfc3d216|21309982", + "1.2.0|macos_arm64|d4df7307bad8c13e443493c53898a7060f77d661bfdf06215b61b65621ed53e9|19750767", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.1.9|macos_x86_64|c902b3c12042ac1d950637c2dd72ff19139519658f69290b310f1a5924586286|20709155", + "1.1.9|macos_arm64|918a8684da5a5529285135f14b09766bd4eb0e8c6612a4db7c121174b4831739|19835808", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.8|macos_x86_64|29ad0af72d498a76bbc51cc5cb09a6d6d0e5673cbbab6ef7aca57e3c3e780f46|20216382", + "1.1.8|macos_arm64|d6fefdc27396a019da56cce26f7eeea3d6986714cbdd488ff6a424f4bca40de8|19371647", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.7|macos_x86_64|5e7e939e084ae29af7fd86b00a618433d905477c52add2d4ea8770692acbceac|20213394", + "1.1.7|macos_arm64|a36b6e2810f81a404c11005942b69c3d1d9baa8dd07de6b1f84e87a67eedb58f|19371095", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.6|macos_x86_64|bbfc916117e45788661c066ec39a0727f64c7557bf6ce9f486bbd97c16841975|20168574", + "1.1.6|macos_arm64|dddb11195fc413653b98e7a830ec7314f297e6c22575fc878f4ee2287a25b4f5|19326402", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.5|macos_x86_64|7d4dbd76329c25869e407706fed01213beb9d6235c26e01c795a141c2065d053|20157551", + "1.1.5|macos_arm64|723363af9524c0897e9a7d871d27f0d96f6aafd11990df7e6348f5b45d2dbe2c|19328643", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.4|macos_x86_64|c2b2500835d2eb9d614f50f6f74c08781f0fee803699279b3eb0188b656427f2|20098620", + "1.1.4|macos_arm64|a753e6cf402beddc4043a3968ff3e790cf50cc526827cda83a0f442a893f2235|19248286", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.3|macos_x86_64|c54022e514a97e9b96dae24a3308227d034989ecbafb65e3293eea91f2d5edfb|20098660", + "1.1.3|macos_arm64|856e435da081d0a214c47a4eb09b1842f35eaa55e7ef0f9fa715d4816981d640|19244516", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.2|macos_x86_64|214da2e97f95389ba7557b8fcb11fe05a23d877e0fd67cd97fcbc160560078f1|20098558", + "1.1.2|macos_arm64|39e28f49a753c99b5e2cb30ac8146fb6b48da319c9db9d152b1e8a05ec9d4a13|19240921", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.1|macos_x86_64|85fa7c90359c4e3358f78e58f35897b3e466d00c0d0648820830cac5a07609c3|20094218", + "1.1.1|macos_arm64|9cd8faf29095c57e30f04f9ca5fa9105f6717b277c65061a46f74f22f0f5907e|19240711", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.0|macos_x86_64|6fb2af160879d807291980642efa93cc9a97ddf662b17cc3753065c974a5296d|20089311", + "1.1.0|macos_arm64|f69e0613f09c21d44ce2131b20e8b97909f3fc7aa90c443639475f5e474a22ec|19240009", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.0.11|macos_x86_64|92f2e7eebb9699e23800f8accd519775a02bd25fe79e1fe4530eca123f178202|19340098", + "1.0.11|macos_arm64|0f38af81641b00a2cbb8d25015d917887a7b62792c74c28d59e40e56ce6f265c|18498208", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.10|macos_x86_64|e7595530a0dcdaec757621cbd9f931926fd904b1a1e5206bf2c9db6b73cee04d|33021017", + "1.0.10|macos_arm64|eecea1343888e2648d5f7ea25a29494fd3b5ecde95d0231024414458c59cb184|32073869", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.9|macos_x86_64|fb791c3efa323c5f0c2c36d14b9230deb1dc37f096a8159e718e8a9efa49a879|33017665", + "1.0.9|macos_arm64|aa5cc13903be35236a60d116f593e519534bcabbb2cf91b69cae19307a17b3c0|32069384", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.8|macos_x86_64|e2493c7ae12597d4a1e6437f6805b0a8bcaf01fc4e991d1f52f2773af3317342|33018420", + "1.0.8|macos_arm64|9f0e1366484748ecbd87c8ef69cc4d3d79296b0e2c1a108bcbbff985dbb92de8|32068918", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|macos_arm64|cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.6|macos_x86_64|3a97f2fffb75ac47a320d1595e20947afc8324571a784f1bd50bd91e26d5648c|33022053", + "1.0.6|macos_arm64|aaff1eccaf4099da22fe3c6b662011f8295dad9c94a35e1557b92844610f91f3|32080428", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]download-terraform-tailor" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]experimental-bsp-server" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--server", + "--no-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": [ + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-runner-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runner-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-groups-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--groups-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-bsp" + }, + "experimental-deploy": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Perform a deployment process.", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-deploy" + }, + "experimental-explorer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-address=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-port=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run the Pants Explorer Web UI server.", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-explorer" + }, + "export": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.backend.docker", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.9.2,<4.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.9.2,<4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/lint/flake8/flake8.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=flake8`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add 'build-support/flake8' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.14/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n ```\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n ```\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[flake8].extra_requirements`.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Flake8 plugins such as 'flake8-plugins' so that the third-party requirements used by your plugin, like `flake8`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "If true, don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-export" + ], + "env_var": "PANTS_FLAKE8_EXPORT", + "help": "If true, export a virtual environment with Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-export", + "--no-flake8-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.flake8", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-batch-size=" + ], + "env_var": "PANTS_FMT_BATCH_SIZE", + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FMT_ONLY", + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from the option `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for Python third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "go-test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{import_path_escaped}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-output-dir=" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "help": "Path to write the Go coverage reports to. Must be relative to the build root. `{distdir}` is replaced with the Pants `distdir`, and `{import_path_escaped}` is replaced with the applicable package's import path but with slashes converted to underscores.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--coverage-output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{import_path_escaped}" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": [ + "set", + "count", + "atomic" + ], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-cover-mode=" + ], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via --test-use-coverage. Valid values are `set`, `count`, and `atomic`:\n\n* `set`: bool: does this statement run?\n\n* `count`: int: how many times does this statement run?\n\n* `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cover-mode" + ], + "typ": "GoCoverMode", + "unscoped_cmd_line_args": [ + "--cover-mode" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "help": "If true, don't use gofmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-go-mod-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-package-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-binary-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-tool-name=" + ], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-tool-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-tool-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-bin-relpath=" + ], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-bin-relpath" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-bin-relpath" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n * ``, the contents of the PATH environment variable\n * ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n * ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-minimum-expected-version=" + ], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-minimum-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--minimum-expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "help": "If true, don't use Google Java Format when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "help": "If true, don't use Hadolint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-version=" + ], + "env_var": "PANTS_HELM_VERSION", + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-template=" + ], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-tailor" + ], + "env_var": "PANTS_HELM_TAILOR", + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor", + "--no-helm-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-lint-strict" + ], + "env_var": "PANTS_HELM_LINT_STRICT", + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-strict", + "--no-lint-strict" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-default-registry-repository=" + ], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-default-registry-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-registry-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as folows:\n\n * --atomic\n * --cleanup-on-fail\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n\nBefore attempting to use passthrough arguments, check the refence of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "helm-k8s-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-version=", + "config_key": "version", + "default": "hikaru==0.11.0b", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-version=" + ], + "env_var": "PANTS_HELM_K8S_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "hikaru==0.11.0b" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-lockfile=" + ], + "env_var": "PANTS_HELM_K8S_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/helm/subsystems/k8s_parser.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=helm-k8s-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Analyses K8S manifests rendered by Helm.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-k8s-parser" + }, + "helm-post-renderer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-version=", + "config_key": "version", + "default": "yamlpath>=3.6,<3.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-version=" + ], + "env_var": "PANTS_HELM_POST_RENDERER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamlpath>=3.6,<3.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "ruamel.yaml>=0.15.96,!=0.17.0,!=0.17.1,!=0.17.2,!=0.17.5,<=0.17.21" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "ruamel.yaml>=0.15.96,!=0.17.0,!=0.17.1,!=0.17.2,!=0.17.5,<=0.17.21" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-lockfile=" + ], + "env_var": "PANTS_HELM_POST_RENDERER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/helm/subsystems/post_renderer.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=helm-post-renderer`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-post-renderer" + }, + "helm-unittest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.2.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.2.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-template=" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-unittest-color" + ], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--color", + "--no-color" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "XUnit", + "NUnit", + "JUnit" + ], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-output-type" + ], + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": [ + "--output-type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-unittest" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython>=7.34,<8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython>=7.34,<8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/subsystems/ipython.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=ipython`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/lint/isort/isort.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=isort`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "If true, don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-export" + ], + "env_var": "PANTS_ISORT_EXPORT", + "help": "If true, export a virtual environment with isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-export", + "--no-isort-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]javac-tailor-source-targets" + ], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-tool-jdk=" + ], + "env_var": "PANTS_JVM_TOOL_JDK", + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-tool-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--tool-jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-global-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-global-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--global-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]jvm-reproducible-jars" + ], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-nailgun-remote-cache-speculation-delay=" + ], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-nailgun-remote-cache-speculation-delay" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--nailgun-remote-cache-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like ['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "kotlin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-tailor-source-targets" + ], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-version-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin" + }, + "kotlin-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-imports" + ], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-consumed-types" + ], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Kotlin targets.", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin-infer" + }, + "kotlinc": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-plugins-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlinc" + }, + "ktlint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-version=" + ], + "env_var": "PANTS_KTLINT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.pinterest:ktlint:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.pinterest:ktlint:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-lockfile=" + ], + "env_var": "PANTS_KTLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ktlint-skip" + ], + "env_var": "PANTS_KTLINT_SKIP", + "help": "If true, don't use Ktlint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-skip", + "--no-ktlint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "scope": "ktlint" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/subsystems/lambdex.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=lambdex`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "provider": "pants.backend.awslambda.python", + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-batch-size=" + ], + "env_var": "PANTS_LINT_BATCH_SIZE", + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n1. to avoid OS argument length limits (in processes which don't support argument files)\n2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-batch-size" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_LINT_ONLY", + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-only" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-formatters" + ], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt lint ::`, there should be little performance benefit to using this flag. Pants will reuse the results from `fmt` when running `lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.961", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.961" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/typecheck/mypy/mypy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`. Tip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your MyPy plugins such as 'mypy-plugins' so that the third-party requirements used by your plugin, like `mypy`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement` target. Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.\n\nWe recommend also enabling `[mypy].extra_type_stubs_lockfile` for a more reproducible build and less supply-chain security risk.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs-lockfile=", + "config_key": "extra_type_stubs_lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs-lockfile=" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS_LOCKFILE", + "help": "Path to a lockfile for the option `[mypy].extra_type_stubs`.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this if you use `[mypy].extra_type_stubs`, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-extra-type-stubs`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--extra-type-stubs-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "If true, don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-export" + ], + "env_var": "PANTS_MYPY_EXPORT", + "help": "If true, export a virtual environment with MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-export", + "--no-mypy-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python.typecheck.mypy", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "protobuf<3.21" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "protobuf<3.21" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-protobuf`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FROM", + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.108", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-version=" + ], + "env_var": "PANTS_PEX_CLI_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.108,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.108" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.108|macos_arm64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|macos_x86_64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|linux_x86_64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|linux_arm64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.108|macos_arm64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|macos_x86_64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|linux_x86_64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678", + "v2.1.108|linux_arm64|21d7803ef39203a6b2ae9f9e2678636e3c38ba17226ea33d6305f0683ab72e84|3848678" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.108,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-template=" + ], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "poetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-version=", + "config_key": "version", + "default": "poetry==1.1.14", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-version=" + ], + "env_var": "PANTS_POETRY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "poetry==1.1.14" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-lockfile=" + ], + "env_var": "PANTS_POETRY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/subsystems/poetry.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=poetry`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to generate lockfiles for third-party Python dependencies (deprecated).", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "poetry" + }, + "protobuf-java-grpc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-version=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-lockfile=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.java", + "scope": "protobuf-java-grpc" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-tailor" + ], + "env_var": "PANTS_PROTOC_TAILOR", + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-tailor", + "--no-protoc-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.13.0,<2.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.13.0,<2.15" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/lint/pylint/pylint.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pylint`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.14/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Pylint plugins such as 'pylint-plugins' so that the third-party requirements used by your plugin, like `pylint`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "If true, don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-export" + ], + "env_var": "PANTS_PYLINT_EXPORT", + "help": "If true, export a virtual environment with Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-export", + "--no-pylint-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pylint", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-version=", + "config_key": "version", + "default": "pyoxidizer==0.18.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-version=" + ], + "env_var": "PANTS_PYOXIDIZER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer==0.18.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.8,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.8,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-lockfile=" + ], + "env_var": "PANTS_PYOXIDIZER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/packaging/pyoxidizer/pyoxidizer.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pyoxidizer`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-console-script=" + ], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-entry-point=" + ], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest==7.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest==7.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1", + "pytest-xdist>=2.5,<3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1", + "pytest-xdist>=2.5,<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/subsystems/pytest.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pytest`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-config=" + ], + "env_var": "PANTS_PYTEST_CONFIG", + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-xdist-enabled" + ], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--xdist-enabled", + "--no-xdist-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-export" + ], + "env_var": "PANTS_PYTEST_EXPORT", + "help": "If true, export a virtual environment with Pytest when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-export", + "--no-pytest-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": "Use `timeouts` option in the `test` scope instead.", + "removal_version": "2.15.0.dev1", + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": "Use `timeout_default` option in the `test` scope instead.", + "removal_version": "2.15.0.dev1", + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": "Use `timeout_maximum` option in the `test` scope instead.", + "removal_version": "2.15.0.dev1", + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.14/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-resolves" + ], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nWarning: the `generate-lockfiles` goal does not yet work if you have local requirements, regardless of using Pex vs. Poetry for the lockfile generator. Support is coming in a future Pants release. In the meantime, the workaround is to host the files in a custom repository with `[python-repos]` (https://www.pantsbuild.org/v2.14/docs/python-third-party-dependencies#custom-repositories).\n\nYou may also run into issues generating lockfiles when using Poetry as the generator, rather than Pex. See the option `[python].lockfile_generator` for more information.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.14/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-default-resolve=" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python.interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use ['==3.9.*'] via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to ['==3.7.*'], then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`. To change the interpreter constraints for tool lockfiles, change `[tool].interpreter_constraints`, e.g. `[black].interpreter_constraints`; if the tool does not have that option, it determines its interpreter constraints from your user code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nNote: Only takes effect if you use Pex lockfiles. Use the default `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-constraints-file" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-constraints-file" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve's value, you can use the value `:all:` to disable all binary packages.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.\n\nNote: Only takes effect if you use Pex lockfiles. Use the default `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-no-binary" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-no-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve's value, you can use the value `:all:` to disable all source packages.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.\n\nNote: Only takes effect if you use Pex lockfiles. Use the default `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-only-binary" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-only-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolves-generate-lockfiles" + ], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile changes, rather than just those that depend on the changed requirement. 2) Requirements unneeded by a test/run/repl will be present on the sys.path, which might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-source-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-empty-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-default-run-goal-use-sandbox" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": [ + "pex", + "poetry" + ], + "comma_separated_choices": "pex, poetry", + "comma_separated_display_args": "--python-lockfile-generator=", + "config_key": "lockfile_generator", + "default": "pex", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-lockfile-generator=" + ], + "env_var": "PANTS_PYTHON_LOCKFILE_GENERATOR", + "help": "Whether to use Pex or Poetry with the `generate-lockfiles` goal.\n\nPoetry does not support these features:\n\n 1) `[python-repos]` for custom indexes/cheeseshops.\n 2) VCS (Git) requirements.\n 3) `[GLOBAL].ca_certs_path`.\n\nIf you use any of these features, you should use Pex.\n\nSeveral users have also had issues with how Poetry's lockfile generation handles environment markers for transitive dependencies; certain dependencies end up with nonsensical environment markers which cause the dependency to not be installed, then for Pants/Pex to complain the dependency is missing, even though it's in the lockfile. There is a workaround: for `[python].resolves`, manually create a `python_requirement` target for the problematic transitive dependencies so that they are seen as direct requirements, rather than transitive. For tool lockfiles, add the problematic transitive dependency to `[tool].extra_requirements`, e.g. `[isort].extra_requirements`. Then, regenerate the lockfile(s) with the `generate-lockfiles` goal. Alternatively, use Pex for generation.\n\nFinally, installing from a Poetry-generated lockfile is slower than installing from a Pex lockfile. When using a Pex lockfile, Pants will only install the subset needed for the current task.\n\nHowever, Pex lockfile generation is a new feature. Given how vast the Python packaging ecosystem is, it is possible you may experience edge cases / bugs we haven't yet covered. Bug reports are appreciated! https://github.com/pantsbuild/pants/issues/new/choose\n\nNote that while Pex generates locks in a proprietary JSON format, you can use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export` goal for Pants to create a virtual environment for interoperability with tools like IDEs.", + "removal_hint": "Pants will soon only support generating lockfiles via the Pex format, as Poetry-generated lockfiles mismatch with Pants's pip-based approach.\n\nIf you do not want to use Pex lockfiles, you will still be able to manually generate lockfiles, e.g. by manually running `poetry export --dev` on your `poetry.lock`. See https://www.pantsbuild.org/v2.14/docs/python-third-party-dependencies#manually-generating-lockfiles for more information.\n\nWhile Pex generates locks in a proprietary JSON format, you can use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export` goal for Pants to create a virtual environment for interoperability with tools like IDEs.\n\nPlease open a GitHub issue or reach out on Slack if you encounter issues while migrating: https://www.pantsbuild.org/v2.14/docs/getting-help\n\nTip: you can incrementally migrate one lockfile at-a-time by dynamically setting the option `--python-lockfile-generator`. For example:\n\n /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --python-lockfile-generator=pex generate-lockfiles --resolve=black --resolve=isort\n /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --python-lockfile-generator=poetry generate-lockfiles --resolve=python-default", + "removal_version": "2.15.0.dev0", + "scoped_cmd_line_args": [ + "--python-lockfile-generator" + ], + "typ": "LockfileGenerator", + "unscoped_cmd_line_args": [ + "--lockfile-generator" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-no-binary=\"['', '', ...]\"", + "config_key": "no_binary", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-no-binary=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NO_BINARY", + "help": "Do not use binary packages (i.e., wheels) for these 3rdparty projects.\n\nAlso accepts `:all:` to disable all binary packages.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.\n\nNote: Only takes effect if you use Pex lockfiles. Use the default `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": "Use `[python].resolves_to_no_binary`, which allows you to set `--no-binary` on a per-resolve basis for more flexibility. To keep this option's behavior, set `[python].resolves_to_no_binary` with the key `__default__` and the value you used on this option.", + "removal_version": "2.15.0.dev0", + "scoped_cmd_line_args": [ + "--python-no-binary" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--no-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-only-binary=\"['', '', ...]\"", + "config_key": "only_binary", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-only-binary=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_ONLY_BINARY", + "help": "Do not use source packages (i.e., sdists) for these 3rdparty projects.\n\nAlso accepts `:all:` to disable all source packages.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.\n\nNote: Only takes effect if you use Pex lockfiles. Use the default `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": "Use `[python].resolves_to_only_binary`, which allows you to set `--only-binary` on a per-resolve basis for more flexibility. To keep this option's behavior, set `[python].resolves_to_only_binary` with the key `__default__` and the value you used on this option.", + "removal_version": "2.15.0.dev0", + "scoped_cmd_line_args": [ + "--python-only-binary" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--only-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.15.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]python-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "If true, don't add `python_sources` targets for solitary `__init__.py` files with the `tailor` goal.\n\nSolitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nSet to false if you commonly have packages containing real code in `__init__.py` without other `.py` files in the package.", + "removal_hint": "Use `[python].tailor_ignore_empty_init_files`, which checks that the `__init__.py`file is both solitary and also empty.", + "removal_version": "2.15.0.dev0", + "scoped_cmd_line_args": [ + "--python-tailor-ignore-solitary-init-files", + "--no-python-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "help": "A list of paths to search for Python interpreters.\n\nWhich interpeters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n * ``, the contents of the PATH env var\n * ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n * ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n * ``, all Python versions under $(pyenv root)/versions\n * ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n * ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-assets" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--assets", + "--no-assets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-assets-min-slashes=" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "help": "If --assets is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets-min-slashes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--assets-min-slashes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": [ + "always", + "content_only", + "never" + ], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-init-files=" + ], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-init-files" + ], + "typ": "InitFilesInference", + "unscoped_cmd_line_args": [ + "--init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.14/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what WHEELS_DIR points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.14/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.14/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.14/docs/options#pantsrc-file.\n\nNote: Only takes effect if you use Pex lockfiles. Use the default `[python].lockfile_generator = \"pex\"` and run the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-path-mappings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--path-mappings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-find-links=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-find-links" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--find-links" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-thrift-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.33.0,<2.35", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-version=" + ], + "env_var": "PANTS_PYUPGRADE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.33.0,<2.35" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-lockfile=" + ], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/lint/pyupgrade/pyupgrade.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pyupgrade`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "help": "If true, don't use pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-export" + ], + "env_var": "PANTS_PYUPGRADE_EXPORT", + "help": "If true, export a virtual environment with pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-export", + "--no-pyupgrade-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-detail-level=" + ], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-cleanup", + "config_key": "cleanup", + "default": true, + "deprecated_message": "Upcoming deprecation in version: 2.15.0.dev1, is scheduled to be removed in version: 2.16.0.dev1.", + "deprecation_active": false, + "display_args": [ + "--[no-]run-cleanup" + ], + "env_var": "PANTS_RUN_CLEANUP", + "help": "Whether to clean up the temporary directory in which the binary is chrooted. Set this to false to retain the directory, e.g., for debugging.\n\nNote that setting the global --keep-sandboxes option may also conserve this directory, along with those of all other processes that Pants executes. This option is more selective and controls just the target binary's directory.", + "removal_hint": "Use the global `keep_sandboxes` option instead.", + "removal_version": "2.16.0.dev1", + "scoped_cmd_line_args": [ + "--run-cleanup", + "--no-run-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cleanup", + "--no-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-debug-adapter" + ], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-debug-adapter", + "--no-run-debug-adapter" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-tailor-source-targets" + ], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-package-objects" + ], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-objects", + "--no-package-objects" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-force-add-siblings-as-dependencies" + ], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "help": "If true, add a dependency on all scala_source targets generated by the same scala_sources target generator. If false, the dependencies will only be added if [scala-infer].imports is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-for-resolve" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "help": "If true, don't use scalafmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-version=" + ], + "env_var": "PANTS_SCALAPB_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-lockfile=" + ], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set --scalapb-runtime-dependencies appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-jvm-options" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=63.1.0,<64.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=63.1.0,<64.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/subsystems/setuptools.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "setuptools-scm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-version=", + "config_key": "version", + "default": "setuptools-scm==6.4.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-version=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools-scm==6.4.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/subsystems/setuptools_scm.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools-scm`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-console-script=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "setuptools-scm" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-path=\"[, , ...]\"", + "config_key": "executable_search_path", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATH", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-path" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-tailor" + ], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "If true, don't use Shellcheck when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.14/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "If true, don't use shfmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.14/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-memory-summary" + ], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--memory-summary", + "--no-memory-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.14/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.14/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-fmt-skip" + ], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "help": "If true, don't use `terraform fmt` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-version=", + "config_key": "version", + "default": "python-hcl2==3.0.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-version=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-hcl2==3.0.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-lockfile=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/terraform/hcl2.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=terraform-hcl2-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-validate-skip" + ], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "help": "If true, don't use `terraform validate` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-report" + ], + "env_var": "PANTS_TEST_REPORT", + "help": "Write test reports to --report-dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report", + "--no-test-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--report", + "--no-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-report-dir=" + ], + "env_var": "PANTS_TEST_REPORT_DIR", + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--report-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-default=" + ], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-maximum=" + ], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug-adapter" + ], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies --debug.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-shard=" + ], + "env_var": "PANTS_TEST_SHARD", + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with --shard=0/3, --shard=1/3, --shard=2/3.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-shard" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shard" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-timeouts" + ], + "env_var": "PANTS_TEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeouts", + "--no-test-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-tailor" + ], + "env_var": "PANTS_THRIFT_TAILOR", + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-tailor", + "--no-thrift-tailor" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-dependency-inference" + ], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine>=3.7.1,<3.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-version=" + ], + "env_var": "PANTS_TWINE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine>=3.7.1,<3.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "colorama>=0.4.3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "colorama>=0.4.3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-lockfile=" + ], + "env_var": "PANTS_TWINE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/subsystems/twine.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=twine`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use the default CA certificate.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "help": "If true, don't use Twine when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "yapf", + "black" + ], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--update-build-files-formatter=" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-formatter" + ], + "typ": "Formatter", + "unscoped_cmd_line_args": [ + "--formatter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.14/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf==0.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf==0.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.14.2/src/python/pants/backend/python/lint/yapf/yapf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=yapf`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "help": "If true, don't use yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-export", + "config_key": "export", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-export" + ], + "env_var": "PANTS_YAPF_EXPORT", + "help": "If true, export a virtual environment with yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-export", + "--no-yapf-export" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.15.x/reference/help-all.json b/versioned_docs/version-2.15.x/reference/help-all.json new file mode 100644 index 000000000..535cd42f1 --- /dev/null +++ b/versioned_docs/version-2.15.x/reference/help-all.json @@ -0,0 +1,70855 @@ +{ + "name_to_api_type_info": { + "abc.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "abc", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "builtins.AddPrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "AddPrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.shell_command.run_shell_command", + "pants.core.goals.export.export", + "pants.core.target_types.relocate_files", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "builtins.Digest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.go.goals.generate", + "pants.backend.helm.resolve.fetch", + "pants.backend.helm.util_rules.chart_metadata", + "pants.engine.fs", + "pants.jvm.strip_jar.strip_jar" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "Digest", + "provider": "builtins, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.core.util_rules.archive.create_archive", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_analysis.generate_import_config", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.generate_setup_py", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "builtins.FileDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.util_rules" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "FileDigest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "builtins.MergeDigests": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "MergeDigests", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.source_files.determine_source_files", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "builtins.RemovePrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "RemovePrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "PythonAwsLambdaFieldSet(address: 'Address', handler: 'PythonAwsLambdaHandlerField', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PexCompletePlatformsField', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.target_types.InferPythonLambdaHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "InferPythonLambdaHandlerDependency", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.target_types.ResolvePythonAwsHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "ResolvePythonAwsHandlerRequest(field: pants.backend.awslambda.python.target_types.PythonAwsLambdaHandlerField)", + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "ResolvePythonAwsHandlerRequest", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency" + ] + }, + "pants.backend.awslambda.python.target_types.ResolvedPythonAwsHandler": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "ResolvedPythonAwsHandler(val: str, file_name_used: bool)", + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency" + ] + }, + "pants.backend.build_files.fix.deprecations.base.FixedBUILDFile": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.build_files.fix.deprecations" + ], + "dependents": [ + "pants.core" + ], + "documentation": "FixedBUILDFile(path: 'str', content: 'bytes')", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.base", + "name": "FixedBUILDFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenamedFieldTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenamedFieldTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Deprecated target type names to new names.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFileRequest", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.subsystem.BUILDDeprecationsFixer": { + "consumed_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fix.deprecations" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.subsystem", + "name": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [ + "construct_scope_build_deprecations_fixer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.black.register.BlackRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.black.register", + "name": "BlackRequest", + "provider": "pants.backend.build_files.fmt.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.rules.BuildifierRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.rules", + "name": "BuildifierRequest", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.subsystem.Buildifier": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.subsystem", + "name": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [ + "construct_scope_buildifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.yapf.register.YapfRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.yapf.register", + "name": "YapfRequest", + "provider": "pants.backend.build_files.fmt.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegen": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegen", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegenSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegenSubsystem", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GenerateGoFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GenerateGoFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GoCodegenBuildProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg_target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GoCodegenBuildProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoCodegenBuildRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.ProtobufGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets" + ], + "dependencies": [ + "pants.backend.go.dependency_inference" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "ProtobufGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtobufPackageBuildRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": "Request type used to trigger setup of a BuildGoPackageRequest for entire generated Go\nProtobuf package.\n\nThis type is separate so that a build of the full package can be cached no matter which one of\nits component source files was requested. This occurs because a request to build any one of the\nsource files will be converted into this type and then built.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtobufPackageBuildRequest", + "provider": "pants.backend.codegen.protobuf.go.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtocPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": "_SetupGoProtocPlugin(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.InferProtobufJavaRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "InferProtobufJavaRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaGrpcRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaGrpcRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.rules.GenerateJavaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GenerateJavaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.rules.GrpcJavaToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GrpcJavaToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.java.rules, pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ] + }, + "pants.backend.codegen.protobuf.java.rules.ProtobufJavaGrpcPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaGrpcPlugin(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.subsystem.JavaProtobufGrpcSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.subsystem", + "name": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "construct_scope_protobuf_java_grpc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.BufFormatRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.format_rules", + "name": "BufFormatRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.BufLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.lint_rules", + "name": "BufLintRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufFormatField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufFormatField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufLintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufLintField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.subsystem.BufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.subsystem", + "name": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [ + "construct_scope_buf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.InferProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "InferProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.ProtobufMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": "A mapping of stripped .proto file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protoc.Protoc": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protoc", + "name": "Protoc", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_protoc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonInterpreterConstraintsField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonInterpreterConstraintsField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonResolveField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.PythonSourceRootField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "PythonSourceRootField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.grpc_python_plugin.GrpcPythonPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.grpc_python_plugin", + "name": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_grpc_python_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.PythonProtobufMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper", + "name": "PythonProtobufMappingMarker", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.InferPythonProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "InferPythonProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.MypyProtobufLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "MypyProtobufLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufMypyPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_mypy_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_python_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.rules.GeneratePythonFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.rules", + "name": "GeneratePythonFromProtobufRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.InferScalaPBRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "InferScalaPBRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.dependency_inference", + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "ScalaPBRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "ScalaPBRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.scala.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.GenerateScalaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "GenerateScalaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializeJvmPluginRequest(plugin: 'PluginArtifactSpec')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializeJvmPluginsRequest(plugins: 'tuple[PluginArtifactSpec, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginsRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.java", + "pants.jvm.resolve.common" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalaPBShimCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalapbcToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalapbcToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.scala.rules, pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ] + }, + "pants.backend.codegen.protobuf.scala.subsystem.ScalaPBSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.subsystem", + "name": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "construct_scope_scalapb" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.tailor.PutativeProtobufTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": "PutativeProtobufTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.tailor", + "name": "PutativeProtobufTargetsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.AllProtobufTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.additional_fields.ThriftPythonResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.additional_fields", + "name": "ThriftPythonResolveField", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.PythonThriftMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper", + "name": "PythonThriftMappingMarker", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.GeneratePythonFromThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "GeneratePythonFromThriftRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.InferApacheThriftPythonDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "InferApacheThriftPythonDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.subsystem.ThriftPythonSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.subsystem", + "name": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_python_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.ApacheThriftSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "ApacheThriftSetup(path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.GenerateThriftSourcesRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "GenerateThriftSourcesRequest(thrift_source_field: 'ThriftSourceField', lang_id: 'str', lang_options: 'tuple[str, ...]', lang_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GenerateThriftSourcesRequest", + "provider": "pants.backend.codegen.thrift.apache.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.rules.GeneratedThriftSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.thrift.apache.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "GeneratedThriftSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.subsystem.ApacheThriftSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_apache_thrift", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.subsystem", + "name": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_apache_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.InferThriftDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "InferThriftDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.ThriftMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "A mapping of stripped .thrift file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.subsystem.ThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.subsystem", + "name": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.tailor.PutativeThriftTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "PutativeThriftTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.tailor", + "name": "PutativeThriftTargetsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.AllThriftTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThrift": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.thrift.thrift_parser", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "ParsedThriftRequest(sources_field: 'ThriftSourceField')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThriftRequest", + "provider": "pants.backend.codegen.thrift.thrift_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.docker.goals.package_image.DockerFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerFieldSet(address: 'Address', context_root: 'DockerImageContextRootField', registries: 'DockerImageRegistriesField', repository: 'DockerImageRepositoryField', source: 'DockerImageSourceField', tags: 'DockerImageTagsField', target_stage: 'DockerImageTargetStageField')", + "is_union": false, + "module": "pants.backend.docker.goals.package_image", + "name": "DockerFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "PublishDockerImageFieldSet(address: 'Address', registries: 'DockerImageRegistriesField', skip_push: 'DockerImageSkipPushField')", + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.docker.goals.tailor.PutativeDockerTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "PutativeDockerTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.goals.tailor", + "name": "PutativeDockerTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.rules.HadolintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.rules", + "name": "HadolintRequest", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.skip_field.SkipHadolintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.skip_field", + "name": "SkipHadolintField", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.subsystem.Hadolint": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker.lint.hadolint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.subsystem", + "name": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [ + "construct_scope_hadolint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.DockerOptions": { + "consumed_by_rules": [ + "construct_env_aware_scope_docker", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "DockerOptions", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.docker.lint.hadolint" + ], + "documentation": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', build_args: 'DockerBuildArgs' = DockerBuildArgs(), copy_source_paths: 'tuple[str, ...]' = (), from_image_build_args: 'DockerBuildArgs' = DockerBuildArgs(), version_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfo", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfoRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerfileInfoRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfoRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParseRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerfileParseRequest(sources_digest: 'Digest', args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParseRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParser": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParser", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_dockerfile_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParserLockfileSentinel", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "ParserSetup", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.AllDockerImageTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.target_types", + "name": "AllDockerImageTargets", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.target_types.all_docker_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.DockerImageTagsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to provide additional image tags.", + "is_union": true, + "module": "pants.backend.docker.target_types", + "name": "DockerImageTagsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.dependencies.InferDockerDependencies": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dependencies", + "name": "InferDockerDependencies", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinary": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "The `docker` binary.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinary", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_binary.get_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.find_docker" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBinaryRequest()", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinaryRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgs", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildArgsRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContext": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm" + ], + "documentation": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', upstream_image_ids: 'tuple[str, ...]', dockerfile: 'str', interpolation_context: 'InterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContext", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContextRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildContextRequest(address: 'Address', build_upstream_images: 'bool' = False)", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContextRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.GenerateDockerContextFiles": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "This translates all files from acceptable Source fields for the docker context using the\n`codegen` machinery.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "GenerateDockerContextFiles", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildEnvironment(environment: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironment", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildEnvironmentRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironmentRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.dockerfile.GenerateDockerfileRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dockerfile", + "name": "GenerateDockerfileRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.AllGoModuleImportPathsMappings": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.target_type_rules" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Maps import paths (as strings) to one or more addresses of targets providing those import\npath(s) for a single Go module.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappings": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Import path mappings for all Go modules in the repository.\n\nThis type is requested from plugins which provide implementations for the GoCodegenBuildRequest\nunion and then merged.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappingsHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "An entry point for a specific implementation of mapping Go import paths to owning targets.\n\nAll implementations will be merged together. The core Go dependency inference rules will request\nthe `GoModuleImportPathsMappings` type using implementations of this union.", + "is_union": true, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappingsHook", + "provider": "pants.backend.go.dependency_inference", + "returned_by_rules": [], + "union_members": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "ProtobufGoModuleImportPathsMappingsHook" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.go_sources.load_go_binary", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "LoadedGoBinary(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "LoadedGoBinaryRequest(dir_name: 'str', file_names: 'tuple[str, ...]', output_name: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinaryRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.goals.check.GoCheckRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.check.check_go" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.check", + "name": "GoCheckRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_env_aware_scope_go_generate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoal", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.generate.go_generate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoalSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_go_generate" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_go_generate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.OverwriteMergeDigests": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "OverwriteMergeDigests(orig_digest: 'Digest', new_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "OverwriteMergeDigests", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RunPackageGeneratorsRequest(address: 'Address', regex: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsRequest", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.go_generate" + ] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.generate", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RunPackageGeneratorsResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.go_generate" + ] + }, + "pants.backend.go.goals.package_binary.GoBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBinaryFieldSet(address: 'Address', main: pants.backend.go.target_types.GoBinaryMainPackageField, output_path: pants.core.goals.package.OutputPathField)", + "is_union": false, + "module": "pants.backend.go.goals.package_binary", + "name": "GoBinaryFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FindPutativeGoPackageTargetRequest(dir_path: 'str', files: 'tuple[str, ...]', all_go_mod_dirs: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetRequest", + "provider": "pants.backend.go.goals.tailor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.goals.tailor", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FindPutativeGoPackageTargetResult(putative_target: 'PutativeTarget | None')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.PutativeGoTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "PutativeGoTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "PutativeGoTargetsRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.GoTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "GoTestFieldSet(address: 'Address', sources: 'GoPackageSourcesField', dependencies: 'Dependencies', timeout: 'GoTestTimeoutField', extra_env_vars: 'GoTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.GoTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.rules.GofmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.rules", + "name": "GofmtRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.skip_field.SkipGofmtField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.skip_field", + "name": "SkipGofmtField", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.subsystem.GofmtSubsystem": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.subsystem", + "name": "GofmtSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_gofmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_env_aware_scope_golang" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.GolangSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_golang", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "GolangSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_golang" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.gotest.GoTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.gotest", + "name": "GoTestSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_go_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.FirstPartyGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "dependencies": [ + "pants.backend.go.dependency_inference" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "FirstPartyGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GenerateTargetsFromGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GenerateTargetsFromGoModRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GoImportPathMappingRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoImportPathMappingRequest(go_mod_address: 'Address')", + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GoImportPathMappingRequest", + "provider": "pants.backend.go.target_type_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.target_type_rules.InferGoPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InferGoThirdPartyPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoThirdPartyPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_types.GoOwningGoModAddressField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_types", + "name": "GoOwningGoModAddressField", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.assembly.AssemblyPostCompilation": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AssemblyPostCompilation(result: 'FallibleProcessResult', merged_output_digest: 'Digest | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssemblyPostCompilation", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.AssemblyPostCompilationRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Link the assembly_digests into the compilation_result.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssemblyPostCompilationRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.AssemblyPreCompilationRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Add a `symabis` file for consumption by Go compiler and assemble all `.s` files.\n\nSee https://github.com/bazelbuild/rules_go/issues/1893.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssemblyPreCompilationRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleAssemblyPreCompilation": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FallibleAssemblyPreCompilation(result: 'AssemblyPreCompilation | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleAssemblyPreCompilation", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackage": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.binary", + "pants.build_graph.address", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBinaryMainPackage(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBinaryMainPackageRequest(field: 'GoBinaryMainPackageField')", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackageRequest", + "provider": "pants.backend.go.util_rules.binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.InferGoBinaryMainDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "InferGoBinaryMainDependencyRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_pkg.BuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go, pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuiltGoPackage": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.go.rules", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuiltGoPackage": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Fallible version of `BuiltGoPackage` with error details.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoCompileActionIdRequest(build_request: 'BuildGoPackageRequest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoCompileActionIdResult(action_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderEmbedConfigRequest(embed_config: 'EmbedConfig | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderedEmbedConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderedEmbedConfig(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Build a `go_package`, `go_third_party_package`, or Go codegen target and its dependencies as\n`__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageTargetRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.GoCodegenBuildRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": "The plugin hook to build/compile Go code.\n\nNote that you should still use the normal `GenerateSourcesRequest` plugin hook from\n`pants.engine.target` too, which is necessary for integrations like the `export-codegen` goal.\nHowever, that is only helpful to generate the raw `.go` files; you also need to use this\nplugin hook so that Pants knows how to compile those generated `.go` files.\n\nSubclass this and set the class property `generate_from`. Define a rule that goes from your\nsubclass to `BuildGoPackageRequest` - the request must result in valid compilation, which you\nshould test for by using `rule_runner.request(BuiltGoPackage, BuildGoPackageRequest)` in your\ntests. For example, make sure to set up any third-party packages needed by the generated code.\nFinally, register `UnionRule(GoCodegenBuildRequest, MySubclass)`.", + "is_union": true, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "GoCodegenBuildRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [ + "GoCodegenBuildProtobufRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompileRequest(import_path: 'str', pkg_name: 'str', digest: 'Digest', dir_path: 'str', cgo_files: 'tuple[str, ...]', cgo_flags: 'CGoCompilerFlags', c_files: 'tuple[str, ...]' = (), cxx_files: 'tuple[str, ...]' = (), objc_files: 'tuple[str, ...]' = (), fortran_files: 'tuple[str, ...]' = (), s_files: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompileResult(digest: 'Digest', output_go_files: 'tuple[str, ...]', output_obj_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompilerWrapperScript": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.cgo", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompilerWrapperScript(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompilerWrapperScriptRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompilerWrapperScriptRequest()", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompilerWrapperScriptRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsFlagRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckCompilerSupportsFlagRequest(cc: 'str', flag: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsFlagRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsOptionResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckCompilerSupportsOptionResult(supports_flag: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "SetupCompilerCmdRequest(compiler: 'tuple[str, ...]', include_dir: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.cgo" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "SetupCompilerCmdResult(args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo_binaries.CGoBinaryPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoBinaryPathRequest(binary_name: 'str', binary_path_test: 'BinaryPathTest | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_binaries", + "name": "CGoBinaryPathRequest", + "provider": "pants.backend.go.util_rules.cgo_binaries", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Request resolution of pkg-config arguments into CFLAGS and LDFLAGS.", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsRequest", + "provider": "pants.backend.go.util_rules.cgo_pkgconfig", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.cgo_pkgconfig" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoPkgConfigFlagsResult(cflags: 'tuple[str, ...]', ldflags: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Apply code coverage to a package using `go tool cover`.", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ApplyCodeCoverageResult(digest: 'Digest', cover_file_metadatas: 'tuple[FileCodeCoverageMetadata, ...]', go_files: 'tuple[str, ...]', cgo_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ApplyCodeCoverageToFileRequest(digest: 'Digest', go_file: 'str', cover_go_file: 'str', mode: 'GoCoverMode', cover_var: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.coverage" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ApplyCodeCoverageToFileResult(digest: 'Digest', cover_go_file: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GenerateCoverageSetupCodeRequest(packages: 'FrozenOrderedSet[BuiltGoPackageCodeCoverageMetadata]', cover_mode: 'GoCoverMode')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GenerateCoverageSetupCodeResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageProfileToHtmlRequest(raw_coverage_profile: 'bytes', description_of_origin: 'str', sources_digest: 'Digest', sources_dir_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlRequest", + "provider": "pants.backend.go.util_rules.coverage_html", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.coverage_html", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageProfileToHtmlResult(html_output: 'bytes')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_output.GoCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "GoCoverageDataCollection", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageReportRequest(raw_report: 'GoCoverageData')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportRequest", + "provider": "pants.backend.go.util_rules.coverage_output", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.coverage_output", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageReportResult(coverage_report: 'FilesystemCoverageReport', html_report: 'FilesystemCoverageReport | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Metadata for a Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "The source files for a Go package, but fallible if embed preparation failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FirstPartyPkgAnalysisRequest(address: 'Address', extra_build_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgDigestRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FirstPartyPkgDigestRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgDigestRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.first_party_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FirstPartyPkgImportPathRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPathRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.go_bootstrap.GoBootstrap": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBootstrap(go_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_bootstrap", + "name": "GoBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.AllGoModTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "AllGoModTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.GoModInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfo", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.GoModInfoRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoModInfoRequest(source: 'Address | GoModSourcesField')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfoRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "NearestAncestorGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "NearestAncestorGoModResult(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoMod": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.build_graph.address", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "OwningGoMod(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoMod", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "OwningGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.goroot.GoRoot": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Path to the Go installation (the `GOROOT`).", + "is_union": false, + "module": "pants.backend.go.util_rules.goroot", + "name": "GoRoot", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibImports": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.import_analysis.generate_import_config" + ], + "dependencies": [ + "pants.backend.experimental.helm" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A mapping of standard library import paths to the `.a` static file paths for that import\npath.\n\nFor example, \"net/smtp\": \"/absolute_path_to_goroot/pkg/darwin_arm64/net/smtp.a\".", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibImports", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.ImportConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.import_analysis", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "ImportConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.generate_import_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.import_analysis.ImportConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_analysis.generate_import_config" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Create an `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "ImportConfigRequest", + "provider": "pants.backend.go.util_rules.import_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.link.LinkGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Link a Go binary from package archives and an import configuration.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkGoBinaryRequest", + "provider": "pants.backend.go.util_rules.link", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.link.LinkedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.link" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A linked Go binary stored in a `Digest`.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.pkg_analyzer.PackageAnalyzerSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "PackageAnalyzerSetup(digest: Digest, path: str)", + "is_union": false, + "module": "pants.backend.go.util_rules.pkg_analyzer", + "name": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkProcess": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkProcess(command: 'Iterable[str]', *, description: 'str', env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), working_dir: 'str | None' = None, output_files: 'Iterable[str]' = (), output_directories: 'Iterable[str]' = (), allow_downloads: 'bool' = False, replace_sandbox_root_in_args: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkProcess", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkRunSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkToolIDRequest(tool_name: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDRequest", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.sdk" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GenerateTestMainRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GenerateTestMainRequest(digest: 'Digest', test_paths: 'FrozenOrderedSet[str]', xtest_paths: 'FrozenOrderedSet[str]', import_path: 'str', register_cover: 'bool', address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GenerateTestMainRequest", + "provider": "pants.backend.go.util_rules.tests_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GeneratedTestMain": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.tests_analysis", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GeneratedTestMain", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackages": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AllThirdPartyPackagesRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackagesRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyModuleRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AnalyzeThirdPartyModuleRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', import_path: 'str', name: 'str', version: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyModuleRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AnalyzeThirdPartyPackageRequest(pkg_json: 'FrozenDict[str, Any]', module_sources_digest: 'Digest', module_sources_path: 'str', module_import_path: 'str', package_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyPackageRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzedThirdPartyModule": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.FallibleThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptors": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptors", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ModuleDescriptorsRequest(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptorsRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.third_party_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Request the info and digest needed to build a third-party package.\n\nThe package's module must be included in the input `go.mod`/`go.sum`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.google_cloud_function.python.rules.PythonGoogleCloudFunctionFieldSet": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": "PythonGoogleCloudFunctionFieldSet(address: 'Address', handler: 'PythonGoogleCloudFunctionHandlerField', runtime: 'PythonGoogleCloudFunctionRuntime', complete_platforms: 'PexCompletePlatformsField', type: 'PythonGoogleCloudFunctionType', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.rules", + "name": "PythonGoogleCloudFunctionFieldSet", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.google_cloud_function.python.target_types.InferPythonCloudFunctionHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "InferPythonCloudFunctionHandlerDependency", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.google_cloud_function.python.target_types.ResolvePythonGoogleHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler" + ], + "dependencies": [], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": "ResolvePythonGoogleHandlerRequest(field: pants.backend.google_cloud_function.python.target_types.PythonGoogleCloudFunctionHandlerField)", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "ResolvePythonGoogleHandlerRequest", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency" + ] + }, + "pants.backend.google_cloud_function.python.target_types.ResolvedPythonGoogleHandler": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": "ResolvedPythonGoogleHandler(val: str, file_name_used: bool)", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency" + ] + }, + "pants.backend.helm.dependency_inference.chart.FirstPartyHelmChartMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.InferHelmChartDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "InferHelmChartDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.deployment.AnalyseHelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "AnalyseHelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "AnalyseHelmDeploymentRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.helm.dependency_inference.deployment" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "A mapping between `helm_deployment` target addresses and tuples made up of a Docker image\nreference and a `docker_image` target address.\n\nThe tuples of Docker image references and addresses are stored in a YAML index so we can track\nthe locations in which the Docker image refs appear in the deployment files.", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMappingRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FirstPartyHelmDeploymentMappingRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMappingRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.HelmDeploymentReport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.dependency_inference.deployment", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmDeploymentReport(address: 'Address', image_refs: 'FrozenYamlIndex[str]')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.InferHelmDeploymentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "InferHelmDeploymentDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.unittest.InferHelmUnitTestChartDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.unittest", + "name": "InferHelmUnitTestChartDependencyRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.deploy.DeployHelmDeploymentFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "DeployHelmDeploymentFieldSet(address: 'Address', description: 'DescriptionField', release_name: 'HelmDeploymentReleaseNameField', namespace: 'HelmDeploymentNamespaceField', create_namespace: 'HelmDeploymentCreateNamespaceField', sources: 'HelmDeploymentSourcesField', skip_crds: 'HelmDeploymentSkipCrdsField', no_hooks: 'HelmDeploymentNoHooksField', dependencies: 'HelmDeploymentDependenciesField', values: 'HelmDeploymentValuesField', post_renderers: 'HelmDeploymentPostRenderersField', timeout: 'HelmDeploymentTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.goals.deploy", + "name": "DeployHelmDeploymentFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.lint.HelmLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.lint", + "name": "HelmLintRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.package.HelmPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.package.run_helm_package" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmPackageFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', output_path: 'HelmChartOutputPathField')", + "is_union": false, + "module": "pants.backend.helm.goals.package", + "name": "HelmPackageFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.HelmPublishFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "HelmPublishFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', registries: 'HelmRegistriesField', repository: 'HelmChartRepositoryField', skip_push: 'HelmSkipPushField')", + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "HelmPublishFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.PublishHelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.publish.publish_helm_chart" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "PublishHelmChartRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.tailor.PutativeHelmChartTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.tailor.find_putative_helm_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "PutativeHelmChartTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.goals.tailor", + "name": "PutativeHelmChartTargetsRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.resolve.artifacts.HelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "HelmArtifact", + "provider": "pants.backend.helm.resolve.artifacts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ] + }, + "pants.backend.helm.resolve.artifacts.ResolvedHelmArtifact": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.resolve.artifacts" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ResolvedHelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address', location_url: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ] + }, + "pants.backend.helm.resolve.artifacts.ThirdPartyHelmArtifactMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.resolve.fetch.FetchHelmArfifactsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FetchHelmArfifactsRequest(field_sets: 'Iterable[HelmArtifactFieldSet]', *, description_of_origin: 'str') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchHelmArfifactsRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FetchedHelmArtifact(artifact: 'ResolvedHelmArtifact', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifact", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifacts": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.resolve.fetch", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifacts", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch._StripHelmArtifactPrefixRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "_StripHelmArtifactPrefixRequest(artifact: 'ResolvedHelmArtifact', digest: 'Digest')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "_StripHelmArtifactPrefixRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts" + ] + }, + "pants.backend.helm.subsystems.helm.HelmSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.helm", + "name": "HelmSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserLockfileSentinel", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_k8s_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.ParseKubeManifestRequest": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ParseKubeManifestRequest(file: 'FileEntry')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParseKubeManifestRequest", + "provider": "pants.backend.helm.subsystems.k8s_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser.ParsedKubeManifest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.subsystems.k8s_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ParsedKubeManifest(filename: 'str', found_image_refs: 'tuple[tuple[int, YamlPath, str], ...]')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser._HelmKubeParserTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "_HelmKubeParserTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRenderer": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.helm.subsystems.post_renderer", + "pants.backend.helm.util_rules.post_renderer", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmPostRenderer(*, exe: 'str', digest: 'Digest', description_of_origin: 'str', env: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererLockfileSentinel", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_post_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.SetupHelmPostRenderer": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Request for a post-renderer process that will perform a series of replacements in the\ngenerated files.", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "SetupHelmPostRenderer", + "provider": "pants.backend.helm.subsystems.post_renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.subsystems.post_renderer._HelmPostRendererTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "_HelmPostRendererTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestPluginBinding": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "dependencies": [ + "pants.backend.helm.util_rules.tool" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestPluginBinding", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExternalHelmPluginBinding", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_unittest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmChartTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_chart_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmDeploymentTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmUnitTestTestTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_unittest_test_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.HelmChartMetaSourceField": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "HelmChartMetaSourceField", + "provider": "pants.backend.helm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "HelmUnitTestFieldSet(address: 'Address', sources: 'SourcesField', source: pants.backend.helm.target_types.HelmUnitTestSourceField, dependencies: pants.backend.helm.target_types.HelmUnitTestDependenciesField, strict: pants.backend.helm.target_types.HelmUnitTestStrictField, timeout: pants.backend.helm.target_types.HelmUnitTestTimeoutField)", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.test.unittest.HelmUnitTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.chart.FindHelmDeploymentChart": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FindHelmDeploymentChart(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "FindHelmDeploymentChart", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChart": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.resolve.fetch", + "pants.backend.helm.util_rules.chart", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChart(address: 'Address', info: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChart", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartRequest(field_set: 'HelmChartFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChartRequest", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.HelmChartMetadata": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.target_types", + "pants.core", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm, pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.ParseHelmChartMetadataDigest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Request to parse the Helm chart definition file (i.e. `Chart.yaml`) from the given digest.\n\nThe definition file is expected to be at the root of the digest.", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "ParseHelmChartMetadataDigest", + "provider": "pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.post_renderer.HelmDeploymentPostRendererRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmDeploymentPostRendererRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.post_renderer", + "name": "HelmDeploymentPostRendererRequest", + "provider": "pants.backend.helm.util_rules.post_renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.HelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet', *, cmd: 'HelmDeploymentCmd', description: 'str', extra_argv: 'Iterable[str] | None' = None, post_renderer: 'HelmPostRenderer | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "HelmDeploymentRequest", + "provider": "pants.backend.helm.util_rules.renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.RenderedHelmFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "RenderedHelmFiles(address: 'Address', chart: 'HelmChart', snapshot: 'Snapshot', post_processed: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.util_rules.renderer._HelmDeploymentProcessWrapper": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Intermediate representation of a `HelmProcess` that will produce a fully rendered set of\nmanifests from a given chart.\n\nThe encapsulated `process` will be side-effecting dependening on the `cmd` that was originally requested.\n\nThis is meant to only be used internally by this module.", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.sources.HelmChartRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.util_rules.sources", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartRoot(path: 'str')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRoot", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartRootRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartRootRequest(source: 'HelmChartMetaSourceField')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRootRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.sources", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartSourceFiles(snapshot: 'Snapshot', unrooted_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartSourceFilesRequest(field_set: 'HelmChartFieldSet', include_resources: 'bool', include_files: 'bool', include_metadata: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFilesRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginBinding": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Union type allowing Pants to discover global external Helm plugins.", + "is_union": true, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginBinding", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [ + "HelmUnitTestPluginBinding" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "dependencies": [ + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Helper class to create a download request for an external Helm plugin.", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmBinary": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmBinary", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmPlugin(info: 'HelmPluginInfo', platform: 'Platform', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugin", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.tool.HelmPlugins": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugins", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmProcess": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmProcess(argv: 'Iterable[str]', *, description: 'str', input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), level: 'LogLevel' = , output_directories: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, extra_env: 'Mapping[str, str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_append_only_caches: 'Mapping[str, str] | None' = None, cache_scope: 'ProcessCacheScope | None' = None, timeout_seconds: 'int | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmProcess", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "HandleJavacOptionsRequest(bsp_target_id: pants.bsp.spec.base.BuildTargetIdentifier)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsRequest", + "provider": "pants.backend.java.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.java.bsp.rules", + "pants.base.build_root" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.JavaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPCompileRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPLanguageSupport", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavacOptionsHandlerMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.java.bsp.spec.JavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.java.bsp.spec" + ], + "dependents": [], + "documentation": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.spec", + "name": "JavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.compile.javac.CompileJavaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.compile.javac", + "name": "CompileJavaSourceRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.FallibleJavaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.java.dependency_inference.java_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaParserCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors" + ] + }, + "pants.backend.java.dependency_inference.java_parser.JavaSourceDependencyAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.InferJavaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "InferJavaSourceDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.java.dependency_inference.rules", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependenciesAndExportsRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaInferredDependenciesAndExportsRequest(source: 'SourcesField')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependenciesAndExportsRequest", + "provider": "pants.backend.java.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.symbol_mapper.AllJavaTargets": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "AllJavaTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.symbol_mapper.FirstPartyJavaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "FirstPartyJavaTargetsMappingRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.types.JavaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.types", + "name": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ] + }, + "pants.backend.java.goals.check.JavacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.check.javac_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.goals.check", + "name": "JavacCheckRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.java.goals.tailor.PutativeJavaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "PutativeJavaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.java.goals.tailor", + "name": "PutativeJavaTargetsRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatRequest", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatToolLockfileSentinel", + "provider": "pants.backend.experimental.java.lint.google_java_format, pants.backend.java.lint.google_java_format.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ] + }, + "pants.backend.java.lint.google_java_format.skip_field.SkipGoogleJavaFormatField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.skip_field", + "name": "SkipGoogleJavaFormatField", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.subsystem.GoogleJavaFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.subsystem", + "name": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [ + "construct_scope_google_java_format" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.java_infer.JavaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.java_infer", + "name": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_java_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.javac.JavacSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.javac", + "name": "JavacSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_javac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.junit.JUnit": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.jvm.test.junit.generate_junit_lockfile_request", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.junit", + "name": "JUnit", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_junit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc.CompileKotlinSourceRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc", + "name": "CompileKotlinSourceRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.AllKotlincPluginTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.build_graph.address", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPlugins(ids: 'tuple[str, ...]', classpath: 'ClasspathEntry', plugin_args: 'FrozenDict[str, tuple[str, ...]]')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsRequest", + "provider": "pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.FallibleKotlinSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "FallibleKotlinSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.dependency_inference.kotlin_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinSourceDependencyAnalysis(package: 'str', imports: 'frozenset[KotlinImport]', named_declarations: 'frozenset[str]', consumed_symbols_by_scope: 'FrozenDict[str, frozenset[str]]', scopes: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinRuntimeDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinSourceDependencies", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.dependency_inference.rules" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolveRequest", + "provider": "pants.backend.kotlin.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.AllKotlinTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.FirstPartyKotlinTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "FirstPartyKotlinTargetsMappingRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.check.KotlincCheckRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.check.kotlinc_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.goals.check", + "name": "KotlincCheckRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.tailor.PutativeKotlinTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "PutativeKotlinTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.kotlin.goals.tailor", + "name": "PutativeKotlinTargetsRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintRequest", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin.lint.ktlint, pants.backend.kotlin.lint.ktlint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt" + ] + }, + "pants.backend.kotlin.lint.ktlint.skip_field.SkipKtlintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.skip_field", + "name": "SkipKtlintField", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.subsystem.KtlintSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.subsystem", + "name": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [ + "construct_scope_ktlint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin.KotlinSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin", + "name": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin_infer.KotlinInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin_infer", + "name": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlinc.KotlincSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlinc", + "name": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlinc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.InferKotlinJunitTestDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "InferKotlinJunitTestDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.test.junit" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinJunitLibrariesForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinJunitLibrariesForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolveRequest", + "provider": "pants.backend.kotlin.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiDocumentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiDocumentDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiSourceDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiSourceDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.OpenApiDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.openapi.dependency_inference", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": "OpenApiDependencies(dependencies: 'FrozenDict[str, frozenset[str]]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.dependency_inference.ParseOpenApiSources": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": "ParseOpenApiSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "ParseOpenApiSources", + "provider": "pants.backend.openapi.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.goals.tailor.PutativeOpenApiTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": "PutativeOpenApiTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.goals.tailor", + "name": "PutativeOpenApiTargetsRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.rules.SpectralRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.rules", + "name": "SpectralRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.skip_field.SkipSpectralField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.skip_field", + "name": "SkipSpectralField", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.subsystem.SpectralSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.subsystem", + "name": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "construct_scope_spectral" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.openapi.subsystems.openapi.OpenApiSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.subsystems.openapi", + "name": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [ + "construct_scope_openapi" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.plugin_development.pants_requirements.GenerateFromPantsRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.plugin_development" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.plugin_development.pants_requirements", + "name": "GenerateFromPantsRequirementsRequest", + "provider": "pants.backend.plugin_development", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCode": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCode", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCodeSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.SuccinctCodeCounter": { + "consumed_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "SuccinctCodeCounter", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_scc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.Dependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "Dependencies", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.DependenciesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "DependenciesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.AddressToDependents": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "AddressToDependents(mapping: pants.util.frozendict.FrozenDict[pants.build_graph.address.Address, pants.util.ordered_set.FrozenOrderedSet[pants.build_graph.address.Address]])", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "AddressToDependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.map_addresses_to_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.DependeesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependeesGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.dependees_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.DependeesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.dependees_goal" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependeesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependees" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.Dependents": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.project_info", + "pants.backend.python.mixed_interpreter_constraints" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "Dependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependees_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "DependentsRequest(addresses: Iterable[pants.build_graph.address.Address], *, transitive: bool, include_roots: bool)", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependees_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.filedeps.Filedeps": { + "consumed_by_rules": [], + "dependencies": [ + "pants.base.build_root", + "pants.build_graph.address", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "Filedeps", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.FiledepsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "FiledepsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filedeps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.Roots": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "Roots", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.RootsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "RootsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.List": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "List", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.ListSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "ListSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_list" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.Peek": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "Peek", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.PeekSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.peek" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "Display detailed target information in JSON form.", + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "PeekSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.TargetDatas": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "TargetDatas", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.get_target_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.peek.peek" + ] + }, + "pants.backend.project_info.regex_lint.RegexLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.regex_lint.RegexLintSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.project_info.regex_lint.partition_inputs" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_regex_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.AllPythonTargets": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "AllPythonTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImpl": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.python, pants.backend.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImplMarker": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "An entry point for a specific implementation of mapping module names to owning targets for\nPython import dependency inference.\n\nAll implementations will be merged together. Any modules that show up in multiple\nimplementations will be marked ambiguous.", + "is_union": true, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImplMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "FirstPartyPythonTargetsMappingMarker", + "PythonProtobufMappingMarker", + "PythonThriftMappingMarker", + "PythonVCSVersionMappingMarker" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A merged mapping of each resolve name to the first-party module names contained and their\nowning addresses.\n\nThis mapping may have been constructed from multiple distinct implementations, e.g.\nimplementations for each codegen backends.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonTargetsMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonTargetsMappingMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "documentation": "The target(s) that own a Python module.\n\nIf >1 targets own the same module, and they're implementations (vs .pyi type stubs), they will\nbe put into `ambiguous` instead of `unambiguous`. `unambiguous` should never be > 2.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwnersRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonModuleOwnersRequest(module: 'str', resolve: 'str | None')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwnersRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.ThirdPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.python" + ], + "documentation": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsePythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ParsePythonDependenciesRequest(source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints, string_imports: bool, string_imports_min_dots: int, assets: bool, assets_min_slashes: int)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsePythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ParsedPythonDependencies(imports: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonImports, assets: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonAssetPaths)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParserScript": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ParserScript(digest: Digest)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParserScript", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferConftestDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferConftestDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferInitDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferInitDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferPythonImportDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferPythonImportDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.PythonInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "PythonInferSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_python_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageConfig": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "CoverageConfig(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageConfig", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoveragePyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoveragePyLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSetup": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "CoverageSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_coverage_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.MergedCoverageData": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "MergedCoverageData", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.PytestCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "PytestCoverageDataCollection", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.ExportPluginOptions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.subsystem" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPluginOptions", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginOption", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.ExportPythonTool": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_tool" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.python, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pylint, pants.backend.python.lint.yapf, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export", + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportPythonToolSentinel": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Python tools use this as an entry point to say how to export their tool virtualenv.\n\nEach tool should subclass `ExportPythonToolSentinel` and set up a rule that goes from\nthe subclass -> `ExportPythonTool`. Register a union rule for the `ExportPythonToolSentinel`\nsubclass.\n\nIf the tool is in `pantsbuild/pants`, update `export_integration_test.py`.", + "is_union": true, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonToolSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaExportSentinel", + "AutoflakeExportSentinel", + "BanditExportSentinel", + "BlackExportSentinel", + "DocformatterExportSentinel", + "Flake8ExportSentinel", + "IsortExportSentinel", + "MyPyExportSentinel", + "PyUpgradeExportSentinel", + "PylintExportSentinel", + "PytestExportSentinel", + "YapfExportSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportVenvsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ExportVenvsRequest(targets: 'Sequence[Target]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportVenvsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.MaybeExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "MaybeExportResult(result: 'ExportResult | None')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "MaybeExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.VenvExportRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "VenvExportRequest(pex_request: 'PexRequest', dest_prefix: 'str', resolve_name: 'str', qualify_path_with_python_version: 'bool')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "VenvExportRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenv_for_targets" + ] + }, + "pants.backend.python.goals.export._ExportVenvForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_ExportVenvForResolveRequest(resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvForResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export._ExportVenvRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_ExportVenvRequest(resolve: 'str | None', root_python_targets: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.lockfile.GeneratePythonLockfile": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints', use_pex: 'bool | None' = None)", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.terraform, pants.backend.python, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pylint, pants.backend.python.lint.yapf, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request", + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.terraform.dependency_inference.setup_lockfile_request" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.KnownPythonUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "KnownPythonUserResolveNamesRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.PythonSyntheticLockfileTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "dependencies": [ + "pants.engine.internals.synthetic_targets" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "Register the type used to create synthetic targets for Python lockfiles.\n\nAs the paths for all lockfiles are known up-front, we set the `path` field to\n`SyntheticTargetsRequest.SINGLE_REQUEST_FOR_ALL_TARGETS` so that we get a single request for all\nour synthetic targets rather than one request per directory.", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "PythonSyntheticLockfileTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "SyntheticTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.RequestedPythonUserResolveNames": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "RequestedPythonUserResolveNames", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.backend.python.goals.package_pex_binary.PexBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PexBinaryFieldSet(address: 'Address', entry_point: pants.backend.python.target_types.PexEntryPointField, script: pants.backend.python.target_types.PexScriptField, output_path: pants.core.goals.package.OutputPathField, emit_warnings: pants.backend.python.target_types.PexEmitWarningsField, ignore_errors: pants.backend.python.target_types.PexIgnoreErrorsField, inherit_path: pants.backend.python.target_types.PexInheritPathField, shebang: pants.backend.python.target_types.PexShebangField, strip_env: pants.backend.python.target_types.PexStripEnvField, platforms: pants.backend.python.target_types.PexPlatformsField, complete_platforms: pants.backend.python.target_types.PexCompletePlatformsField, resolve_local_platforms: pants.backend.python.target_types.PexResolveLocalPlatformsField, layout: pants.backend.python.target_types.PexLayoutField, execution_mode: pants.backend.python.target_types.PexExecutionModeField, include_requirements: pants.backend.python.target_types.PexIncludeRequirementsField, include_sources: pants.backend.python.target_types.PexIncludeSourcesField, include_tools: pants.backend.python.target_types.PexIncludeToolsField, venv_site_packages_copies: pants.backend.python.target_types.PexVenvSitePackagesCopies, environment: pants.core.util_rules.environments.EnvironmentField)", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexBinaryFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.publish.PublishPythonPackageFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "PublishPythonPackageFieldSet(address: 'Address', repositories: 'PythonRepositoriesField', skip_twine: 'SkipTwineUploadField')", + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageFieldSet", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PublishPythonPackageRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PythonRepositoriesField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PythonRepositoriesField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.SkipTwineUploadField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "SkipTwineUploadField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetups": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetups", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetupsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "AllPytestPluginSetupsRequest(addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetupsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.PyTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PyTestRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetupRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to set up the test environment before Pytest runs, e.g. to set up databases.\n\nTo use, subclass PytestPluginSetupRequest, register the rule\n`UnionRule(PytestPluginSetupRequest, MyCustomPytestPluginSetupRequest)`, and add a rule that\ntakes your subclass as a parameter and returns `PytestPluginSetup`.", + "is_union": true, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "RuntimePackagesPluginRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.RuntimePackagesPluginRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "RuntimePackagesPluginRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "RuntimePackagesPluginRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "TestSetup(process: 'Process', results_file_name: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.pytest_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "TestSetupRequest(field_sets: 'Tuple[PythonTestFieldSet, ...]', metadata: 'TestMetadata', is_debug: 'bool', extra_env: 'FrozenDict[str, str]' = FrozenDict({}), prepend_argv: 'Tuple[str, ...]' = (), additional_pexes: 'Tuple[Pex, ...]' = ())", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.repl.IPythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "IPythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.repl.PythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_python_repl_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "PythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_source.PythonSourceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonSourceFieldSet(address: 'Address', source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.target_types.InterpreterConstraintsField, _run_goal_use_sandbox: pants.backend.python.target_types.PythonRunGoalUseSandboxField)", + "is_union": false, + "module": "pants.backend.python.goals.run_python_source", + "name": "PythonSourceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.setup_py.DependencyOwner": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "An ExportedTarget in its role as an owner of other targets.\n\nWe need this type to prevent rule ambiguities when computing the list of targets owned by an\nExportedTarget (which involves going from ExportedTarget -> dep -> owner (which is itself an\nExportedTarget) and checking if owner is the original ExportedTarget.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DependencyOwner", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_sources" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildChroot": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A chroot containing PEP 517 build setup and the sources it operates on.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildChroot", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildChrootRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to create a chroot for building a dist in.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildChrootRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Various extra information that might be needed to build a dist.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildEnvironmentRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "DistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": true, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildEnvironmentRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "MyPycDistBuildEnvironmentRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildSources": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The source-root-stripped sources required to build a distribution with a generated setup.py.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildSources", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ] + }, + "pants.backend.python.goals.setup_py.ExportedTarget": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "ExportedTarget", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_exporting_owner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.ExportedTargetRequirements": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "ExportedTargetRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_requirements" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.goals.setup_py.FinalizedSetupKwargs": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "FinalizedSetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_setup_py" + ] + }, + "pants.backend.python.goals.setup_py.GenerateSetupPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.generate_setup_py" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "GenerateSetupPyRequest(exported_target: 'ExportedTarget', sources: 'DistBuildSources', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "GenerateSetupPyRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.generate_setup_py" + ] + }, + "pants.backend.python.goals.setup_py.GeneratedSetupPy": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "GeneratedSetupPy(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "GeneratedSetupPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.generate_setup_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ] + }, + "pants.backend.python.goals.setup_py.OwnedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "OwnedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_sources" + ] + }, + "pants.backend.python.goals.setup_py.OwnedDependency": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.get_exporting_owner" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A target that is owned by some ExportedTarget.\n\nCode in this target is published in the owner's distribution.\n\nThe owner of a target T is T's closest filesystem ancestor among the python_distribution\ntargets that directly or indirectly depend on it (including T itself).", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "OwnedDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.SetupKwargs": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.SetupKwargsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to allow setting the kwargs passed to the `setup()` function.\n\nBy default, Pants will pass the kwargs provided in the BUILD file unchanged. To customize this\nbehavior, subclass `SetupKwargsRequest`, register the rule `UnionRule(SetupKwargsRequest,\nMyCustomSetupKwargsRequest)`, and add a rule that takes your subclass as a parameter and returns\n`SetupKwargs`.", + "is_union": true, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupKwargsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ] + }, + "pants.backend.python.goals.setup_py.SetupPyGeneration": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_requirements" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupPyGeneration", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setup_py_generation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.tailor.PutativePythonTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PutativePythonTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.tailor", + "name": "PutativePythonTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.rules.AddTrailingCommaRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.rules", + "name": "AddTrailingCommaRequest", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.skip_field.SkipAddTrailingCommaField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.skip_field", + "name": "SkipAddTrailingCommaField", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingComma": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export", + "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [ + "construct_scope_add_trailing_comma" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingCommaExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingCommaExportSentinel", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingCommaLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingCommaLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.rules.AutoflakeRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.rules", + "name": "AutoflakeRequest", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.skip_field.SkipAutoflakeField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.skip_field", + "name": "SkipAutoflakeField", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.Autoflake": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "Autoflake", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [ + "construct_scope_autoflake" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.AutoflakeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.autoflake_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "AutoflakeExportSentinel", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.AutoflakeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.lint.autoflake" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "AutoflakeLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.rules.BanditRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditRequest", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.skip_field.SkipBanditField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.skip_field", + "name": "SkipBanditField", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.Bandit": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.bandit" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "Bandit", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [ + "construct_scope_bandit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.bandit" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditExportSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.bandit" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditLockfileSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.rules.BlackRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.rules", + "name": "BlackRequest", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.skip_field.SkipBlackField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.skip_field", + "name": "SkipBlackField", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.Black": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.python.lint.black", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "Black", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_black" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.black_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.black" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackExportSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.setup_black_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.black" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackLockfileSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.rules.DocformatterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.rules", + "name": "DocformatterRequest", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.skip_field.SkipDocformatterField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.skip_field", + "name": "SkipDocformatterField", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.Docformatter": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.docformatter" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "Docformatter", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [ + "construct_scope_docformatter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.DocformatterExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.subsystem.docformatter_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.docformatter" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "DocformatterExportSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.DocformatterLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.docformatter" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "DocformatterLockfileSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.rules.Flake8Request": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Request", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.skip_field.SkipFlake8Field": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.skip_field", + "name": "SkipFlake8Field", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "construct_scope_flake8" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8ExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8ExportSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8FirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8LockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8LockfileSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.rules.IsortRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.rules", + "name": "IsortRequest", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.skip_field.SkipIsortField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.skip_field", + "name": "SkipIsortField", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.Isort": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.isort" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "Isort", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [ + "construct_scope_isort" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.IsortExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.subsystem.isort_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.isort" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "IsortExportSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.IsortLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.isort" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "IsortLockfileSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.rules.PylintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintRequest", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.skip_field.SkipPylintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.skip_field", + "name": "SkipPylintField", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.Pylint": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "Pylint", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "construct_scope_pylint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintExportSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintLockfileSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.rules.PyUpgradeRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.rules", + "name": "PyUpgradeRequest", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.skip_field.SkipPyUpgradeField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.skip_field", + "name": "SkipPyUpgradeField", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgrade": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgrade", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [ + "construct_scope_pyupgrade" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgradeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgradeExportSentinel", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgradeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.lint.pyupgrade" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgradeLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.rules.YapfRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.rules", + "name": "YapfRequest", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.skip_field.SkipYapfField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.skip_field", + "name": "SkipYapfField", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.Yapf": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fmt.yapf", + "pants.backend.python.lint.yapf", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "Yapf", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_yapf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.YapfExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.subsystem.yapf_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.yapf" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "YapfExportSentinel", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.YapfLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.yapf" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "YapfLockfileSentinel", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.macros.pipenv_requirements.GenerateFromPipenvRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.pipenv_requirements", + "name": "GenerateFromPipenvRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.poetry_requirements.GenerateFromPoetryRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.poetry_requirements", + "name": "GenerateFromPoetryRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.python_requirements.GenerateFromPythonRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.python_requirements.generate_from_python_requirement" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.python_requirements", + "name": "GenerateFromPythonRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.project_info", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.mixed_interpreter_constraints" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "construct_scope_py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyOxidizerFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": "PyOxidizerFieldSet(address: 'Address', binary_name: 'PyOxidizerBinaryNameField', entry_point: 'PyOxidizerEntryPointField', dependencies: 'PyOxidizerDependenciesField', unclassified_resources: 'PyOxidizerUnclassifiedResources', template: 'PyOxidizerConfigSourceField', output_path: 'PyOxidizerOutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyOxidizerFieldSet", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyoxidizerRunnerScript": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyOxidizer": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "construct_scope_pyoxidizer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyoxidizerLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyoxidizerLockfileSentinel", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPy": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_debugpy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPyLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPython": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPython", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_ipython" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPythonLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPythonLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.Lambdex": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "Lambdex", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "construct_scope_lambdex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.LambdexLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "LambdexLockfileSentinel", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PyTest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PyTest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pytest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.pytest_export" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestExportSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PythonTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "PythonTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'PythonTestSourceField', interpreter_constraints: 'InterpreterConstraintsField', timeout: 'PythonTestsTimeoutField', runtime_package_dependencies: 'RuntimePackageDependenciesField', extra_env_vars: 'PythonTestsExtraEnvVarsField', xdist_concurrency: 'PythonTestsXdistConcurrencyField', batch_compatibility_tag: 'PythonTestsBatchCompatibilityTagField', resolve: 'PythonResolveField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PythonTestFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_python_native_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.PythonNativeCodeSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_python_native_code" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "PythonNativeCodeSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_native_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.repos.PythonRepos": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.repos", + "name": "PythonRepos", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_repos" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup.PythonSetup": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup", + "name": "PythonSetup", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.PythonDistributionFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonDistributionFieldSet(address: 'Address', provides: pants.backend.python.target_types.PythonProvidesField)", + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "PythonDistributionFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.subsystems.setuptools.Setuptools": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "Setuptools", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setuptools" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.SetuptoolsLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "SetuptoolsLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCM": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_setuptools_scm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCMLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCMLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.twine.setup_twine_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.subsystems.twine.setup_twine_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_twine" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexBinaryDefaults": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexBinaryDefaults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pex_binary_defaults" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexCompletePlatformsField": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexCompletePlatformsField", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.target_types.PythonFilesGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PythonFilesGeneratorSettingsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types.ResolvePexEntryPointRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Determine the `entry_point` for a `pex_binary` after applying all syntactic sugar.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePexEntryPointRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvePythonDistributionEntryPointsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Looks at the entry points to see if it is a setuptools entry point, or a BUILD target address\nthat should be resolved into a setuptools entry point.\n\nIf the `entry_points_field` is present, inspect the specified entry points.\nIf the `provides_field` is present, inspect the `provides_field.kwargs[\"entry_points\"]`.\n\nThis is to support inspecting one or the other depending on use case, using the same\nlogic for resolving pex_binary addresses etc.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePythonDistributionEntryPointsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.target_types.ResolvedPexEntryPoint": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPexEntryPoint", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvedPythonDistributionEntryPoints": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.target_types_rules.GenerateTargetsFromPexBinaries": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "GenerateTargetsFromPexBinaries", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPexBinaryEntryPointDependency": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPexBinaryEntryPointDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPythonDistributionDependencies": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPythonDistributionDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonValidateDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonValidateDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.MyPycDistBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPycDistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "MyPycDistBuildEnvironmentRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "DistBuildEnvironmentRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.UsesMyPycField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "UsesMyPycField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPyPartition(field_sets: 'FrozenOrderedSet[MyPyFieldSet]', root_targets: 'CoarsenedTargets', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartition", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartitions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.skip_field.SkipMyPyField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.skip_field", + "name": "SkipMyPyField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPy": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPy", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "construct_scope_mypy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyConfigFile": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyExportSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyExtraTypeStubsLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyExtraTypeStubsLockfileSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependencies": [ + "pants.backend.python", + "pants.engine.addresses", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyLockfileSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Any ancestor files found.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request for ancestor files of the given names.\n\n\"Ancestor files\" means all files with one of the given names that are siblings of, or in parent\ndirectories of, a `.py` or `.pyi` file in the input_files.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A PEP 517/518 build system configuration.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystemRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to find build system config in the given dir of the given digest.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystemRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to build dists via a PEP 517 build backend.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.interpreter_constraints", + "name": "InterpreterConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistWheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Contains the wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistWheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPex": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPex", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Request to build the local dists from the dependency closure of a set of addresses.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.BuildPexResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "BuildPexResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex" + ] + }, + "pants.backend.python.util_rules.pex.CompletePlatforms": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.python", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "CompletePlatforms", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPex": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "OptionalPex(maybe_pex: 'Pex | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex.Pex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "Wrapper for a digest containing a pex file created with some filename.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "Pex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex" + ] + }, + "pants.backend.python.util_rules.pex.PexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_pex_process" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "PexProcess(pex: 'Pex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ] + }, + "pants.backend.python.util_rules.pex.PexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.PexResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexResolveInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex.VenvPex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "VenvPex(digest: 'Digest', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_venv_pex_process" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "VenvPexProcess(venv_pex: 'VenvPex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "VenvPexRequest(pex_request: 'PexRequest', complete_pex_env: 'CompletePexEnvironment', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexRequest", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexCli": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCli", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex_cli" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_cli.PexCliProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "PexCliProcess(*, subcommand: 'Iterable[str]', extra_args: 'Iterable[str]', description: 'str', set_resolve_args: 'bool' = True, additional_input_digest: 'Optional[Digest]' = None, extra_env: 'Optional[Mapping[str, str]]' = None, output_files: 'Optional[Iterable[str]]' = None, output_directories: 'Optional[Iterable[str]]' = None, python: 'Optional[PythonExecutable]' = None, level: 'LogLevel' = , concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCliProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexPEX": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [ + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "The Pex PEX binary.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexPEX", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexEnvironment": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [ + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.core" + ], + "documentation": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonExecutable | None' = None, venv_use_symlinks: 'bool' = False)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_pex", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PythonExecutable": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "The BinaryPath of a Python executable.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PythonExecutable", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolve", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ChosenPythonResolveRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.GlobalRequirementConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "GlobalRequirementConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_from_targets.InterpreterConstraintsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "InterpreterConstraintsRequest(addresses: 'Iterable[Address]', *, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "InterpreterConstraintsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.PexFromTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "PexFromTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.RequirementsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Requests a PEX containing only thirdparty requirements for internal/non-portable use.\n\nUsed as part of an optimization to reduce the \"overhead\" (in terms of both time and space) of\nthirdparty requirements by taking advantage of certain PEX features.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "RequirementsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._ConstraintsRepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_ConstraintsRepositoryPexRequest(repository_pex_request: '_RepositoryPexRequest')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_ConstraintsRepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._PexRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Determine the requirement strings used transitively.\n\nThis type is private because callers should likely use `RequirementsPexRequest` or\n`PexFromTargetsRequest` instead.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_PexRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._RepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_RepositoryPexRequest(addresses: 'Iterable[Address]', *, internal_only: 'bool', hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_lockfile_args: 'tuple[str, ...]' = ()) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_RepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.python", + "pants.core" + ], + "documentation": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfileRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A request to load and validate the content of the given lockfile.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfileRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.PexRequirements": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "PexRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.core" + ], + "documentation": "Configuration from `[python]` that impacts how the resolve is created.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfig", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfigRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Find all configuration from `[python]` that impacts how the resolve is created.\n\nIf `resolve_name` is None, then most per-resolve options will be ignored because there is no way\nfor users to configure them. However, some options like `[python-repos].indexes` will still be\nloaded.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfigRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFiles": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "dependencies": [ + "builtins", + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonSourceFilesRequest(targets: 'Iterable[Target]', *, include_resources: 'bool' = True, include_files: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.StrippedPythonSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "documentation": "A PythonSourceFiles that has had its source roots stripped.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "StrippedPythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.vcs_versioning.AllVCSVersionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.GeneratePythonFromSetuptoolsSCMRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "GeneratePythonFromSetuptoolsSCMRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.PythonVCSVersionMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "PythonVCSVersionMappingMarker", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.VCSVersionPythonResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "VCSVersionPythonResolveField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "HandleScalacOptionsRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.base.build_root", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "HandleScalacOptionsResult(item: 'ScalacOptionsItem')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.ScalaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPCompileRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPDependencyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaBSPDependencyModulesRequest(field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPDependencyModulesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPDependencyModulesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPLanguageSupport", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_resources_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPResourcesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaMainClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaMainClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaTestClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaTestClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalacOptionsHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModules": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.core", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ThirdpartyModules(resolve: 'CoursierResolveKey', entries: 'dict[CoursierLockfileEntry, ClasspathEntry]', merged_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ThirdpartyModulesRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModulesRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.spec.ScalaMainClassesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "dependents": [], + "documentation": "ScalaMainClassesResult(items: 'tuple[ScalaMainClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalaTestClassesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "dependents": [], + "documentation": "ScalaTestClassesResult(items: 'tuple[ScalaTestClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "dependents": [], + "documentation": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac.CompileScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac", + "name": "CompileScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.AllScalaPluginTargets": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.compile.scalac_plugins", + "pants.build_graph.address", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPlugins", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala, pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetWithoutResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginsForTargetWithoutResolveRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetWithoutResolveRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaLibraryDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaLibraryDependencyRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaPluginDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaPluginDependenciesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaSourceDependencies", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.dependency_inference.rules" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolveRequest", + "provider": "pants.backend.scala.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.AnalyzeScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "AnalyzeScalaSourceRequest(source_files: 'SourceFiles', scala_version: 'str', source3: 'bool')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.FallibleScalaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.dependency_inference.scala_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[ScalaProvidedSymbol]', provided_symbols_encoded: 'FrozenOrderedSet[ScalaProvidedSymbol]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.AllScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "AllScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.FirstPartyScalaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "FirstPartyScalaTargetsMappingRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.check.ScalacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.check.scalac_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.check", + "name": "ScalacCheckRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.repl.ScalaRepl": { + "consumed_by_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.repl", + "name": "ScalaRepl", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.scala.goals.tailor.PutativeScalaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "PutativeScalaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.goals.tailor", + "name": "PutativeScalaTargetsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.GatherScalafmtConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "GatherScalafmtConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "GatherScalafmtConfigFilesRequest", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtConfigFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.scala.lint.scalafmt.rules" + ], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtRequest", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtToolLockfileSentinel", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.skip_field.SkipScalafmtField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.skip_field", + "name": "SkipScalafmtField", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.subsystem.ScalafmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.subsystem", + "name": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "construct_scope_scalafmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.resolve.lockfile.ValidateResolveHasScalaRuntimeRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": [ + "pants.jvm.goals.lockfile" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.lockfile", + "name": "ValidateResolveHasScalaRuntimeRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateJvmArtifactsForResolveRequest", + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala.ScalaSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala", + "name": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala_infer.ScalaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala_infer", + "name": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalac.Scalac": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalac", + "name": "Scalac", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalatest.Scalatest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalatest", + "name": "Scalatest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalatest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaSettingsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "ScalatestTestFieldSet(address: 'Address', sources: 'ScalatestTestSourceField', timeout: 'ScalatestTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'ScalatestTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ] + }, + "pants.backend.scala.test.scalatest.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.scala.test.scalatest", + "pants.core", + "pants.engine.env_vars", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetup", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.test.scalatest.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "TestSetupRequest(field_set: 'ScalatestTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetupRequest", + "provider": "pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionRequest": { + "consumed_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaArtifactsForVersionRequest(scala_version: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionRequest", + "provider": "pants.backend.scala.util_rules.versions", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.util_rules.versions" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaArtifactsForVersionResult(compiler_coordinate: 'Coordinate', library_coordinate: 'Coordinate', compiler_main: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.shell.dependency_inference.AllShellTargets": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "AllShellTargets", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.find_all_shell_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.InferShellDependencies": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "InferShellDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.ParseShellImportsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "ParseShellImportsRequest(digest: 'Digest', fp: 'str')", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParseShellImportsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ParsedShellImports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParsedShellImports", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ShellMapping": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "A mapping of Shell file names to their owning file address.", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ShellMapping", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.rules.ShellcheckRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.rules", + "name": "ShellcheckRequest", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.skip_field.SkipShellcheckField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.skip_field", + "name": "SkipShellcheckField", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.subsystem.Shellcheck": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.subsystem", + "name": "Shellcheck", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shellcheck" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.rules.ShfmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.rules", + "name": "ShfmtRequest", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.skip_field.SkipShfmtField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.skip_field", + "name": "SkipShfmtField", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.subsystem.Shfmt": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell.lint.shfmt" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.subsystem", + "name": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [ + "construct_scope_shfmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shell_command.GenerateFilesFromShellCommandRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.run_shell_command" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_command", + "name": "GenerateFilesFromShellCommandRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.shell_command.RunShellCommand": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.backend.shell.shell_command.run_shell_debug_adapter_binary" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_command", + "name": "RunShellCommand", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shell_command.ShellCommandProcessRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.prepare_shell_command_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "ShellCommandProcessRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.shell.shell_command", + "name": "ShellCommandProcessRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shell_command.run_shell_command", + "pants.backend.shell.shell_command.run_shell_command_request" + ] + }, + "pants.backend.shell.shell_setup.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_setup", + "name": "EnvironmentAware", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_env_aware_scope_shell_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shell_setup.ShellSetup": { + "consumed_by_rules": [ + "construct_env_aware_scope_shell_setup", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shell_setup", + "name": "ShellSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shell_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shunit2.Shunit2": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shunit2", + "name": "Shunit2", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shunit2" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2FieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "Shunit2FieldSet(address: 'Address', sources: pants.backend.shell.target_types.Shunit2TestSourceField, timeout: pants.backend.shell.target_types.Shunit2TestTimeoutField, shell: pants.backend.shell.target_types.Shunit2ShellField, runtime_package_dependencies: pants.core.goals.test.RuntimePackageDependenciesField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2FieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2Runner": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2Runner", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2RunnerRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "Shunit2RunnerRequest(address: pants.build_graph.address.Address, test_file_content: pants.engine.fs.FileContent, shell_field: pants.backend.shell.target_types.Shunit2ShellField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2RunnerRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2TestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2TestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "TestSetup(process: pants.engine.process.Process)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "TestSetupRequest(field_set: pants.backend.shell.shunit2_test_runner.Shunit2FieldSet)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.tailor.PutativeShellTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "PutativeShellTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.shell.tailor", + "name": "PutativeShellTargetsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.target_types.ShellGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.target_types", + "name": "ShellGeneratorSettingsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.InferTerraformModuleDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "InferTerraformModuleDependenciesRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.ParseTerraformModuleSources": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "ParseTerraformModuleSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParseTerraformModuleSources", + "provider": "pants.backend.terraform.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ] + }, + "pants.backend.terraform.dependency_inference.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParserSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2Parser": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_hcl2_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2ParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2ParserLockfileSentinel", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformCheckRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformCheckRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformValidateSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_validate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.tailor.PutativeTerraformTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "PutativeTerraformTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.goals.tailor", + "name": "PutativeTerraformTargetsRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TfFmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TffmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TffmtRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.tool.TerraformProcess": { + "consumed_by_rules": [ + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "A request to invoke Terraform.", + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformProcess", + "provider": "pants.backend.terraform.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformTool": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformTool", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_download_terraform" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.base.specs.RawSpecs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Convert the specs into matching targets and files.\n\nUnlike `Specs`, this does not consider include vs. ignore specs. It simply matches all relevant\ntargets/files.\n\nWhen you want to operate on what the user specified, use `Specs`. Otherwise, you can use\neither `Specs` or `RawSpecs` in rules, e.g. to find what targets exist in a directory.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.base.specs.RawSpecsWithoutFileOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The subset of `RawSpecs` that do not use the `Owners` rule to match targets.\n\nThis exists to work around a cycle in the rule graph. Usually, consumers should use the simpler\n`Get(Addresses, RawSpecs)`, which will result in this rule being used.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecsWithoutFileOwners", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses" + ] + }, + "pants.base.specs.Specs": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "The specs provided by the user for what to run on.\n\nThe `ignores` will filter out all relevant `includes`.\n\nIf your rule does not need to consider includes vs. ignores, e.g. to find all targets in a\ndirectory, you can directly use `RawSpecs`.", + "is_union": false, + "module": "pants.base.specs", + "name": "Specs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.bsp.context.BSPContext": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependencies": [ + "pants.engine.internals.session" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "is_union": false, + "module": "pants.bsp.context", + "name": "BSPContext", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.rules.bsp_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.goal.BSPGoal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.goal", + "name": "BSPGoal", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_experimental_bsp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.protocol.BSPHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "Union type for rules to register handlers for BSP methods.", + "is_union": true, + "module": "pants.bsp.protocol", + "name": "BSPHandlerMapping", + "provider": "pants.bsp.protocol", + "returned_by_rules": [], + "union_members": [ + "BuildTargetSourcesHandlerMapping", + "CompileRequestHandlerMapping", + "DependencyModulesHandlerMapping", + "DependencySourcesHandlerMapping", + "InitializeBuildHandlerMapping", + "JavacOptionsHandlerMapping", + "ResourcesRequestHandlerMapping", + "ScalaMainClassesHandlerMapping", + "ScalaTestClassesHandlerMapping", + "ScalacOptionsHandlerMapping", + "WorkspaceBuildTargetsHandlerMapping" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.base.BuildTargetIdentifier": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A unique identifier for a target, can use any URI-compatible encoding as long as it is unique\nwithin the workspace.\n\nClients should not infer metadata out of the URI structure such as the path or query parameters,\nuse BuildTarget instead.", + "is_union": false, + "module": "pants.bsp.spec.base", + "name": "BuildTargetIdentifier", + "provider": "pants.bsp.spec.base", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.spec.compile.CompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.compile", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "is_union": false, + "module": "pants.bsp.spec.compile", + "name": "CompileResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.lifecycle.InitializeBuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.spec.lifecycle", + "pants.engine.unions" + ], + "dependents": [], + "documentation": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "is_union": false, + "module": "pants.bsp.spec.lifecycle", + "name": "InitializeBuildResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.lifecycle.bsp_build_initialize" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.resources.ResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.resources", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "ResourcesResult(items: 'tuple[ResourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.resources", + "name": "ResourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencyModulesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencySourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "dependents": [], + "documentation": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencySourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.SourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "dependents": [], + "documentation": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "SourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.WorkspaceBuildTargetsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "WorkspaceBuildTargetsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.compile.CompileOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "CompileOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal', origin_id: 'str | None' = None, arguments: 'tuple[str, ...] | None' = ())", + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ] + }, + "pants.bsp.util_rules.compile.CompileRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.BSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Union exposed by language backends to inform BSP core rules of capabilities to advertise to\nclients.", + "is_union": true, + "module": "pants.bsp.util_rules.lifecycle", + "name": "BSPLanguageSupport", + "provider": "pants.bsp.util_rules.lifecycle", + "returned_by_rules": [], + "union_members": [ + "JavaBSPLanguageSupport", + "ScalaBSPLanguageSupport" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.InitializeBuildHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.lifecycle", + "name": "InitializeBuildHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.resources.ResourcesForOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ResourcesForOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesForOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.resources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ] + }, + "pants.bsp.util_rules.resources.ResourcesRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetInternal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "dependencies": [ + "pants.bsp.spec.base" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BSPBuildTargetInternal(name: 'str', specs: 'RawSpecs', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetInternal", + "provider": "pants.bsp.util_rules.targets, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetSourcesInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Source files and roots for a BSP build target.\n\nIt is a separate class so that it is computed lazily only when called for by an RPC call.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetSourcesInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargets": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BSPBuildTargets(targets_mapping: 'FrozenDict[str, BSPBuildTargetInternal]')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide metadata for BSP build targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPBuildTargetsMetadataRequest", + "ScalaBSPBuildTargetsMetadataRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Response type for a BSPBuildTargetsMetadataRequest.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to compile targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPCompileRequest", + "ScalaBSPCompileRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.bsp.util_rules.compile", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Result of compilation of a target capable of target compilation.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide dependency modules.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "ScalaBSPDependencyModulesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BSPDependencyModulesResult(modules: 'tuple[DependencyModule, ...]', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide resources for targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPResourcesRequest", + "ScalaBSPResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.bsp.util_rules.resources", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Resources for a target.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BuildTargetSourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BuildTargetSourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencyModulesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencyModulesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencySourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencySourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GenerateOneBSPBuildTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.base.build_root", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "GenerateOneBSPBuildTargetResult(build_target: 'BuildTarget', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "MaterializeBuildTargetSourcesRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.base.build_root", + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.core" + ], + "documentation": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ResolveOneDependencyModuleRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.WorkspaceBuildTargetsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "WorkspaceBuildTargetsHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets._ParseOneBSPMappingRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_ParseOneBSPMappingRequest(name: 'str', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "_ParseOneBSPMappingRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ] + }, + "pants.build_graph.address.AddressInput": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A string that has been parsed and normalized using the Address syntax.\n\nAn AddressInput must be resolved into an Address using the engine (which involves inspecting\ndisk to determine the types of its path component).", + "is_union": false, + "module": "pants.build_graph.address", + "name": "AddressInput", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.build_graph.address.BuildFileAddressRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to find the BUILD file path for an address.", + "is_union": false, + "module": "pants.build_graph.address", + "name": "BuildFileAddressRequest", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ] + }, + "pants.core.goals.check.Check": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "Check", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.check.check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.check.CheckRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "A union for targets that should be checked.\n\nSubclass and install a member of this type to provide a checker.", + "is_union": true, + "module": "pants.core.goals.check", + "name": "CheckRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCheckRequest", + "JavacCheckRequest", + "KotlincCheckRequest", + "MyPyRequest", + "ScalacCheckRequest", + "TerraformCheckRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.core.goals.check.CheckResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.core", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResults", + "provider": "pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.terraform.goals.check.terraform_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.check.check" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.Deploy": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": "Deploy(exit_code: int)", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "Deploy", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.deploy.run_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.DeployFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "The FieldSet type for the `deploy` goal.\n\nUnion members may list any fields required to fulfill the instantiation of the `DeployProcess`\nresult of the deploy rule.", + "is_union": true, + "module": "pants.core.goals.deploy", + "name": "DeployFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployHelmDeploymentFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.deploy.DeployProcess": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A process that when executed will have the side effect of deploying a target.\n\nTo provide with the ability to deploy a given target, create a custom `DeployFieldSet` for\nthat given target and implement a rule that returns `DeployProcess` for that custom field set:\n\nExample:\n\n @dataclass(frozen=True)\n class MyDeploymentFieldSet(DeployFieldSet):\n pass\n\n @rule\n async def my_deployment_process(field_set: MyDeploymentFieldSet) -> DeployProcess:\n # Create the underlying process that executes the deployment\n process = Process(...)\n return DeployProcess(\n name=\"my_deployment\",\n process=InteractiveProcess.from_process(process)\n )\n\n def rules():\n return [\n *collect_rules(),\n UnionRule(DeployFieldSet, MyDeploymentFieldSet)\n ]\n\nUse the `publish_dependencies` field to provide with a list of targets that produce packages\nwhich need to be externally published before the deployment process is executed.", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeployProcess", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.deploy.DeploySubsystem": { + "consumed_by_rules": [ + "pants.core.goals.deploy.run_deploy" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeploySubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_experimental_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy._PublishProcessesForTargetRequest": { + "consumed_by_rules": [ + "pants.core.goals.deploy.publish_process_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_PublishProcessesForTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "_PublishProcessesForTargetRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.export.Export": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.base.build_root", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "Export", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.export.export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.export.ExportRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A union for exportable data provided by a backend.\n\nSubclass and install a member of this type to export data.", + "is_union": true, + "module": "pants.core.goals.export", + "name": "ExportRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ExportVenvsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = (), resolve: 'str | None' = None)", + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.core.goals.export.ExportResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.export.export" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.Batch": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.rules.yapf_fmt" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.yapf" + ], + "documentation": "Batch(tool_name: 'str', elements: 'tuple[PartitionElementT, ...]', partition_metadata: 'PartitionMetadataT', snapshot: 'Snapshot')", + "is_union": true, + "module": "pants.core.goals.fix", + "name": "Batch", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.fix.Fix": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "Fix", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fix.fix" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.FixRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fix", + "name": "FixRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "PyUpgradeRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.FixResult": { + "consumed_by_rules": [ + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "FixResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', tool_name: 'str')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixResult", + "provider": "pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.experimental.go, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.isort, pants.backend.python.lint.yapf, pants.backend.shell.lint.shfmt, pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix_batch" + ] + }, + "pants.core.goals.fix.FixSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_fix" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix._FixBatchRequest": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix_batch" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request to serially fix all the elements in the given batch.", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.fix._FixBatchResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt" + ], + "dependents": [ + "pants.core" + ], + "documentation": "_FixBatchResult(results: 'tuple[FixResult, ...]')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fix.fix_batch" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.fmt.Fmt": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "Fmt", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fmt", + "name": "FmtRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "documentation": "A union base for generating ecosystem-specific lockfiles.\n\nEach language ecosystem should set up a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile` and `GenerateJVMLockfile`, and register a union rule. They should\nalso set up a simple rule that goes from that class -> `WrappedGenerateLockfile`.\n\nSubclasses will usually want to add additional properties, such as what requirements to\ninstall and Python interpreter constraints.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GenerateJvmLockfile", + "GeneratePythonLockfile" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.core" + ], + "documentation": "The result of generating a lockfile for a particular resolve.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfileResult", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_generate_lockfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateToolLockfileSentinel": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Tools use this as an entry point to say how to generate their tool lockfile.\n\nEach language ecosystem should set up a union member of `GenerateLockfile`, like\n`GeneratePythonLockfile`, as explained in that class's docstring.\n\nEach language ecosystem should also subclass `GenerateToolLockfileSentinel`, e.g.\n`GeneratePythonToolLockfileSentinel`. The subclass does not need to do anything - it is only used to know which language ecosystems tools correspond to.\n\nThen, each tool should subclass their language ecosystem's subclass of `GenerateToolLockfileSentinel` and set up a rule that goes from the\nsubclass -> the language's lockfile request, e.g. BlackLockfileSentinel ->\nGeneratePythonLockfile. Register `UnionRule(GenerateToolLockfileSentinel, MySubclass)`.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateToolLockfileSentinel", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaLockfileSentinel", + "AutoflakeLockfileSentinel", + "BanditLockfileSentinel", + "BlackLockfileSentinel", + "CoveragePyLockfileSentinel", + "DebugPyLockfileSentinel", + "DocformatterLockfileSentinel", + "DockerfileParserLockfileSentinel", + "Flake8LockfileSentinel", + "GoogleJavaFormatToolLockfileSentinel", + "GrpcJavaToolLockfileSentinel", + "HelmKubeParserLockfileSentinel", + "HelmPostRendererLockfileSentinel", + "IPythonLockfileSentinel", + "IsortLockfileSentinel", + "JavaParserToolLockfileSentinel", + "JunitToolLockfileSentinel", + "KotlinParserToolLockfileSentinel", + "KtlintToolLockfileSentinel", + "LambdexLockfileSentinel", + "MyPyExtraTypeStubsLockfileSentinel", + "MyPyLockfileSentinel", + "MypyProtobufLockfileSentinel", + "PyUpgradeLockfileSentinel", + "PylintLockfileSentinel", + "PyoxidizerLockfileSentinel", + "PytestLockfileSentinel", + "ScalaParserToolLockfileSentinel", + "ScalafmtToolLockfileSentinel", + "ScalapbcToolLockfileSentinel", + "ScalatestToolLockfileSentinel", + "SetuptoolsLockfileSentinel", + "SetuptoolsSCMLockfileSentinel", + "StripJarToolLockfileSentinel", + "TerraformHcl2ParserLockfileSentinel", + "TwineLockfileSentinel", + "YapfLockfileSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNames", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNamesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "documentation": "A hook for a language ecosystem to declare which resolves it has defined.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> KnownUserResolveNames, usually by simply reading the\n`resolves` option from the relevant subsystem.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "KnownJVMUserResolveNamesRequest", + "KnownPythonUserResolveNamesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.RequestedUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "documentation": "The user resolves requested for a particular language ecosystem.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> UserGenerateLockfiles.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "RequestedUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RequestedJVMUserResolveNames", + "RequestedPythonUserResolveNames" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.UserGenerateLockfiles": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "UserGenerateLockfiles", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.WrappedGenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "dependents": [ + "pants.core" + ], + "documentation": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "WrappedGenerateLockfile", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.lint.Batch": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.run_pylint" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "Batch", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.lint.Lint": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "Lint", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.lint.lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ], + "documentation": "Base class for plugin types wanting to be run as part of `lint`.\n\nPlugins should define a new type which subclasses either `LintTargetsRequest` (to lint targets)\nor `LintFilesRequest` (to lint arbitrary files), and set the appropriate class variables.\nE.g.\n class DryCleaningRequest(LintTargetsRequest):\n name = DryCleaningSubsystem.options_scope\n field_set_type = DryCleaningFieldSet\n\nThen, define 2 `@rule`s:\n 1. A rule which takes an instance of your request type's `PartitionRequest` class property,\n and returns a `Partitions` instance.\n E.g.\n @rule\n async def partition(\n request: DryCleaningRequest.PartitionRequest[DryCleaningFieldSet]\n # or `request: DryCleaningRequest.PartitionRequest` if file linter\n subsystem: DryCleaningSubsystem,\n ) -> Partitions[DryCleaningFieldSet, Any]:\n if subsystem.skip:\n return Partitions()\n\n # One possible implementation\n return Partitions.single_partition(request.field_sets)\n\n 2. A rule which takes an instance of your request type's `Batch` class property, and\n returns a `LintResult instance.\n E.g.\n @rule\n async def dry_clean(\n request: DryCleaningRequest.Batch,\n ) -> LintResult:\n ...\n\nLastly, register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules()\n ]", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "LintRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BanditRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BufLintRequest", + "BuildifierRequest", + "DocformatterRequest", + "Flake8Request", + "GofmtRequest", + "GoogleJavaFormatRequest", + "HadolintRequest", + "HelmLintRequest", + "IsortRequest", + "KtlintRequest", + "PyUpgradeRequest", + "PylintRequest", + "RegexLintRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "ScalafmtRequest", + "ShellcheckRequest", + "ShfmtRequest", + "SpectralRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', linter_name: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), _render_message: 'bool' = True)", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.helm, pants.backend.experimental.openapi.lint.spectral, pants.backend.project_info, pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pylint, pants.backend.shell.lint.shellcheck, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.lint.LintSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.lint.lint" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.PartitionRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "PartitionRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.package.AllPackageableTargets": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "AllPackageableTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.find_all_packageable_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.BuiltPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "is_union": false, + "module": "pants.core.goals.package", + "name": "BuiltPackage", + "provider": "pants.backend.awslambda.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.google_cloud_function.python, pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.package.environment_aware_package", + "pants.core.target_types.package_archive_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.core.goals.package.EnvironmentAwarePackageRequest": { + "consumed_by_rules": [ + "pants.core.goals.package.environment_aware_package" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request class to request a `BuiltPackage` in an environment-aware fashion.", + "is_union": false, + "module": "pants.core.goals.package", + "name": "EnvironmentAwarePackageRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target" + ] + }, + "pants.core.goals.package.Package": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "Package", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.package_asset" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.PackageFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "documentation": "The fields necessary to build an asset from a target.", + "is_union": true, + "module": "pants.core.goals.package", + "name": "PackageFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ArchiveFieldSet", + "DeployJarFieldSet", + "DockerFieldSet", + "GoBinaryFieldSet", + "HelmPackageFieldSet", + "PackageWarFileFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonAwsLambdaFieldSet", + "PythonDistributionFieldSet", + "PythonGoogleCloudFunctionFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.package.environment_aware_package" + ] + }, + "pants.core.goals.package.PackageSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "PackageSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.Publish": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "Publish", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "FieldSet for PublishRequest.\n\nUnion members may list any fields required to fulfill the instantiation of the\n`PublishProcesses` result of the publish rule.", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "HelmPublishFieldSet", + "PublishDockerImageFieldSet", + "PublishPythonPackageFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishProcesses": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcesses", + "provider": "pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.core", + "returned_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.python.goals.publish.twine_upload", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.package_for_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishProcessesRequest": { + "consumed_by_rules": [ + "pants.core.goals.publish.package_for_publish" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Internal request taking all field sets for a target and turning it into a `PublishProcesses`\ncollection (via registered publish plugins).", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcessesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "Implement a union member subclass of this union class along with a PublishFieldSet subclass\nthat appoints that member subclass in order to receive publish requests for targets compatible\nwith the field set.\n\nThe `packages` hold all artifacts produced for a given target to be published.\n\nExample:\n\n PublishToMyRepoRequest(PublishRequest):\n pass\n\n PublishToMyRepoFieldSet(PublishFieldSet):\n publish_request_type = PublishToMyRepoRequest\n\n # Standard FieldSet semantics from here on:\n required_fields = (MyRepositories,)\n ...", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PublishDockerImageRequest", + "PublishHelmChartRequest", + "PublishPythonPackageRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.publish.package_for_publish" + ] + }, + "pants.core.goals.publish.PublishSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.Repl": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "Repl", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.ReplImplementation": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "A REPL implementation for a specific language or runtime.\n\nProxies from the top-level `repl` goal to an actual implementation.", + "is_union": true, + "module": "pants.core.goals.repl", + "name": "ReplImplementation", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "IPythonRepl", + "PythonRepl", + "ScalaRepl" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplRequest", + "provider": "pants.backend.experimental.scala, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.Run": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "Run", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.run.run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.RunDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target", + "pants.jvm.package.deploy_jar" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Like RunRequest, but launches the process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunDebugAdapterRequest", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request", + "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary", + "pants.backend.shell.shell_command.run_shell_debug_adapter_binary", + "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary from a target to run a program/script.", + "is_union": true, + "module": "pants.core.goals.run", + "name": "RunFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployJarFieldSet", + "DockerFieldSet", + "GoBinaryFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonSourceFieldSet", + "RunShellCommand" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.package.deploy_jar" + ], + "dependents": [ + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": "RunRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunRequest", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.run.run" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.AllOwnedSources": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "All files in the project already owned by targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "AllOwnedSources", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.determine_all_owned_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.DisjointSourcePutativeTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Putative target whose sources don't overlap with those of any existing targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "DisjointSourcePutativeTarget", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditBuildFilesRequest": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "EditBuildFilesRequest(putative_targets: 'PutativeTargets')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditBuildFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditedBuildFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": [ + "pants.core" + ], + "documentation": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditedBuildFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTarget": { + "consumed_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A potential target to add, detected by various heuristics.\n\nThis class uses the term \"target\" in the loose sense. It can also represent an invocation of a\ntarget-generating macro.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTarget", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargets": { + "consumed_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": [ + "builtins", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "PutativeTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": true, + "module": "pants.core.goals.tailor", + "name": "PutativeTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PutativeDockerTargetsRequest", + "PutativeGoTargetsRequest", + "PutativeHelmChartTargetsRequest", + "PutativeJavaTargetsRequest", + "PutativeKotlinTargetsRequest", + "PutativeOpenApiTargetsRequest", + "PutativeProtobufTargetsRequest", + "PutativePythonTargetsRequest", + "PutativeScalaTargetsRequest", + "PutativeShellTargetsRequest", + "PutativeTerraformTargetsRequest", + "PutativeThriftTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.TailorGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.TailorSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.tailor" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.UniquelyNamedPutativeTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Putative targets that have no name conflicts with existing targets (or each other).", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "UniquelyNamedPutativeTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.test.Batch": { + "consumed_by_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request", + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "pants.backend.helm.test.unittest.run_helm_unittest" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "Batch", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.test.BuildPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "BuildPackageDependenciesRequest(field: 'RuntimePackageDependenciesField')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuildPackageDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.BuiltPackageDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuiltPackageDependencies", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.CoverageDataCollection": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.python" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "CoverageDataCollection", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCoverageDataCollection", + "PytestCoverageDataCollection" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.CoverageReports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.process", + "pants.engine.target", + "pants.option.global_options" + ], + "dependents": [ + "pants.core" + ], + "documentation": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "CoverageReports", + "provider": "pants.backend.experimental.go, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.PartitionRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "PartitionRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.test.Test": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.engine.console", + "pants.engine.desktop", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.session", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "Test", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.run_tests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Like TestDebugRequest, but launches the test process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request", + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test", + "pants.jvm.test.junit.setup_junit_debug_adapter_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestDebugRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "TestDebugRequest(process: 'InteractiveProcess')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.generate_go_tests_debug_request", + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestExtraEnv": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "TestExtraEnv(env: 'EnvironmentVars')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestExtraEnv", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.get_filtered_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary to run tests on a target.", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestFieldSet", + "HelmUnitTestFieldSet", + "JunitTestFieldSet", + "PythonTestFieldSet", + "ScalatestTestFieldSet", + "Shunit2FieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "Base class for plugin types wanting to be run as part of `test`.\n\nPlugins should define a new type which subclasses this type, and set the\nappropriate class variables.\nE.g.\n class DryCleaningRequest(TestRequest):\n tool_subsystem = DryCleaningSubsystem\n field_set_type = DryCleaningFieldSet\n\nThen register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules(),\n ]", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestRequest", + "HelmUnitTestRequest", + "JunitTestRequest", + "PyTestRequest", + "ScalatestTestRequest", + "Shunit2TestRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.go", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', addresses: 'tuple[Address, ...]', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', partition_description: 'str | None' = None, coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None)", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestResult", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.jvm.test.junit.run_junit_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_test", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.test.run_tests", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithBlackRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithBlackRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithYapfRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithYapfRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedFieldsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedFieldsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedTargetsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RewrittenBuildFile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.core" + ], + "documentation": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.RewrittenBuildFileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "RewrittenBuildFileRequest(path: 'str', lines: 'tuple[str, ...]', colors_enabled: 'bool')", + "is_union": true, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFileRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "FormatWithBlackRequest", + "FormatWithYapfRequest", + "RenameDeprecatedFieldsRequest", + "RenameDeprecatedTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.debug_adapter.DebugAdapterSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.debug_adapter", + "name": "DebugAdapterSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_debug_adapter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrap": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.system_binaries.find_python" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "PythonBootstrap(interpreter_names: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrap", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrapSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_python_bootstrap" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrapSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap._ExpandInterpreterSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_ExpandInterpreterSearchPathsRequest(interpreter_search_paths: 'Sequence[str]', env_tgt: 'EnvironmentTarget')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_ExpandInterpreterSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.subsystems.python_bootstrap._PyEnvPathsRequest": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap._get_pyenv_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_PyEnvPathsRequest(env_tgt: 'EnvironmentTarget', pyenv_local: 'bool' = False)", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_PyEnvPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.subsystems.python_bootstrap._SearchPaths": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": "_SearchPaths(paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_SearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.subsystems.python_bootstrap._get_pyenv_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.target_types.AllAssetTargets": { + "consumed_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.find_all_assets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.core.target_types.AllAssetTargetsByPath": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsByPath", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.core.target_types.AllAssetTargetsRequest": { + "consumed_by_rules": [ + "pants.core.target_types.find_all_assets" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "AllAssetTargetsRequest()", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ] + }, + "pants.core.target_types.ArchiveFieldSet": { + "consumed_by_rules": [ + "pants.core.target_types.package_archive_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ArchiveFieldSet(address: 'Address', packages: 'ArchivePackagesField', files: 'ArchiveFilesField', format_field: 'ArchiveFormatField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.core.target_types", + "name": "ArchiveFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateFileSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_file_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateFileSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateResourceSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_resource_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateResourceSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.RelocateFilesViaCodegenRequest": { + "consumed_by_rules": [ + "pants.core.target_types.relocate_files" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "RelocateFilesViaCodegenRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.util_rules.archive.CreateArchive": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.create_archive" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A request to create an archive.\n\nAll files in the input snapshot will be included in the resulting archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "CreateArchive", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.package_archive_target" + ] + }, + "pants.core.util_rules.archive.ExtractedArchive": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.core" + ], + "documentation": "The result of extracting an archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "ExtractedArchive", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.core.util_rules.archive.MaybeExtractArchiveRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A request to extract a single archive file (otherwise returns the input digest).\n\n:param digest: The digest of the archive to maybe extract. If the archive contains a single file\n which matches a known suffix, the `ExtractedArchive` will contain the extracted digest.\n Otherwise the `ExtractedArchive` will contain this digest.\n:param use_suffix: If provided, extracts the single file archive as if it had this suffix.\n Useful in situations where the file is archived then renamed.\n (E.g. A Python `.whl` is a renamed `.zip`, so the client should provide `\".zip\"`)", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "MaybeExtractArchiveRequest", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.asdf.AsdfToolPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "AsdfToolPathsRequest(env_tgt: 'EnvironmentTarget', tool_name: 'str', tool_description: 'str', resolve_standard: 'bool', resolve_local: 'bool', paths_option_name: 'str', bin_relpath: 'str' = 'bin')", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.asdf.AsdfToolPathsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.base.build_root", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.core" + ], + "documentation": "AsdfToolPathsResult(tool_name: 'str', standard_tool_paths: 'tuple[str, ...]' = (), local_tool_paths: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.config_files.ConfigFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Config files used by a tool run by Pants.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.config_files.ConfigFilesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Resolve the specified config files if given, else look for candidate config files if\ndiscovery is enabled.\n\nFiles in `check_existence` only need to exist, whereas files in `check_content` both must exist\nand contain the bytes snippet in the file.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.distdir.DistDir": { + "consumed_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.lint.lint", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests" + ], + "dependencies": [ + "pants.base.build_root" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "The directory to which we write distributable files.", + "is_union": false, + "module": "pants.core.util_rules.distdir", + "name": "DistDir", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.distdir.get_distdir" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.environments.EnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "EnvironmentNameRequest(raw_value: 'str', description_of_origin: 'str')", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "EnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shell_command.run_shell_command", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run" + ] + }, + "pants.core.util_rules.environments.OptionField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "OptionField", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.core.util_rules.environments.SingleEnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Asserts that all of the given environment strings resolve to the same EnvironmentName.", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "SingleEnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.util_rules.external_tool.DownloadedExternalTool": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "DownloadedExternalTool", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.external_tool.ExternalToolRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ExternalToolRequest(download_file_request: 'DownloadFile', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "ExternalToolRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.partitions.Partitions": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.kotlin", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A collection of (, ) pairs.\n\nWhen implementing a plugin, one of your rules will return this type, taking in a\n`PartitionRequest` specific to your plugin.\n\nThe return likely will fit into one of:\n - Returning empty partitions: E.g. if your tool is being skipped.\n - Returning one partition. The partition may contain all of the inputs\n (as will likely be the case for target-based plugins) or a subset (which will likely be the\n case for targetless plugins).\n - Returning >1 partition. This might be the case if you can't run\n the tool on all the inputs at once. E.g. having to run a Python tool on XYZ with Py3,\n and files ABC with Py2.", + "is_union": false, + "module": "pants.core.util_rules.partitions", + "name": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations, pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.autoflake, pants.backend.experimental.python.lint.pyupgrade, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.project_info, pants.backend.python, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pylint, pants.backend.python.lint.yapf, pants.backend.shell, pants.backend.shell.lint.shellcheck, pants.backend.shell.lint.shfmt", + "returned_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.project_info.regex_lint.partition_inputs", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.util_rules.source_files.SourceFiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "dependencies": [ + "builtins", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A merged snapshot of the `sources` fields of multiple targets.", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.source_files.determine_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.source_files.SourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.core.util_rules.source_files.determine_source_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "SourceFilesRequest(sources_fields: Iterable[pants.engine.target.SourcesField], *, for_sources_types: Iterable[Type[pants.engine.target.SourcesField]] = (,), enable_codegen: bool = False)", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "StrippedFileName(value: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileName", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileNameRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "StrippedFileNameRequest(file_path: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFileNames": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFileNames", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironment": { + "consumed_by_rules": [ + "construct_env_aware_scope_subprocess_environment" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironmentVars": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironmentVars", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.BashBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The `bash` binary.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.get_bash" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.system_binaries.get_bash" + ] + }, + "pants.core.util_rules.system_binaries.BashBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_bash" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "BashBinaryRequest(search_path: 'SearchPath' = SearchPath(['/usr/bin', '/bin', '/usr/local/bin']))", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.system_binaries.get_bash" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.cgo_binaries", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "BinaryPath(path: 'str', fingerprint: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPathRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request to find a binary of a given name.\n\nIf `check_file_entries` is `True` a BinaryPathRequest will consider any entries in the\n`search_path` that are file paths in addition to traditional directory paths.\n\nIf a `test` is specified all binaries that are found will be executed with the test args and\nonly those binaries whose test executions exit with return code 0 will be retained.\nAdditionally, if test execution includes stdout content, that will be used to fingerprint the\nbinary path so that upgrades and downgrades can be detected. A reasonable test for many programs\nmight be `BinaryPathTest(args=[\"--version\"])` since it will both ensure the program runs and\nalso produce stdout text that changes upon upgrade or downgrade of the binary at the discovered\npath.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPathRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPaths": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShims": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker" + ], + "documentation": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `bin_directory` added to\nPATH so that the binaries are available for execution.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShims", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.find_docker" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShimsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request to create shims for one or more system binaries.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShimsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.find_docker" + ] + }, + "pants.core.util_rules.system_binaries.CatBinary": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.util_rules.system_binaries.find_cat_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CatBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_cat_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ChmodBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ChmodBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.CpBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CpBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_cp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.DiffBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format" + ] + }, + "pants.core.util_rules.system_binaries.DiffBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "DiffBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format" + ] + }, + "pants.core.util_rules.system_binaries.GitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.GunzipBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GunzipBinary(python: 'PythonBinary')", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GunzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip", + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.GunzipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GunzipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GunzipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.MaybeGitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "pants.vcs.git.get_git_worktree" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MaybeGitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git", + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MkdirBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MkdirBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MvBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MvBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.OpenBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "OpenBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_open" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.PythonBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.system_binaries.find_gunzip", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "A Python3 interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nPython is usable for `@rule` scripting independently of `pants.backend.python`, but currently\nthirdparty dependencies are not supported, because PEX lives in that backend.\n\nTODO: Consider extracting PEX out into the core in order to support thirdparty dependencies.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "PythonBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ReadlinkBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ] + }, + "pants.core.util_rules.system_binaries.TarBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TarBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TouchBinary": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TouchBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_touch" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.UnzipBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "pants.jvm.classpath.loose_classfiles" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_unzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.UnzipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "UnzipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.ZipBinary": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.core.util_rules.system_binaries.find_zip_wrapper", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.find_zip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive" + ] + }, + "pants.core.util_rules.system_binaries.ZipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ZipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive" + ] + }, + "pants.engine.addresses.Addresses": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.dependees_goal", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.filter_targets.filter_targets", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.java", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.addresses", + "name": "Addresses", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.addresses.UnparsedAddressInputs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Raw addresses that have not been parsed yet.\n\nYou can convert these into fully normalized `Addresses` and `Targets` like this:\n\n await Get(Addresses, UnparsedAddressInputs([\"//:tgt1\", \"//:tgt2\"], owning_address=None)\n await Get(Targets, UnparsedAddressInputs([...], owning_address=Address(\"original\"))\n\nThis is intended for contexts where the user specifies addresses outside of the `dependencies`\nfield, such as through an option or a special field on a target that is not normal\n`dependencies`. You should not use this to resolve the `dependencies` field; use\n`await Get(Addresses, DependenciesRequest)` for that.\n\nIf the addresses are coming from a target's fields, set `owning_address` so that relative\nreferences like `:sibling` work properly.\n\nUnlike the `dependencies` field, this type does not work with `!` and `!!` ignores.\n\nSet `description_of_origin` to a value like \"CLI arguments\" or \"the `dependencies` field\nfrom {tgt.address}\". It is used for better error messages.", + "is_union": false, + "module": "pants.engine.addresses", + "name": "UnparsedAddressInputs", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ] + }, + "pants.engine.desktop.OpenFilesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "OpenFilesRequest(files: Iterable[pathlib.PurePath], *, error_if_open_not_found: bool = True)", + "is_union": false, + "module": "pants.engine.desktop", + "name": "OpenFilesRequest", + "provider": "pants.engine.desktop", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.env_vars.EnvironmentVarsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Requests a subset of the variables set in the environment.\n\nRequesting only the relevant subset of the environment reduces invalidation caused by unrelated\nchanges.", + "is_union": false, + "module": "pants.engine.env_vars", + "name": "EnvironmentVarsRequest", + "provider": "pants.engine.env_vars", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_env_aware_scope_apache_thrift", + "construct_env_aware_scope_docker", + "construct_env_aware_scope_go_generate", + "construct_env_aware_scope_golang", + "construct_env_aware_scope_jvm", + "construct_env_aware_scope_pex", + "construct_env_aware_scope_python_bootstrap", + "construct_env_aware_scope_python_native_code", + "construct_env_aware_scope_shell_setup", + "construct_env_aware_scope_subprocess_environment", + "construct_env_aware_scope_test", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.export.export", + "pants.core.goals.test.get_filtered_environment", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.subsystems.python_bootstrap._get_pyenv_paths", + "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.environment.EnvironmentName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.shell", + "pants.core" + ], + "documentation": "The normalized name for an environment, from `[environments-preview].names`, after applying\nthings like the __local__ matcher.\n\nNote that we have this type, rather than only `EnvironmentTarget`, for a more efficient rule\ngraph. This node impacts the equality of many downstream nodes, so we want its identity to only\nbe a single string, rather than a Target instance.", + "is_union": false, + "module": "pants.engine.environment", + "name": "EnvironmentName", + "provider": "pants.engine.environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shell_command.run_shell_command", + "pants.core.goals.check.check", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.fs.CreateDigest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to create a Digest with the input FileContent and/or Directory values.\n\nThe engine will create any parent directories necessary, e.g. `FileContent('a/b/c.txt')` will\nresult in `a/`, `a/b`, and `a/b/c.txt` being created. You only need to use `Directory` to\ncreate an empty directory.\n\nThis does _not_ actually materialize the digest to the build root. You must use\n`engine.fs.Workspace` in a `@goal_rule` to save the resulting digest to disk.", + "is_union": false, + "module": "pants.engine.fs", + "name": "CreateDigest", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_analysis.generate_import_config", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.setup_py.generate_setup_py", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.strip_jar.strip_jar.build_processors" + ] + }, + "pants.engine.fs.DigestSubset": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to get a subset of a digest.\n\nExample:\n\n result = await Get(Digest, DigestSubset(original_digest, PathGlobs([\"subdir1\", \"f.txt\"]))", + "is_union": false, + "module": "pants.engine.fs", + "name": "DigestSubset", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.util_rules.dists.find_build_system", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "pants.engine.fs.DownloadFile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Retrieve the contents of a file via an HTTP GET request or directly for local file:// URLs.\n\nTo compute the `expected_digest`, manually download the file, then run `shasum -a 256` to\ncompute the fingerprint and `wc -c` to compute the expected length of the downloaded file in\nbytes.", + "is_union": false, + "module": "pants.engine.fs", + "name": "DownloadFile", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.engine.fs.PathGlobs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "PathGlobs(globs: 'Iterable[str]', glob_match_error_behavior: 'GlobMatchErrorBehavior' = , conjunction: 'GlobExpansionConjunction' = , description_of_origin: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.fs", + "name": "PathGlobs", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "pants.backend.shell.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.core.goals.fix.fix_batch", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.util_rules.config_files.find_config_file", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ] + }, + "pants.engine.internals.graph.OwnersRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request for the owners of a set of file paths.\n\nTODO: This is widely used as an effectively-public API. It should probably move to\n`pants.engine.target`.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "OwnersRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.synthetic_targets.SyntheticAddressMaps": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "A collection of `SyntheticAddressMap` for all synthetic target adaptors.", + "is_union": false, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticAddressMaps", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.synthetic_targets.SyntheticTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "Union members of the `SyntheticTargetsRequest` should implement a rule returning an instance\nof a `SyntheticAddressMaps`.", + "is_union": true, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticTargetsRequest", + "provider": "pants.engine.internals.synthetic_targets", + "returned_by_rules": [], + "union_members": [ + "PythonSyntheticLockfileTargetsRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.target_adaptor.TargetAdaptorRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "TargetAdaptorRequest(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.target_adaptor", + "name": "TargetAdaptorRequest", + "provider": "pants.engine.internals.target_adaptor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement" + ] + }, + "pants.engine.process.InteractiveProcess": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "InteractiveProcess(argv: 'Iterable[str]', *, env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), run_in_workspace: 'bool' = False, forward_signals_to_process: 'bool' = True, restartable: 'bool' = False, append_only_caches: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, keep_sandboxes: 'KeepSandboxes' = ) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "InteractiveProcess", + "provider": "pants.backend.experimental.helm, pants.engine.process", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.export.export", + "pants.core.goals.publish.run_publish", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.process.Process": { + "consumed_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.go.util_rules.sdk", + "pants.backend.google_cloud_function.python", + "pants.backend.helm.util_rules.tool", + "pants.backend.python", + "pants.backend.terraform.dependency_inference", + "pants.backend.terraform.tool", + "pants.engine.env_vars", + "pants.engine.platform", + "pants.engine.target", + "pants.jvm.jdk_rules", + "pants.jvm.resolve.coursier_setup" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell" + ], + "documentation": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , platform: 'Platform | None' = None, remote_cache_speculation_delay_millis: 'int' = 0) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "Process", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.terraform, pants.backend.shell, pants.core, pants.engine.process", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.run_shell_command_request", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.process.ProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Result of executing a process which should not fail.\n\nIf the process has a non-zero exit code, this will raise an exception, unlike\nFallibleProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessResult", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shell_command.run_shell_command", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.engine.process.ProductDescription": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ProductDescription(value: 'str')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProductDescription", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactory": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "is_union": false, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactory", + "provider": "pants.core", + "returned_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback", + "pants.goal.stats_aggregator.construct_callback" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A request for a particular WorkunitsCallbackFactory.", + "is_union": true, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactoryRequest", + "provider": "pants.engine.streaming_workunit_handler", + "returned_by_rules": [], + "union_members": [ + "AnonymousTelemetryCallbackFactoryRequest", + "StatsAggregatorCallbackFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.AllTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Find all targets in the project.\n\nUse with either `AllUnexpandedTargets` or `AllTargets`.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ] + }, + "pants.engine.target.CoarsenedTargets": { + "consumed_by_rules": [ + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "The CoarsenedTarget roots of a transitive graph walk for some addresses.\n\nTo collect all reachable CoarsenedTarget members, use `def closure`.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargets", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.jvm.classpath.classpath" + ] + }, + "pants.engine.target.CoarsenedTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to get CoarsenedTargets for input roots.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ] + }, + "pants.engine.target.DependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "DependenciesRequest(field: 'Dependencies', include_special_cased_deps: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.jvm.package.war.package_war" + ] + }, + "pants.engine.target.FieldDefaultFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.python" + ], + "documentation": "Registers a dynamic default for a Field.\n\nSee `FieldDefaults`.", + "is_union": true, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "JvmResolveFieldDefaultFactoryRequest", + "PythonResolveFieldDefaultFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldDefaultFactoryResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "A wrapper for a function which computes the default value of a Field.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldSetsPerTargetRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "FieldSetsPerTargetRequest(field_set_superclass: 'Type[_FS]', targets: 'Iterable[Target]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target" + ] + }, + "pants.engine.target.GenerateSourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A request to go from protocol sources -> a particular language.\n\nThis should be subclassed for each distinct codegen implementation. The subclasses must define\nthe class properties `input` and `output`. The subclass must also be registered via\n`UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest)`, for example.\n\nThe rule to actually implement the codegen should take the subclass as input, and it must\nreturn `GeneratedSources`.\n\nThe `exportable` attribute disables the use of this codegen by the `export-codegen` goal when\nset to False.\n\nFor example:\n\n class GenerateFortranFromAvroRequest:\n input = AvroSources\n output = FortranSources\n\n @rule\n def generate_fortran_from_avro(request: GenerateFortranFromAvroRequest) -> GeneratedSources:\n ...\n\n def rules():\n return [\n generate_fortran_from_avro,\n UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateDockerContextFiles", + "GenerateDockerfileRequest", + "GenerateFileSourceRequest", + "GenerateFilesFromShellCommandRequest", + "GenerateGoFromProtobufRequest", + "GenerateJavaFromProtobufRequest", + "GeneratePythonFromProtobufRequest", + "GeneratePythonFromSetuptoolsSCMRequest", + "GeneratePythonFromThriftRequest", + "GenerateResourceSourceRequest", + "GenerateScalaFromProtobufRequest", + "RelocateFilesViaCodegenRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.GenerateTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.plugin_development", + "pants.backend.python" + ], + "documentation": "GenerateTargetsRequest(generator: '_TargetGenerator', template_address: 'Address', template: 'dict[str, Any]', overrides: 'dict[str, dict[Address, dict[str, Any]]]')", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateFromPantsRequirementsRequest", + "GenerateFromPipenvRequirementsRequest", + "GenerateFromPoetryRequirementsRequest", + "GenerateFromPythonRequirementsRequest", + "GenerateTargetsFromGoModRequest", + "GenerateTargetsFromPexBinaries" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.GeneratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.python", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.platform", + "pants.engine.target" + ], + "dependents": [], + "documentation": "GeneratedSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.shell.shell_command.run_shell_command", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.relocate_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.GeneratedTargets": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.base.build_root", + "pants.core", + "pants.engine.fs", + "pants.engine.internals.target_adaptor", + "pants.engine.unions" + ], + "dependents": [], + "documentation": "A mapping of the address of generated targets to the targets themselves.", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedTargets", + "provider": "pants.backend.experimental.go, pants.backend.plugin_development, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.HydrateSourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "HydrateSourcesRequest(field: 'SourcesField', *, for_sources_types: 'Iterable[type[SourcesField]]' = (,), enable_codegen: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "HydrateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.InferDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A request to infer dependencies by analyzing source files.\n\nTo set up a new inference implementation, subclass this class. Set the class property\n`infer_from` to the FieldSet subclass you are able to infer from. This will cause the FieldSet\nclass, and any subclass, to use your inference implementation.\n\nNote that there cannot be more than one implementation for a particular `FieldSet` class.\n\nRegister this subclass with `UnionRule(InferDependenciesRequest, InferFortranDependencies)`, for example.\n\nThen, create a rule that takes the subclass as a parameter and returns `InferredDependencies`.\n\nFor example:\n\n class InferFortranDependencies(InferDependenciesRequest):\n infer_from = FortranDependenciesInferenceFieldSet\n\n @rule\n def infer_fortran_dependencies(request: InferFortranDependencies) -> InferredDependencies:\n hydrated_sources = await Get(HydratedSources, HydrateSources(request.sources))\n ...\n return InferredDependencies(...)\n\n def rules():\n return [\n infer_fortran_dependencies,\n UnionRule(InferDependenciesRequest, InferFortranDependencies),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "InferDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "InferApacheThriftPythonDependencies", + "InferConftestDependencies", + "InferDockerDependencies", + "InferGoBinaryMainDependencyRequest", + "InferGoPackageDependenciesRequest", + "InferGoThirdPartyPackageDependenciesRequest", + "InferHelmChartDependenciesRequest", + "InferHelmDeploymentDependenciesRequest", + "InferHelmUnitTestChartDependencyRequest", + "InferInitDependencies", + "InferJavaSourceDependencies", + "InferKotlinJunitTestDependencyRequest", + "InferKotlinRuntimeDependencyRequest", + "InferKotlinSourceDependencies", + "InferOpenApiDocumentDependenciesRequest", + "InferOpenApiSourceDependenciesRequest", + "InferPexBinaryEntryPointDependency", + "InferProtobufDependencies", + "InferProtobufJavaRuntimeDependencyRequest", + "InferPythonCloudFunctionHandlerDependency", + "InferPythonDistributionDependencies", + "InferPythonImportDependencies", + "InferPythonLambdaHandlerDependency", + "InferPythonProtobufDependencies", + "InferScalaLibraryDependencyRequest", + "InferScalaPBRuntimeDependencyRequest", + "InferScalaPluginDependenciesRequest", + "InferScalaSourceDependencies", + "InferShellDependencies", + "InferTerraformModuleDependenciesRequest", + "InferThriftDependencies" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.InferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.addresses", + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": [], + "documentation": "InferredDependencies(include: 'Iterable[Address]', *, exclude: 'Iterable[Address]' = ()) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "InferredDependencies", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.google_cloud_function.python, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.PluginField": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": null, + "is_union": true, + "module": "pants.engine.target", + "name": "PluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "SkipScalafmtField" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.SourcesPathsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to resolve the file names of the `source`/`sources` field.\n\nUse via `Get(SourcesPaths, SourcesPathRequest(tgt.get(SourcesField))`.\n\nThis is faster than `Get(HydratedSources, HydrateSourcesRequest)` because it does not snapshot\nthe files and it only resolves the file names.\n\nThis does not consider codegen, and only captures the files from the field. Use\n`HydrateSourcesRequest` to use codegen.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPathsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettings": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings", + "pants.backend.codegen.thrift.target_types.generator_settings", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.scala.target_types.scala_settings_request", + "pants.backend.shell.target_types.generator_settings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.TargetFilesGeneratorSettingsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "An optional union to provide dynamic settings for a `TargetFilesGenerator`.\n\nSee `TargetFilesGenerator`.", + "is_union": true, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettingsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GeneratorSettingsRequest", + "GeneratorSettingsRequest", + "PythonFilesGeneratorSettingsRequest", + "ScalaSettingsRequest", + "ShellGeneratorSettingsRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.TargetRootsToFieldSetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "TargetRootsToFieldSetsRequest(field_set_superclass: 'Type[_FS]', *, goal_description: 'str', no_applicable_targets_behavior: 'NoApplicableTargetsBehavior', shard: 'int' = 0, num_shards: 'int' = -1) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetRootsToFieldSetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.run_publish", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.target.Targets": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.go_generate" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A heterogeneous collection of instances of Target subclasses.\n\nWhile every element will be a subclass of `Target`, there may be many different `Target` types\nin this collection, e.g. some `FileTarget` and some `PythonTestTarget`.\n\nOften, you will want to filter out the relevant targets by looking at what fields they have\nregistered, e.g.:\n\n valid_tgts = [tgt for tgt in tgts if tgt.has_fields([Compatibility, PythonSources])]\n\nYou should not check the Target's actual type because this breaks custom target types;\nfor example, prefer `tgt.has_field(PythonTestsSourcesField)` to\n`isinstance(tgt, PythonTestsTarget)`.", + "is_union": false, + "module": "pants.engine.target", + "name": "Targets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.engine.target.TransitiveTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to get the transitive dependencies of the input roots.\n\nResolve the transitive targets with `await Get(TransitiveTargets,\nTransitiveTargetsRequest([addr1, addr2])`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.paths", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shell_command.prepare_shell_command_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.UnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.backend.python", + "pants.core" + ], + "documentation": "Like `Targets`, but will not replace target generators with their generated targets (e.g.\nreplace `python_sources` \"BUILD targets\" with generated `python_source` \"file targets\").", + "is_union": false, + "module": "pants.engine.target", + "name": "UnexpandedTargets", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.project_info.peek.peek", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.engine.target.ValidateDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to validate dependencies after they have been computed.\n\nAn implementing rule should raise an exception if dependencies are invalid.", + "is_union": true, + "module": "pants.engine.target", + "name": "ValidateDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "PythonValidateDependenciesRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.ValidatedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [], + "documentation": "ValidatedDependencies()", + "is_union": false, + "module": "pants.engine.target", + "name": "ValidatedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.WrappedTargetRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Used with `WrappedTarget` to get the Target corresponding to an address.\n\n`description_of_origin` is used for error messages when the address does not actually exist. If\nyou are confident this cannot happen, set the string to something like ``.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.shell_command.run_shell_command_request" + ] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetry": { + "consumed_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetry", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_anonymous_telemetry" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetryCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetryCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorSubsystem": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_stats" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.bsp.compile.BSPClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A wrapper around a `ClasspathEntryRequest` which notifies the BSP client on completion.\n\nTODO: Because this struct contains a `task_id`, messages will re-render in every run, even\nthough the underlying computation does not re-run. See #15426 for an alternative.", + "is_union": false, + "module": "pants.jvm.bsp.compile", + "name": "BSPClasspathEntryRequest", + "provider": "pants.jvm.bsp.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.classpath.Classpath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "Classpath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.classpath" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.classpath.LooseClassfiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.scala", + "pants.core", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "The contents of a classpath entry as loose classfiles.\n\nNote that `ClasspathEntry` and `Classpath` both guarantee that they contain JAR files, and so\ncreating loose classfiles from them involves extracting their entry.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "LooseClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.compile.ClasspathDependenciesRequest": { + "consumed_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ClasspathDependenciesRequest(request: 'ClasspathEntryRequest', ignore_generated: 'bool' = False)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathDependenciesRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.ClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nIf `[jvm].reproducible_jars`, then all JARs in a classpath entry must have had timestamps\nstripped -- either natively, or via the `pants.jvm.strip_jar` rules.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.\n\nNote: Non-jar artifacts (e.g., executables with \"exe\" packaging) may end up on the classpath if\nthey are dependencies.\nTODO: Does there need to be a filtering mechanism to exclude non-jar artifacts in the default case?", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.jvm.compile", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.jvm.compile.required_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.classpath.classpath", + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.compile.ClasspathEntryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "A request for a ClasspathEntry for the given CoarsenedTarget and resolve.\n\nTODO: Move to `classpath.py`.", + "is_union": true, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [ + "CompileJavaSourceRequest", + "CompileKotlinSourceRequest", + "CompileScalaSourceRequest", + "CoursierFetchRequest", + "DeployJarClasspathEntryRequest", + "JvmResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.compile.ClasspathEntryRequestFactory": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.calculate_jvm_request_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.compile.ClasspathEntryRequests": { + "consumed_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java, pants.jvm.compile", + "returned_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.compile.required_classfiles" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process", + "pants.jvm.bsp.compile", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resources.assemble_resources_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmTypeProvidingTargets": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AvailableThirdPartyArtifacts": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.ThirdPartySymbolMapping": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "The third party symbols provided by all `jvm_artifact` targets.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.symbol_mapper.FirstPartyMappingRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "An entry point for a specific implementation of mapping JVM package names to owning targets.\n\nAll implementations will be merged together.\n\nThe addresses should all be file addresses, rather than BUILD addresses.", + "is_union": true, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "FirstPartyMappingRequest", + "provider": "pants.jvm.dependency_inference.symbol_mapper", + "returned_by_rules": [], + "union_members": [ + "FirstPartyJavaTargetsMappingRequest", + "FirstPartyKotlinTargetsMappingRequest", + "FirstPartyScalaTargetsMappingRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMap": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "The first party symbols provided by a single inference implementation.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMap", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMapping": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "The merged first and third party symbols provided by all inference implementations.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.GenerateJvmLockfile": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.unions", + "pants.jvm.goals.lockfile", + "pants.jvm.resolve.common" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', artifacts: 'ArtifactRequirements')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.goals.lockfile.KnownJVMUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "KnownJVMUserResolveNamesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.RequestedJVMUserResolveNames": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "RequestedJVMUserResolveNames", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "Hook for backends to validate the artifact requirements requested for a resolve.\n\nThe main user is the Scala backend which will ensure scala-library is present in the resolve.", + "is_union": true, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [ + "ValidateResolveHasScalaRuntimeRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile._ValidateJvmArtifactsRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "_ValidateJvmArtifactsRequest(artifacts: 'ArtifactRequirements', resolve_name: 'str')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "_ValidateJvmArtifactsRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.jdk_rules.InternalJdk": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "InternalJdk", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.internal_jdk" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jdk_rules.JdkEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.process", + "pants.jvm.jdk_rules" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int', global_jvm_options: 'tuple[str, ...]', java_home_command: 'str')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkEnvironment", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JdkRequest": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Request for a JDK with a specific major version, or a default (`--jvm-jdk` or System).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkRequest", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JvmProcess": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.jvm_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JvmProcess(jdk: 'JdkEnvironment', argv: 'Iterable[str]', classpath_entries: 'Iterable[str]', input_digest: 'Digest', description: 'str', level: 'LogLevel' = , extra_jvm_options: 'Iterable[str] | None' = None, extra_nailgun_keys: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_env: 'Mapping[str, str] | None' = None, timeout_seconds: 'int | float | None' = None, cache_scope: 'ProcessCacheScope | None' = None, use_nailgun: 'bool' = True, remote_cache_speculation_delay: 'int | None' = None)", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JvmProcess", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.jdk_rules.Nailgun": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Nailgun(classpath_entry: 'ClasspathEntry')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "Nailgun", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.deploy_jar_classpath" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarClasspathEntryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarFieldSet": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "DeployJarFieldSet(address: 'Address', main_class: pants.jvm.target_types.JvmMainClassNameField, output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmDependenciesField, jdk_version: pants.jvm.target_types.JvmJdkField)", + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarFieldSet", + "provider": "pants.backend.experimental.java, pants.jvm.package.deploy_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.jvm.package.war.PackageWarFileFieldSet": { + "consumed_by_rules": [ + "pants.jvm.package.war.package_war" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "PackageWarFileFieldSet(address: 'Address', output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmWarDependenciesField, descriptor: pants.jvm.target_types.JvmWarDescriptorAddressField, content: pants.jvm.target_types.JvmWarContentField)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "PackageWarFileFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.jvm.package.war.RenderWarContentRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderWarContentRequest(content: pants.jvm.target_types.JvmWarContentField)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarContentRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderWarDeploymentDescriptorRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderWarDeploymentDescriptorRequest(descriptor: pants.jvm.target_types.JvmWarDescriptorAddressField, owning_address: pants.build_graph.address.Address)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarDeploymentDescriptorRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarContent": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.addresses", + "pants.jvm.package.war" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderedWarContent(digest: Digest)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarContent", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarDeploymentDescriptor": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.engine.target", + "pants.jvm.package.war" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderedWarDeploymentDescriptor(digest: Digest)", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.resolve.common.ArtifactRequirements": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "dependencies": [ + "pants.build_graph.address", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java" + ], + "documentation": "An ordered list of Coordinates used as requirements.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "ArtifactRequirements", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.common", + "returned_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.common.GatherJvmCoordinatesRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A request to turn strings of coordinates (`group:artifact:version`) and/or addresses to\n`jvm_artifact` targets into `ArtifactRequirements`.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "GatherJvmCoordinatesRequest", + "provider": "pants.jvm.resolve.common", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierFetchRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierFetchRequest", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierLockfileEntry": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A single artifact entry from a Coursier-resolved lockfile.\n\nThese fields are nearly identical to the JSON objects from the\n\"dependencies\" entries in Coursier's --json-output-file format.\nBut unlike Coursier's JSON report, a CoursierLockfileEntry\nincludes the content-address of the artifact fetched by Coursier\nand ingested by Pants.\n\nFor example, a Coursier JSON report dependency entry might look like this:\n\n```\n{\n \"coord\": \"com.chuusai:shapeless_2.13:2.3.3\",\n \"file\": \"/home/USER/.cache/coursier/v1/https/repo1.maven.org/maven2/com/chuusai/shapeless_2.13/2.3.3/shapeless_2.13-2.3.3.jar\",\n \"directDependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ],\n \"dependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ]\n}\n```\n\nThe equivalent CoursierLockfileEntry would look like this:\n\n```\nCoursierLockfileEntry(\n coord=\"com.chuusai:shapeless_2.13:2.3.3\", # identical\n file_name=\"shapeless_2.13-2.3.3.jar\" # PurePath(entry[\"file\"].name)\n direct_dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n file_digest=FileDigest(fingerprint=, ...),\n)\n```\n\nThe fields `remote_url` and `pants_address` are set by Pants if the `coord` field matches a\n`jvm_artifact` that had either the `url` or `jar` fields set.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierLockfileEntry", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.resolve.common" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolvedLockfile": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.common", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ResolvedClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A collection of resolved classpath entries.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspath": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.jvm.resolve.common", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "A fully fetched and merged classpath for running a JVM tool.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspathRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A request to set up the classpath for a JVM tool by fetching artifacts and merging the\nclasspath.\n\n:param prefix: if set, should be a relative directory that will\n be prepended to every classpath element. This is useful for\n keeping all classpath elements isolated under a single directory\n in a process invocation, where other inputs on the process's\n root directory might interfere with un-prefixed classpath\n entries (or vice versa).", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspathRequest", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_setup.Coursier": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "Coursier", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.coursier_setup.CoursierFetchProcess": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "CoursierFetchProcess(args: 'Tuple[str, ...]', input_digest: 'Digest', output_directories: 'Tuple[str, ...]', output_files: 'Tuple[str, ...]', description: 'str')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierFetchProcess", + "provider": "pants.jvm.resolve.coursier_setup", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_setup.CoursierSubsystem": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.jvm_tool.GenerateJvmLockfileFromTool": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.rules", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.java.dependency_inference.java_parser", + "pants.backend.java.lint.google_java_format.rules", + "pants.backend.kotlin.dependency_inference.kotlin_parser", + "pants.backend.kotlin.lint.ktlint.rules", + "pants.backend.scala.dependency_inference.scala_parser", + "pants.backend.scala.lint.scalafmt.rules", + "pants.backend.scala.test.scalatest", + "pants.jvm.strip_jar.strip_jar", + "pants.jvm.test.junit" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "is_union": false, + "module": "pants.jvm.resolve.jvm_tool", + "name": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.key.CoursierResolveKey": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.key", + "name": "CoursierResolveKey", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.key", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resources.JvmResourcesRequest": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resources", + "name": "JvmResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.strip_jar.strip_jar.StripJarCompiledClassfiles": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "StripJarCompiledClassfiles(digest: Digest)", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.strip_jar.strip_jar.StripJarRequest": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "StripJarRequest(digest: Digest, filenames: Tuple[str, ...])", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarRequest", + "provider": "pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.package_deploy_jar" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.jvm.subsystems.JvmSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_jvm", + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.target_types.jvm_resolve_field_default_factory", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.subsystems", + "name": "JvmSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_jvm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.target_types.JvmResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmJdkField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmJdkField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmResolveField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "JunitTestFieldSet(address: 'Address', sources: 'JunitTestSourceField', timeout: 'JunitTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'TestExtraEnvVarsField')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.test.junit.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.env_vars", + "pants.engine.target", + "pants.jvm.test.junit" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetup", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.test.junit.TestSetupRequest": { + "consumed_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "TestSetupRequest(field_set: 'JunitTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetupRequest", + "provider": "pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.util_rules.ExtractFileDigest": { + "consumed_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ExtractFileDigest(digest: 'Digest', file_path: 'str')", + "is_union": false, + "module": "pants.jvm.util_rules", + "name": "ExtractFileDigest", + "provider": "pants.jvm.util_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.option.global_options.GlobalOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.run.run", + "pants.core.util_rules.distdir.get_distdir", + "pants.jvm.jdk_rules.jvm_process" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.option.global_options", + "name": "GlobalOptions", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.scope.Scope": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "An options scope.", + "is_union": false, + "module": "pants.option.scope", + "name": "Scope", + "provider": "pants.option.scope", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_scope_", + "construct_scope_add_trailing_comma", + "construct_scope_anonymous_telemetry", + "construct_scope_apache_thrift", + "construct_scope_autoflake", + "construct_scope_bandit", + "construct_scope_black", + "construct_scope_buf", + "construct_scope_build_deprecations_fixer", + "construct_scope_buildifier", + "construct_scope_check", + "construct_scope_count_loc", + "construct_scope_coursier", + "construct_scope_coverage_py", + "construct_scope_debug_adapter", + "construct_scope_debugpy", + "construct_scope_dependees", + "construct_scope_dependencies", + "construct_scope_docformatter", + "construct_scope_docker", + "construct_scope_dockerfile_parser", + "construct_scope_download_terraform", + "construct_scope_experimental_bsp", + "construct_scope_experimental_deploy", + "construct_scope_export", + "construct_scope_export_codegen", + "construct_scope_filedeps", + "construct_scope_filter", + "construct_scope_fix", + "construct_scope_flake8", + "construct_scope_fmt", + "construct_scope_generate_lockfiles", + "construct_scope_go_generate", + "construct_scope_go_test", + "construct_scope_gofmt", + "construct_scope_golang", + "construct_scope_google_java_format", + "construct_scope_grpc_python_plugin", + "construct_scope_hadolint", + "construct_scope_helm", + "construct_scope_helm_k8s_parser", + "construct_scope_helm_post_renderer", + "construct_scope_helm_unittest", + "construct_scope_ipython", + "construct_scope_isort", + "construct_scope_java_infer", + "construct_scope_javac", + "construct_scope_junit", + "construct_scope_jvm", + "construct_scope_kotlin", + "construct_scope_kotlin_infer", + "construct_scope_kotlinc", + "construct_scope_ktlint", + "construct_scope_lambdex", + "construct_scope_lint", + "construct_scope_list", + "construct_scope_mypy", + "construct_scope_mypy_protobuf", + "construct_scope_openapi", + "construct_scope_package", + "construct_scope_paths", + "construct_scope_peek", + "construct_scope_pex", + "construct_scope_pex_binary_defaults", + "construct_scope_pex_cli", + "construct_scope_protobuf_java_grpc", + "construct_scope_protoc", + "construct_scope_publish", + "construct_scope_py_constraints", + "construct_scope_pylint", + "construct_scope_pyoxidizer", + "construct_scope_pytest", + "construct_scope_python", + "construct_scope_python_bootstrap", + "construct_scope_python_infer", + "construct_scope_python_native_code", + "construct_scope_python_protobuf", + "construct_scope_python_repos", + "construct_scope_python_thrift", + "construct_scope_pyupgrade", + "construct_scope_regex_lint", + "construct_scope_repl", + "construct_scope_roots", + "construct_scope_run", + "construct_scope_scala", + "construct_scope_scala_infer", + "construct_scope_scalac", + "construct_scope_scalafmt", + "construct_scope_scalapb", + "construct_scope_scalatest", + "construct_scope_scc", + "construct_scope_setup_py_generation", + "construct_scope_setuptools", + "construct_scope_setuptools_scm", + "construct_scope_shell_setup", + "construct_scope_shellcheck", + "construct_scope_shfmt", + "construct_scope_shunit2", + "construct_scope_source", + "construct_scope_spectral", + "construct_scope_stats", + "construct_scope_subprocess_environment", + "construct_scope_tailor", + "construct_scope_terraform_fmt", + "construct_scope_terraform_hcl2_parser", + "construct_scope_terraform_validate", + "construct_scope_test", + "construct_scope_thrift", + "construct_scope_twine", + "construct_scope_update_build_files", + "construct_scope_yapf" + ] + }, + "pants.option.subsystem.PluginOption": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": true, + "module": "pants.option.subsystem", + "name": "PluginOption", + "provider": "pants.option.subsystem", + "returned_by_rules": [], + "union_members": [ + "ExportPluginOptions" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.AllSourceRoots": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.project_info", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "AllSourceRoots", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.all_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.OptionalSourceRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.source.source_root" + ], + "dependents": [ + "pants.core" + ], + "documentation": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.OptionalSourceRootsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.source.source_root" + ], + "dependents": [ + "pants.core" + ], + "documentation": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.source.source_root" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRoot(path: 'str')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ] + }, + "pants.source.source_root.SourceRootConfig": { + "consumed_by_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootConfig", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.SourceRootRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_source_root" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Find the source root for the given path.\n\nIf you have multiple paths, particularly if many of them share parent directories, you'll get\nbetter performance with a `SourceRootsRequest` (see above) instead.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.SourceRootsRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_roots" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Find the source roots for the given files and/or dirs.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRootsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.source.source_root" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ] + }, + "pants.vcs.git.GitWorktreeRequest": { + "consumed_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GitWorktreeRequest(gitdir: 'PathLike[str] | None' = None, subdir: 'PathLike[str] | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "GitWorktreeRequest", + "provider": "pants.vcs.git", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + }, + "pants.vcs.git.MaybeGitWorktree": { + "consumed_by_rules": [], + "dependencies": [ + "pants.vcs.git" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": "MaybeGitWorktree(git_worktree: 'GitWorktree | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "MaybeGitWorktree", + "provider": "pants.core", + "returned_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + } + }, + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "", + "check", + "environments-preview", + "filter" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "environments-preview", + "filter" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "environments-preview", + "filter" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.core" + }, + "experimental-deploy": { + "consumed_scopes": [ + "", + "environments-preview", + "experimental-deploy", + "filter" + ], + "description": "Perform a deployment process.", + "is_implemented": true, + "name": "experimental-deploy", + "provider": "pants.core" + }, + "experimental-explorer": { + "consumed_scopes": [], + "description": "Run the Pants Explorer Web UI server.", + "is_implemented": true, + "name": "experimental-explorer", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": [ + "", + "environments-preview", + "export", + "filter" + ], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "environments-preview", + "filter" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.backend.docker" + }, + "filedeps": { + "consumed_scopes": [ + "", + "environments-preview", + "filedeps", + "filter" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "fix": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "fix" + ], + "description": "Autofix source code.", + "is_implemented": true, + "name": "fix", + "provider": "pants.core" + }, + "fmt": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "", + "environments-preview", + "generate-lockfiles" + ], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "go-generate": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "go-generate", + "golang" + ], + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the //go:generate directives.\n\nSee https://go.dev/blog/generate for details.", + "is_implemented": true, + "name": "go-generate", + "provider": "pants.backend.experimental.go" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "lint" + ], + "description": "Run linters/formatters/fixers in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": [ + "", + "environments-preview", + "filter" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "paths" + ], + "description": "List the paths between two addresses.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.15/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_rule_info": { + "construct_env_aware_scope_apache_thrift": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_apache_thrift", + "output_type": "EnvironmentAware", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_env_aware_scope_docker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "DockerOptions", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_docker", + "output_type": "EnvironmentAware", + "provider": "pants.backend.docker" + }, + "construct_env_aware_scope_go_generate": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GoGenerateGoalSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_go_generate", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_golang": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GolangSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_golang", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_jvm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "JvmSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_jvm", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.java" + }, + "construct_env_aware_scope_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PexSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_pex", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PythonBootstrapSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_python_bootstrap", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_native_code": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PythonNativeCodeSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_python_native_code", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_shell_setup": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "ShellSetup", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_shell_setup", + "output_type": "EnvironmentAware", + "provider": "pants.backend.shell" + }, + "construct_env_aware_scope_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "SubprocessEnvironment", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_subprocess_environment", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_test": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_test", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_scope_": { + "description": null, + "documentation": "Options to control the overall behavior of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_", + "output_type": "GlobalOptions", + "provider": "pants.core" + }, + "construct_scope_add_trailing_comma": { + "description": null, + "documentation": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_add_trailing_comma", + "output_type": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "construct_scope_anonymous_telemetry": { + "description": null, + "documentation": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + }, + "construct_scope_apache_thrift": { + "description": null, + "documentation": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_autoflake": { + "description": null, + "documentation": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_autoflake", + "output_type": "Autoflake", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "construct_scope_bandit": { + "description": null, + "documentation": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_bandit", + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + }, + "construct_scope_black": { + "description": null, + "documentation": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_black", + "output_type": "Black", + "provider": "pants.core" + }, + "construct_scope_buf": { + "description": null, + "documentation": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buf", + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "construct_scope_build_deprecations_fixer": { + "description": null, + "documentation": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for: - Renamed targets - Renamed fields", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_build_deprecations_fixer", + "output_type": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "construct_scope_buildifier": { + "description": null, + "documentation": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buildifier", + "output_type": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "construct_scope_check": { + "description": null, + "documentation": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_check", + "output_type": "CheckSubsystem", + "provider": "pants.core" + }, + "construct_scope_count_loc": { + "description": null, + "documentation": "Count lines of code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_count_loc", + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_coursier": { + "description": null, + "documentation": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coursier", + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_coverage_py": { + "description": null, + "documentation": "Configuration for Python test coverage measurement.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_debug_adapter": { + "description": null, + "documentation": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debug_adapter", + "output_type": "DebugAdapterSubsystem", + "provider": "pants.core" + }, + "construct_scope_debugpy": { + "description": null, + "documentation": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debugpy", + "output_type": "DebugPy", + "provider": "pants.backend.python" + }, + "construct_scope_dependees": { + "description": null, + "documentation": "List all targets that depend on any of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependees", + "output_type": "DependeesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_dependencies": { + "description": null, + "documentation": "List the dependencies of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependencies", + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_docformatter": { + "description": null, + "documentation": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docformatter", + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + }, + "construct_scope_docker": { + "description": null, + "documentation": "Options for interacting with Docker.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docker", + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + }, + "construct_scope_dockerfile_parser": { + "description": null, + "documentation": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + }, + "construct_scope_download_terraform": { + "description": null, + "documentation": "Terraform (https://terraform.io)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_experimental_bsp": { + "description": null, + "documentation": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_bsp", + "output_type": "BSPGoal", + "provider": "pants.core" + }, + "construct_scope_experimental_deploy": { + "description": null, + "documentation": "Perform a deployment process.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_deploy", + "output_type": "DeploySubsystem", + "provider": "pants.core" + }, + "construct_scope_export": { + "description": null, + "documentation": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export", + "output_type": "ExportSubsystem", + "provider": "pants.core" + }, + "construct_scope_export_codegen": { + "description": null, + "documentation": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_type": "ExportCodegenSubsystem", + "provider": "pants.backend.docker" + }, + "construct_scope_filedeps": { + "description": null, + "documentation": "List all source and BUILD files a target depends on.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filedeps", + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_filter": { + "description": null, + "documentation": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filter", + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_fix": { + "description": null, + "documentation": "Autofix source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fix", + "output_type": "FixSubsystem", + "provider": "pants.core" + }, + "construct_scope_flake8": { + "description": null, + "documentation": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_flake8", + "output_type": "Flake8", + "provider": "pants.backend.python.lint.flake8" + }, + "construct_scope_fmt": { + "description": null, + "documentation": "Autoformat source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fmt", + "output_type": "FmtSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_lockfiles": { + "description": null, + "documentation": "Generate lockfiles for Python third-party dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_go_generate": { + "description": null, + "documentation": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the //go:generate directives.\n\nSee https://go.dev/blog/generate for details.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_generate", + "output_type": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_go_test": { + "description": null, + "documentation": "Options for Go tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_test", + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_gofmt": { + "description": null, + "documentation": "Gofmt-specific options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_gofmt", + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_golang": { + "description": null, + "documentation": "Options for Golang support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_golang", + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_google_java_format": { + "description": null, + "documentation": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "construct_scope_grpc_python_plugin": { + "description": null, + "documentation": "The gRPC Protobuf plugin for Python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_hadolint": { + "description": null, + "documentation": "A linter for Dockerfiles.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_hadolint", + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + }, + "construct_scope_helm": { + "description": null, + "documentation": "The Helm command line (https://helm.sh)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm", + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_k8s_parser": { + "description": null, + "documentation": "Analyses K8S manifests rendered by Helm.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_k8s_parser", + "output_type": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_post_renderer": { + "description": null, + "documentation": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_post_renderer", + "output_type": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_unittest": { + "description": null, + "documentation": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_unittest", + "output_type": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_ipython": { + "description": null, + "documentation": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ipython", + "output_type": "IPython", + "provider": "pants.backend.python" + }, + "construct_scope_isort": { + "description": null, + "documentation": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_isort", + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + }, + "construct_scope_java_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_java_infer", + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_javac": { + "description": null, + "documentation": "The javac Java source compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_javac", + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_junit": { + "description": null, + "documentation": "The JUnit test framework (https://junit.org)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_junit", + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_jvm": { + "description": null, + "documentation": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jvm", + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_kotlin": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin", + "output_type": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlin_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Kotlin targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin_infer", + "output_type": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlinc": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlinc", + "output_type": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_ktlint": { + "description": null, + "documentation": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ktlint", + "output_type": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "construct_scope_lambdex": { + "description": null, + "documentation": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lambdex", + "output_type": "Lambdex", + "provider": "pants.backend.awslambda.python" + }, + "construct_scope_lint": { + "description": null, + "documentation": "Run linters/formatters/fixers in check mode.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lint", + "output_type": "LintSubsystem", + "provider": "pants.core" + }, + "construct_scope_list": { + "description": null, + "documentation": "Lists all targets matching the file or target arguments.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_list", + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_mypy": { + "description": null, + "documentation": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy", + "output_type": "MyPy", + "provider": "pants.backend.python.typecheck.mypy" + }, + "construct_scope_mypy_protobuf": { + "description": null, + "documentation": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_openapi": { + "description": null, + "documentation": "The OpenAPI Specification (https://swagger.io/specification/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_openapi", + "output_type": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi" + }, + "construct_scope_package": { + "description": null, + "documentation": "Create a distributable package.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_package", + "output_type": "PackageSubsystem", + "provider": "pants.core" + }, + "construct_scope_paths": { + "description": null, + "documentation": "List the paths between two addresses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_paths", + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_peek": { + "description": null, + "documentation": "Display BUILD target info", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_peek", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_pex": { + "description": null, + "documentation": "How Pants uses Pex to run Python subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex", + "output_type": "PexSubsystem", + "provider": "pants.core" + }, + "construct_scope_pex_binary_defaults": { + "description": null, + "documentation": "Default settings for creating PEX executables.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + }, + "construct_scope_pex_cli": { + "description": null, + "documentation": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_type": "PexCli", + "provider": "pants.core" + }, + "construct_scope_protobuf_java_grpc": { + "description": null, + "documentation": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protobuf_java_grpc", + "output_type": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "construct_scope_protoc": { + "description": null, + "documentation": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protoc", + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_publish": { + "description": null, + "documentation": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_publish", + "output_type": "PublishSubsystem", + "provider": "pants.core" + }, + "construct_scope_py_constraints": { + "description": null, + "documentation": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "construct_scope_pylint": { + "description": null, + "documentation": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pylint", + "output_type": "Pylint", + "provider": "pants.backend.python.lint.pylint" + }, + "construct_scope_pyoxidizer": { + "description": null, + "documentation": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "construct_scope_pytest": { + "description": null, + "documentation": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pytest", + "output_type": "PyTest", + "provider": "pants.backend.python" + }, + "construct_scope_python": { + "description": null, + "documentation": "Options for Pants's Python backend.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python", + "output_type": "PythonSetup", + "provider": "pants.core" + }, + "construct_scope_python_bootstrap": { + "description": null, + "documentation": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_infer", + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_python_native_code": { + "description": null, + "documentation": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_type": "PythonNativeCodeSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_protobuf": { + "description": null, + "documentation": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.15/docs/protobuf-python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_python_repos": { + "description": null, + "documentation": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_repos", + "output_type": "PythonRepos", + "provider": "pants.core" + }, + "construct_scope_python_thrift": { + "description": null, + "documentation": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_pyupgrade": { + "description": null, + "documentation": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_type": "PyUpgrade", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "construct_scope_regex_lint": { + "description": null, + "documentation": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_repl": { + "description": null, + "documentation": "Open a REPL with the specified code loadable.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_repl", + "output_type": "ReplSubsystem", + "provider": "pants.core" + }, + "construct_scope_roots": { + "description": null, + "documentation": "List the repo's registered source roots.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_roots", + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_run": { + "description": null, + "documentation": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_run", + "output_type": "RunSubsystem", + "provider": "pants.core" + }, + "construct_scope_scala": { + "description": null, + "documentation": "Scala programming language", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala", + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scala_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalac": { + "description": null, + "documentation": "The Scala compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalac", + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalafmt": { + "description": null, + "documentation": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "construct_scope_scalapb": { + "description": null, + "documentation": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalapb", + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "construct_scope_scalatest": { + "description": null, + "documentation": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalatest", + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scc": { + "description": null, + "documentation": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scc", + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + }, + "construct_scope_setup_py_generation": { + "description": null, + "documentation": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools": { + "description": null, + "documentation": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools", + "output_type": "Setuptools", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools_scm": { + "description": null, + "documentation": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools_scm", + "output_type": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_shell_setup": { + "description": null, + "documentation": "Options for Pants's Shell support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + }, + "construct_scope_shellcheck": { + "description": null, + "documentation": "A linter for shell scripts.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + }, + "construct_scope_shfmt": { + "description": null, + "documentation": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shfmt", + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + }, + "construct_scope_shunit2": { + "description": null, + "documentation": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shunit2", + "output_type": "Shunit2", + "provider": "pants.backend.shell" + }, + "construct_scope_source": { + "description": null, + "documentation": "Configuration for roots of source trees.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_source", + "output_type": "SourceRootConfig", + "provider": "pants.core" + }, + "construct_scope_spectral": { + "description": null, + "documentation": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_spectral", + "output_type": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_stats": { + "description": null, + "documentation": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_stats", + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + }, + "construct_scope_subprocess_environment": { + "description": null, + "documentation": "Environment settings for forked subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + }, + "construct_scope_tailor": { + "description": null, + "documentation": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_tailor", + "output_type": "TailorSubsystem", + "provider": "pants.core" + }, + "construct_scope_terraform_fmt": { + "description": null, + "documentation": "Terraform fmt options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_hcl2_parser": { + "description": null, + "documentation": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_validate": { + "description": null, + "documentation": "Terraform validate options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_test": { + "description": null, + "documentation": "Run tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_test", + "output_type": "TestSubsystem", + "provider": "pants.core" + }, + "construct_scope_thrift": { + "description": null, + "documentation": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_thrift", + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_twine": { + "description": null, + "documentation": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_twine", + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_update_build_files": { + "description": null, + "documentation": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.15/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_yapf": { + "description": null, + "documentation": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yapf", + "output_type": "Yapf", + "provider": "pants.core" + }, + "pants.backend.awslambda.python.rules.package_python_awslambda": { + "description": "Create Python AWS Lambda", + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonAwsLambdaFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.awslambda.python.rules.package_python_awslambda", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency": { + "description": "Inferring dependency from the python_awslambda `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonLambdaHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler": { + "description": "Determining the handler for a `python_awslambda` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonAwsHandlerRequest" + ], + "name": "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "output_type": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix": { + "description": "Fix deprecated field names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameFieldsInFileRequest", + "RenamedFieldTypes" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types", + "output_type": "RenameTargetsInFileRequest", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix": { + "description": "Fix deprecated target type names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameRequest", + "RenameTargetsInFileRequest" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fmt.black.register.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Black" + ], + "name": "pants.backend.build_files.fmt.black.register.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.black" + }, + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt": { + "description": "Format with Buildifier", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Buildifier", + "Platform" + ], + "name": "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "pants.backend.build_files.fmt.yapf.register.yapf_fmt": { + "description": "Format with Yapf", + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Yapf" + ], + "name": "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Yapf", + "BuildFileOptions" + ], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.codegen.export_codegen_goal.export_codegen": { + "description": "`export-codegen` goal", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "FilteredTargets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_type": "ExportCodegen", + "provider": "pants.backend.docker" + }, + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf": { + "description": "Generate Go source files from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets": { + "description": "Map import paths for all Go Protobuf targets.", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "ProtobufGoModuleImportPathsMappingsHook", + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": [ + "GoCodegenBuildProtobufRequest" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "PackageAnalyzerSetup", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProtobufJavaRuntimeForResolve, ProtobufJavaRuntimeForResolveRequest, ..)", + "Get(ProtobufJavaGrpcRuntimeForResolve, ProtobufJavaGrpcRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferProtobufJavaRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaGrpcRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "output_type": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "output_type": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GrpcJavaToolLockfileSentinel", + "JavaProtobufGrpcSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf": { + "description": "Generate Java from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc", + "ProtobufJavaGrpcPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GrpcJavaToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "Platform" + ], + "name": "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "output_type": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format": { + "description": "Format with buf format", + "documentation": null, + "input_gets": [ + "Get(DiffBinary, DiffBinaryRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "BufSubsystem", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_type": "FixResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf": { + "description": "Lint with buf lint", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "BufSubsystem", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_type": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies": { + "description": "Inferring Protobuf dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "InferProtobufDependencies", + "ProtobufMapping", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files": { + "description": "Creating map of Protobuf file names to Protobuf targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules": { + "description": "Creating map of Protobuf targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MypyProtobufLockfileSentinel", + "PythonProtobufMypyPlugin" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf": { + "description": "Generate Python from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaPBRuntimeForResolve, ScalaPBRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferScalaPBRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPBRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "output_type": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf": { + "description": "Generate Scala from Protobuf", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalapbcToolLockfileSentinel", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "MaterializeJvmPluginRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "MaterializeJvmPluginsRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ScalaPBSubsystem", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.tailor.find_putative_targets": { + "description": "Determine candidate Protobuf targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets": { + "description": "Find all Protobuf targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules": { + "description": "Creating map of Thrift targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift": { + "description": "Generate Python from Thrift", + "documentation": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "GenerateThriftSourcesRequest", + "ApacheThriftSetup" + ], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem", + "EnvironmentAware", + "EnvironmentTarget" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies": { + "description": "Inferring Thrift dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files": { + "description": "Creating map of Thrift file names to Thrift targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllThriftTargets" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets": { + "description": "Determine candidate Thrift targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets": { + "description": "Find all Thrift targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParsedThriftRequest" + ], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.docker.goals.package_image.build_docker_image": { + "description": null, + "documentation": "Build a Docker image using `docker build`.", + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "KeepSandboxes", + "UnionMembership" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.publish.push_docker_images": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerFieldSet" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerFieldSet", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.tailor.find_putative_targets": { + "description": "Determine candidate Docker targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.lint.hadolint.rules.run_hadolint": { + "description": "Lint with Hadolint", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "Hadolint", + "Platform" + ], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_type": "LintResult", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": [ + "DockerfileInfoRequest" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerfileParserLockfileSentinel", + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "DockerfileParseRequest", + "ParserSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.target_types.all_docker_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.docker.target_types.all_docker_targets", + "output_type": "AllDockerImageTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies": { + "description": null, + "documentation": "Inspects the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "InferDockerDependencies", + "AllPackageableTargets" + ], + "name": "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.find_docker": { + "description": "Finding the `docker` binary and related tooling", + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": [ + "DockerBinaryRequest", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.util_rules.docker_binary.find_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.get_docker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBinary, DockerBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_args.docker_build_args": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerBuildArgsRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "DockerBuildContextRequest" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateDockerContextFiles" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateDockerfileRequest" + ], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.go.go_sources.load_go_binary.setup_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "LoadedGoBinaryRequest" + ], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.check.check_go": { + "description": "Check Go compilation", + "documentation": null, + "input_gets": [ + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": [ + "GoCheckRequest" + ], + "name": "pants.backend.go.goals.check.check_go", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.go_generate": { + "description": "`go-generate` goal", + "documentation": null, + "input_gets": [ + "Get(RunPackageGeneratorsResult, RunPackageGeneratorsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Targets", + "Workspace" + ], + "name": "pants.backend.go.goals.generate.go_generate", + "output_type": "GoGenerateGoal", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.merge_digests_with_overwrite": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "OverwriteMergeDigests" + ], + "name": "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "output_type": "Digest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.run_go_package_generators": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, OverwriteMergeDigests, ..)" + ], + "input_types": [ + "RunPackageGeneratorsRequest", + "GoRoot", + "EnvironmentAware" + ], + "name": "pants.backend.go.goals.generate.run_go_package_generators", + "output_type": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.package_binary.package_go_binary": { + "description": "Package Go binary", + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.create_go_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.go_binary_run_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_package_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "FindPutativeGoPackageTargetRequest", + "AllOwnedSources" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_package_target", + "output_type": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_targets": { + "description": "Determine candidate Go targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FindPutativeGoPackageTargetResult, FindPutativeGoPackageTargetRequest, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources", + "GolangSubsystem" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.backend.go.goals.test.generate_go_tests_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.generate_go_tests_debug_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.backend.go.goals.test.generate_go_tests_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.run_go_tests": { + "description": "Test with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(GenerateCoverageSetupCodeResult, GenerateCoverageSetupCodeRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "GoTestSubsystem", + "TestExtraEnv", + "GoRoot" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.lint.gofmt.rules.gofmt_fmt": { + "description": "Format with gofmt", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "GoRoot" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.generate_targets_from_go_mod": { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "documentation": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromGoModRequest", + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_map_import_paths_by_module": { + "description": "Analyze and map Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis": { + "description": "Analyze Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMappings, GoModuleImportPathsMappingsHook, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.go_merge_import_paths_analysis", + "output_type": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_dependencies": { + "description": "Infer dependencies for first-party Go packages", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoPackageDependenciesRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies": { + "description": "Infer dependencies for third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)" + ], + "input_types": [ + "InferGoThirdPartyPackageDependenciesRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.map_import_paths_to_packages": { + "description": "Map Go targets owned by module to import paths", + "documentation": null, + "input_gets": [], + "input_types": [ + "GoImportPathMappingRequest", + "AllGoModuleImportPathsMappings" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_type": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.link_assembly_post_compilation": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPostCompilationRequest" + ], + "name": "pants.backend.go.util_rules.assembly.link_assembly_post_compilation", + "output_type": "AssemblyPostCompilation", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssemblyPreCompilationRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.setup_assembly_pre_compilation", + "output_type": "FallibleAssemblyPreCompilation", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary": { + "description": "Determine first-party package used by `go_binary` target", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "GoBinaryMainPackageRequest" + ], + "name": "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "InferGoBinaryMainDependencyRequest" + ], + "name": "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.build_go_package": { + "description": "Compile with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(ApplyCodeCoverageResult, ApplyCodeCoverageRequest, ..)", + "Get(DigestContents, DigestSubset, ..)", + "Get(CGoCompileResult, CGoCompileRequest, ..)", + "Get(FallibleAssemblyPreCompilation, AssemblyPreCompilationRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(AssemblyPostCompilation, AssemblyPostCompilationRequest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BuildGoPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)" + ], + "input_types": [ + "GoCompileActionIdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.render_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.required_built_go_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuiltGoPackage" + ], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuildGoPackageRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request": { + "description": "Set up Go compilation request", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.cgo_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(CGoPkgConfigFlagsResult, CGoPkgConfigFlagsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(CGoCompilerWrapperScript, CGoCompilerWrapperScriptRequest, ..)", + "Get(SetupCompilerCmdResult, SetupCompilerCmdRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "CGoCompileRequest", + "GoRoot", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.cgo.cgo_compile_request", + "output_type": "CGoCompileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "CheckCompilerSupportsFlagRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "output_type": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CGoCompilerWrapperScriptRequest" + ], + "name": "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "output_type": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.setup_compiler_cmd": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CheckCompilerSupportsOptionResult, CheckCompilerSupportsFlagRequest, ..)" + ], + "input_types": [ + "SetupCompilerCmdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "output_type": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "CGoBinaryPathRequest", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "output_type": "BinaryPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CGoPkgConfigFlagsRequest" + ], + "name": "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "output_type": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateCoverageSetupCodeRequest" + ], + "name": "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "output_type": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(ApplyCodeCoverageToFileResult, ApplyCodeCoverageToFileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ApplyCodeCoverageRequest" + ], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "output_type": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ApplyCodeCoverageToFileRequest" + ], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "output_type": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "RenderGoCoverageProfileToHtmlRequest" + ], + "name": "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "output_type": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports": { + "description": "Merge Go coverage data", + "documentation": null, + "input_gets": [ + "Get(RenderGoCoverageReportResult, RenderGoCoverageReportRequest, ..)" + ], + "input_types": [ + "GoCoverageDataCollection" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(RenderGoCoverageProfileToHtmlResult, RenderGoCoverageProfileToHtmlRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "RenderGoCoverageReportRequest", + "DistDir", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "output_type": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgAnalysisRequest", + "PackageAnalyzerSetup", + "GolangSubsystem" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": [ + "FirstPartyPkgImportPathRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgDigestRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GolangSubsystem", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "output_type": "GoBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.determine_go_mod_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoModInfoRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets": { + "description": "Find all `go_mod` targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "output_type": "AllGoModTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, RawSpecs, ..)" + ], + "input_types": [ + "NearestAncestorGoModRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "output_type": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_owning_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(NearestAncestorGoModResult, NearestAncestorGoModRequest, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(Address, AddressInput, ..)" + ], + "input_types": [ + "OwningGoModRequest", + "AllGoModTargets" + ], + "name": "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.goroot.setup_goroot": { + "description": "Find Go binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GolangSubsystem", + "GoBootstrap", + "EnvironmentTarget" + ], + "name": "pants.backend.go.util_rules.goroot.setup_goroot", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports": { + "description": "Determine Go std lib's imports", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.import_analysis.determine_go_std_lib_imports", + "output_type": "GoStdLibImports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.generate_import_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ImportConfigRequest", + "GoStdLibImports" + ], + "name": "pants.backend.go.util_rules.import_analysis.generate_import_config", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.link_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "LinkGoBinaryRequest" + ], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.compute_go_tool_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoSdkToolIDRequest" + ], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.setup_go_sdk_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "EnvironmentAware", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.tests_analysis.generate_testmain": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GenerateTestMainRequest" + ], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyModuleRequest", + "PackageAnalyzerSetup", + "GolangSubsystem" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyPackageRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ModuleDescriptorsRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages": { + "description": "Download and analyze all third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": [ + "AllThirdPartyPackagesRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.extract_package_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "ThirdPartyPkgAnalysisRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function": { + "description": "Create Python Google Cloud Function", + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonGoogleCloudFunctionFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency": { + "description": "Inferring dependency from the python_google_cloud_function `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonCloudFunctionHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler": { + "description": "Determining the handler for a `python_google_cloud_function` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonGoogleHandlerRequest" + ], + "name": "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "output_type": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "output_type": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata": { + "description": "Inferring Helm chart dependencies", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "InferHelmChartDependenciesRequest", + "FirstPartyHelmChartMapping", + "ThirdPartyHelmArtifactMapping", + "HelmSubsystem" + ], + "name": "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.analyse_deployment": { + "description": "Analyse Helm deployment", + "documentation": null, + "input_gets": [ + "Get(RenderedHelmFiles, HelmDeploymentRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ParsedKubeManifest, ParseKubeManifestRequest, ..)" + ], + "input_types": [ + "AnalyseHelmDeploymentRequest" + ], + "name": "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "output_type": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmDeploymentReport, AnalyseHelmDeploymentRequest, ..)" + ], + "input_types": [ + "FirstPartyHelmDeploymentMappingRequest", + "AllDockerImageTargets" + ], + "name": "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "output_type": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies": { + "description": "Find the dependencies needed by a Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)" + ], + "input_types": [ + "InferHelmDeploymentDependenciesRequest" + ], + "name": "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)" + ], + "input_types": [ + "InferHelmUnitTestChartDependencyRequest", + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.deploy.run_helm_deploy": { + "description": "Run Helm deploy process", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmPostRenderer, HelmDeploymentPostRendererRequest, ..)", + "Get(InteractiveProcess, HelmDeploymentRequest, ..)" + ], + "input_types": [ + "DeployHelmDeploymentFieldSet", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.deploy.run_helm_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.partition_helm_lint": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)" + ], + "input_types": [ + "PartitionRequest" + ], + "name": "pants.backend.helm.goals.lint.partition_helm_lint", + "output_type": "Partitions", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.run_helm_lint": { + "description": "Lint Helm charts", + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, HelmProcess, ..)" + ], + "input_types": [ + "Batch", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.package.run_helm_package": { + "description": "Package Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmPackageFieldSet" + ], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.publish.publish_helm_chart": { + "description": "Push Helm chart to OCI registries", + "documentation": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)" + ], + "input_types": [ + "PublishHelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.publish.publish_helm_chart", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.tailor.find_putative_helm_targets": { + "description": "Determine candidate Helm chart targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeHelmChartTargetsRequest", + "AllOwnedSources", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmArtifact", + "HelmSubsystem" + ], + "name": "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "output_type": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedHelmArtifact, HelmArtifact, ..)" + ], + "input_types": [ + "AllHelmArtifactTargets" + ], + "name": "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "output_type": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "_StripHelmArtifactPrefixRequest" + ], + "name": "pants.backend.helm.resolve.fetch._strip_prefix_from_fetched_artifact", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch.fetch_helm_artifacts": { + "description": "Fetch third party Helm Chart artifacts", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ResolvedHelmArtifact, HelmArtifact, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, _StripHelmArtifactPrefixRequest, ..)" + ], + "input_types": [ + "FetchHelmArfifactsRequest" + ], + "name": "pants.backend.helm.resolve.fetch.fetch_helm_artifacts", + "output_type": "FetchedHelmArtifacts", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "HelmKubeParserSubsystem" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "output_type": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest": { + "description": "Parse Kubernetes resource manifest", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseKubeManifestRequest", + "_HelmKubeParserTool" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "output_type": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmKubeParserLockfileSentinel", + "HelmKubeParserSubsystem" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher": { + "description": "Configure Helm post-renderer", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupHelmPostRenderer", + "_HelmPostRendererTool", + "CatBinary" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "output_type": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool": { + "description": "Setup Helm post renderer binaries", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "HelmPostRendererSubsystem" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "output_type": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmPostRendererLockfileSentinel", + "HelmPostRendererSubsystem" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestPluginBinding", + "HelmUnitTestSubsystem", + "Platform" + ], + "name": "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "output_type": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_artifact_targets", + "output_type": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_chart_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_chart_targets", + "output_type": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_deployment_targets", + "output_type": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_unittest_test_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "output_type": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.run_helm_unittest": { + "description": "Run Helm Unittest", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.test.unittest.run_helm_unittest", + "output_type": "TestResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.create_chart_from_artifact": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "FetchedHelmArtifact" + ], + "name": "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.find_chart_for_deployment": { + "description": "Find Helm deployment's chart", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(FetchedHelmArtifacts, FetchHelmArfifactsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchedHelmArtifact, ..)" + ], + "input_types": [ + "FindHelmDeploymentChart" + ], + "name": "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.get_helm_chart": { + "description": "Collect all source code and subcharts of a Helm Chart", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(FetchedHelmArtifacts, FetchHelmArfifactsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchedHelmArtifact, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParseHelmChartMetadataDigest" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "HelmChartMetaSourceField" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "HelmChartMetadata" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment": { + "description": "Prepare Helm deployment post-renderer", + "documentation": null, + "input_gets": [ + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)", + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)", + "Get(HelmPostRenderer, SetupHelmPostRenderer, ..)" + ], + "input_types": [ + "HelmDeploymentPostRendererRequest", + "DockerOptions", + "UnionMembership" + ], + "name": "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "output_type": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)" + ], + "input_types": [ + "_HelmDeploymentProcessWrapper" + ], + "name": "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.run_renderer": { + "description": "Render Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "_HelmDeploymentProcessWrapper" + ], + "name": "pants.backend.helm.util_rules.renderer.run_renderer", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process": { + "description": "Prepare Helm deployment renderer", + "documentation": null, + "input_gets": [ + "Get(HelmChart, FindHelmDeploymentChart, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "HelmDeploymentRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "output_type": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.find_chart_source_root": { + "description": "Detect Helm chart source root", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "HelmChartRootRequest" + ], + "name": "pants.backend.helm.util_rules.sources.find_chart_source_root", + "output_type": "HelmChartRoot", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.get_helm_source_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartSourceFilesRequest" + ], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.all_helm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmPlugin, ExternalHelmPluginBinding, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.helm.util_rules.tool.all_helm_plugins", + "output_type": "HelmPlugins", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.download_external_helm_plugin": { + "description": "Download external Helm plugin", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ExternalHelmPluginRequest" + ], + "name": "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "output_type": "HelmPlugin", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.helm_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "HelmProcess", + "HelmBinary", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.setup_helm": { + "description": "Download and configure Helm", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "HelmSubsystem", + "HelmPlugins", + "Platform" + ], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.java.bsp.rules.bsp_java_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_java_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_javac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": [ + "JavacOptionsParams" + ], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaBSPBuildTargetsMetadataRequest" + ], + "name": "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.handle_bsp_java_options_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HandleJavacOptionsRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.compile.javac.compile_java_source": { + "description": "Compile with javac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "JvmSubsystem", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.java.dependency_inference.java_parser.build_processors", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaParserToolLockfileSentinel" + ], + "name": "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SourceFiles" + ], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis": { + "description": "Inferring Java dependencies and exports by source analysis", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis": { + "description": "Inferring Java dependencies by source analysis", + "documentation": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": [ + "InferJavaSourceDependencies" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets": { + "description": "Find all Java targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols": { + "description": "Map all first party Java targets to their packages", + "documentation": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.check.javac_check": { + "description": "Check javac compilation", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "JavacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.goals.check.javac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.tailor.find_putative_targets": { + "description": "Determine candidate Java targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources", + "JavacSubsystem" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt": { + "description": "Format with Google Java Format", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "GoogleJavaFormatSubsystem", + "InternalJdk" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source": { + "description": "Compile with kotlinc", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(KotlincPluginTargetsForTarget, KotlincPluginsForTargetRequest, ..)", + "Get(KotlincPlugins, KotlincPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinSubsystem", + "KotlincSubsystem", + "CompileKotlinSourceRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlincPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "output_type": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "output_type": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "KotlincPluginsRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "output_type": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "KotlincPluginsForTargetRequest", + "AllKotlincPluginTargets", + "JvmSubsystem", + "KotlincSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "output_type": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinParserCompiledClassfiles", + "SourceFiles" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "output_type": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinParserToolLockfileSentinel" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleKotlinSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "output_type": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "output_type": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis": { + "description": "Inferring Kotlin dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferKotlinSourceDependencies", + "KotlinInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency": { + "description": "Infer dependency on Kotlin runtime artifacts for Kotlin targets.", + "documentation": null, + "input_gets": [ + "Get(KotlinRuntimeForResolve, KotlinRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferKotlinRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "output_type": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets": { + "description": "Find all Kotlin targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "output_type": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols": { + "description": "Map all first party Kotlin targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyKotlinTargetsMappingRequest", + "AllKotlinTargets", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.check.kotlinc_check": { + "description": "Check compilation for Kotlin", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "KotlincCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.kotlin.goals.check.kotlinc_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.tailor.find_putative_targets": { + "description": "Determine candidate Kotlin targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeKotlinTargetsRequest", + "AllOwnedSources", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KtlintToolLockfileSentinel", + "KtlintSubsystem" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt": { + "description": "Format with Ktlint", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KtlintToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "KtlintSubsystem", + "InternalJdk" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency": { + "description": "Infer dependency on Kotlin Junit support artifact.", + "documentation": null, + "input_gets": [ + "Get(KotlinJunitLibrariesForResolve, KotlinJunitLibrariesForResolveRequest, ..)" + ], + "input_types": [ + "InferKotlinJunitTestDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinJunitLibrariesForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "output_type": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferOpenApiDocumentDependenciesRequest" + ], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferOpenApiSourceDependenciesRequest" + ], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.parse_openapi_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParseOpenApiSources" + ], + "name": "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "output_type": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.goals.tailor.find_putative_targets": { + "description": "Determine candidate OpenAPI targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)" + ], + "input_types": [ + "PutativeOpenApiTargetsRequest", + "AllOwnedSources", + "OpenApiSubsystem" + ], + "name": "pants.backend.openapi.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.lint.spectral.rules.run_spectral": { + "description": "Lint with Spectral", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "SpectralSubsystem", + "Platform" + ], + "name": "pants.backend.openapi.lint.spectral.rules.run_spectral", + "output_type": "LintResult", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + "pants.backend.project_info.count_loc.count_loc": { + "description": "`count-loc` goal", + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsPaths", + "Platform" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependencies.dependencies": { + "description": "`dependencies` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "Addresses", + "DependenciesSubsystem" + ], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.dependees_goal": { + "description": "`dependees` goal", + "documentation": null, + "input_gets": [ + "Get(Dependents, DependentsRequest, ..)" + ], + "input_types": [ + "Addresses", + "DependeesSubsystem", + "Console" + ], + "name": "pants.backend.project_info.dependents.dependees_goal", + "output_type": "DependeesGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.find_dependents": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependentsRequest", + "AddressToDependents" + ], + "name": "pants.backend.project_info.dependents.find_dependents", + "output_type": "Dependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.map_addresses_to_dependents": { + "description": "Map all targets to their dependents", + "documentation": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.project_info.dependents.map_addresses_to_dependents", + "output_type": "AddressToDependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filedeps.file_deps": { + "description": "`filedeps` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "Console", + "FiledepsSubsystem", + "BuildRoot", + "Addresses" + ], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filter_targets.filter_targets": { + "description": "`filter` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Addresses", + "FilterSubsystem", + "Console" + ], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_roots.list_roots": { + "description": "`roots` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Console", + "RootsSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_type": "Roots", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_targets.list_targets": { + "description": "`list` goal", + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "Addresses", + "ListSubsystem", + "Console" + ], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_type": "List", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.paths": { + "description": "`paths` goal", + "documentation": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "PathsSubsystem" + ], + "name": "pants.backend.project_info.paths.paths", + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.get_target_data": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.get_target_data", + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.peek": { + "description": "`peek` goal", + "documentation": null, + "input_gets": [ + "Get(TargetDatas, UnexpandedTargets, ..)" + ], + "input_types": [ + "Console", + "PeekSubsystem", + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.peek", + "output_type": "Peek", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.lint_with_regex_patterns": { + "description": "Lint with regex patterns", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "Batch", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_type": "LintResult", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.project_info" + }, + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects": { + "description": "Find all Python targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules": { + "description": "Creating map of first party Python targets to Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses": { + "description": "Creating map of third party targets to Python modules", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ParsePythonDependenciesRequest", + "ParserScript" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parser_script", + "output_type": "ParserScript", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies": { + "description": "Inferring dependencies on `conftest.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source": { + "description": "Inferring Python dependencies by analyzing source", + "documentation": null, + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargets, AllAssetTargetsRequest, ..)", + "Get(AllAssetTargetsByPath, AllAssetTargets, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies": { + "description": "Inferring dependencies on `__init__.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.generate_coverage_reports": { + "description": "Generate Pytest coverage reports", + "documentation": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "KeepSandboxes", + "DistDir" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.merge_coverage_data": { + "description": "Merge Pytest coverage data", + "documentation": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "CoveragePyLockfileSentinel", + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.do_export": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(ProcessResult, PexProcess, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "VenvExportRequest", + "PexPEX", + "PexEnvironment", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.do_export", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "ExportPythonTool" + ], + "name": "pants.backend.python.goals.export.export_tool", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportPythonTool, ExportPythonToolSentinel, ..)", + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "_ExportVenvForResolveRequest", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "output_type": "MaybeExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv_for_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequest, RequirementsPexRequest, ..)", + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "_ExportVenvRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.export.export_virtualenv_for_targets", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenvs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeExportResult, _ExportVenvForResolveRequest, ..)", + "Get(ExportResult, _ExportVenvRequest, ..)", + "Get(ExportPythonTool, ExportPythonToolSentinel, ..)", + "Get(ExportResult, ExportPythonTool, ..)" + ], + "input_types": [ + "ExportVenvsRequest", + "PythonSetup", + "DistDir", + "UnionMembership", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_type": "ExportResults", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.lockfile.determine_python_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownPythonUserResolveNamesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.generate_lockfile": { + "description": "Generate Python lockfile", + "documentation": null, + "input_gets": [ + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "GenerateLockfilesSubsystem" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonSyntheticLockfileTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "output_type": "SyntheticAddressMaps", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratePythonLockfile" + ], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.package_pex_binary.package_pex_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)", + "Get(Pex, PexFromTargetsRequest, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.publish.twine_upload": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.pytest_runner.debug_python_test": { + "description": "Set up Pytest to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.debugpy_python_test": { + "description": "Set up debugpy to run an interactive Pytest session", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch", + "DebugPy", + "DebugAdapterSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.partition_python_tests": { + "description": "Partition Pytest", + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.pytest_runner.partition_python_tests", + "output_type": "Partitions", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": [ + "AllPytestPluginSetupsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_python_tests": { + "description": "Run Pytest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem" + ], + "name": "pants.backend.python.goals.pytest_runner.run_python_tests", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_runtime_packages": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "RuntimePackagesPluginRequest" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_ipython_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_python_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonRepl", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PexBinaryFieldSet, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "PexEnvironment" + ], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PexBinaryFieldSet", + "DebugPy", + "DebugAdapterSubsystem" + ], + "name": "pants.backend.python.goals.run_pex_binary.run_pex_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "DebugPy", + "DebugAdapterSubsystem", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SetupKwargs, SetupKwargsRequest, ..)" + ], + "input_types": [ + "ExportedTarget", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.generate_chroot": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.generate_chroot", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.generate_setup_py": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.generate_setup_py", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_exporting_owner": { + "description": "Get exporting owner for target", + "documentation": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "OwnedDependency" + ], + "name": "pants.backend.python.goals.setup_py.get_exporting_owner", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_owned_dependencies": { + "description": "Find all code to be published in the distribution", + "documentation": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_owned_dependencies", + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_requirements": { + "description": "Compute distribution's 3rd party requirements", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.get_requirements", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_sources", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.package_python_dist": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.package_python_dist", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.tailor.find_putative_targets": { + "description": "Determine candidate Python targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt": { + "description": "Format with add-trailing-comma", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "AddTrailingComma" + ], + "name": "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AddTrailingCommaExportSentinel", + "AddTrailingComma" + ], + "name": "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AddTrailingCommaLockfileSentinel", + "AddTrailingComma" + ], + "name": "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.autoflake.rules.autoflake_fix": { + "description": "Fix with Autoflake", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "pants.backend.python.lint.autoflake.subsystem.autoflake_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AutoflakeExportSentinel", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AutoflakeLockfileSentinel", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.autoflake" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint": { + "description": "Lint with Bandit", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Bandit" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.rules.partition_bandit": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.rules.partition_bandit", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.bandit_export": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditExportSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.bandit_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditLockfileSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.black.rules.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Black" + ], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.rules.partition_black": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.rules.partition_black", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.black_export": { + "description": "Determine Black interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackExportSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.black_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.setup_black_lockfile": { + "description": "Determine Black interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackLockfileSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.docformatter.rules.docformatter_fmt": { + "description": "Format with docformatter", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.docformatter.subsystem.docformatter_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DocformatterExportSentinel", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DocformatterLockfileSentinel", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.flake8.rules.partition_flake8": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.partition_flake8", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.rules.run_flake8": { + "description": "Lint with Flake8", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Flake8", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.run_flake8", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_export": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8ExportSentinel", + "Flake8", + "Flake8FirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Flake8" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8LockfileSentinel", + "Flake8FirstPartyPlugins", + "Flake8", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.isort.rules.isort_fmt": { + "description": "Format with isort", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.isort.subsystem.isort_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "IsortExportSentinel", + "Isort" + ], + "name": "pants.backend.python.lint.isort.subsystem.isort_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "IsortLockfileSentinel", + "Isort" + ], + "name": "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.pylint.rules.partition_pylint": { + "description": "Determine if necessary to partition Pylint input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Pylint", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.partition_pylint", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.run_pylint": { + "description": "Lint using Pylint", + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PexResolveInfo, Pex, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Pylint", + "PylintFirstPartyPlugins", + "PexEnvironment" + ], + "name": "pants.backend.python.lint.pylint.rules.run_pylint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_export": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PylintExportSentinel", + "Pylint", + "PylintFirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PylintLockfileSentinel", + "PylintFirstPartyPlugins", + "Pylint", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix": { + "description": "Fix with pyupgrade", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyUpgradeExportSentinel", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyUpgradeLockfileSentinel", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.pyupgrade" + }, + "pants.backend.python.lint.yapf.rules.yapf_fmt": { + "description": "Format with yapf", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YapfLockfileSentinel", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.lint.yapf.subsystem.yapf_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YapfExportSentinel", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.subsystem.yapf_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements": { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.python_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from requirements.txt", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints": { + "description": "`py-constraints` goal", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependents, DependentsRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyoxidizerLockfileSentinel", + "PyOxidizer" + ], + "name": "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DebugPyLockfileSentinel", + "DebugPy" + ], + "name": "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile": { + "description": "Determine all Python interpreter versions used by iPython in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "IPythonLockfileSentinel", + "IPython", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "LambdexLockfileSentinel", + "Lambdex" + ], + "name": "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.subsystems.pytest.pytest_export": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PytestExportSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.pytest_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PytestLockfileSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile": { + "description": "Determine all Python interpreter versions used by setuptools in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "SetuptoolsLockfileSentinel", + "Setuptools", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SetuptoolsSCMLockfileSentinel", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.subsystems.twine.setup_twine_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TwineLockfileSentinel", + "TwineSubsystem" + ], + "name": "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateTargetsFromPexBinaries", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency": { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies": { + "description": null, + "documentation": "Infer dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_files_generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonResolveFieldDefaultFactoryRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_pex_entry_point": { + "description": "Determining the entry point for a `pex_binary` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePexEntryPointRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points": { + "description": "Determining the entry points for a `python_distribution` target", + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "ResolvePythonDistributionEntryPointsRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.validate_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "PythonValidateDependenciesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.validate_python_dependencies", + "output_type": "ValidatedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment": { + "description": "Get mypyc build environment", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)" + ], + "input_types": [ + "MyPycDistBuildEnvironmentRequest", + "MyPyFirstPartyPlugins", + "MyPyConfigFile", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "output_type": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions": { + "description": "Determine if necessary to partition MyPy input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck": { + "description": "Typecheck using MyPy", + "documentation": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "BuildRoot", + "MyPy", + "PythonSetup", + "MkdirBinary", + "CpBinary", + "MvBinary", + "GlobalOptions" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_export": { + "description": "Determine MyPy interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyExportSentinel", + "MyPy", + "PythonSetup", + "MyPyFirstPartyPlugins" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile": { + "description": "Set up lockfile request for [mypy].extra_type_stubs", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyExtraTypeStubsLockfileSentinel", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile": { + "description": "Determine MyPy interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyLockfileSentinel", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "AncestorFilesRequest" + ], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.find_build_system": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "BuildSystemRequest", + "Setuptools" + ], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.run_pep517_build": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DistBuildRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.build_local_dists": { + "description": "Building local distributions", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "LocalDistsPexRequest" + ], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex.build_pex": { + "description": null, + "documentation": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "PexRequest", + "PythonSetup", + "PexSubsystem" + ], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_type": "BuildPexResult", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_optional_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)" + ], + "input_types": [ + "OptionalPexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_type": "OptionalPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)" + ], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_type": "Pex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_venv_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexRequest", + "BashBinary", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_type": "VenvPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, PexProcess, ..)" + ], + "input_types": [ + "PexPEX", + "Pex" + ], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "VenvPex" + ], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "PexCompletePlatformsField" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.find_interpreter": { + "description": "Find Python interpreter for constraints", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexSubsystem", + "EnvironmentTarget" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_type": "PythonExecutable", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_venv_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.wrap_venv_prex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PexRequest", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_type": "VenvPexRequest", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.download_pex_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "PexCli", + "Platform" + ], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_type": "PexPEX", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "EnvironmentAware", + "GlobalOptions", + "PexSubsystem" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_environment.find_pex_python": { + "description": "Prepare environment for running PEXes", + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBinary", + "PexSubsystem", + "EnvironmentAware", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_type": "PexEnvironment", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "ChosenPythonResolveRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_type": "PexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequirementsPexRequest" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_RepositoryPexRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "InterpreterConstraintsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ResolvePexConfigRequest", + "PythonSetup", + "PythonRepos", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "output_type": "ResolvePexConfig", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.load_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "LoadedLockfileRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_type": "LoadedLockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.python_sources.prepare_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "PythonSourceFilesRequest", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.python_sources.strip_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFiles, ..)" + ], + "input_types": [ + "PythonSourceFiles" + ], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets": { + "description": "Find all vcs_version targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "output_type": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeGitWorktree, GitWorktreeRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GeneratePythonFromSetuptoolsSCMRequest", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllVCSVersionTargets", + "PythonSetup", + "PythonVCSVersionMappingMarker" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ReadlinkBinary, ReadlinkBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsMetadataRequest", + "BashBinary", + "JvmSubsystem", + "ScalaSubsystem", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaMainClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request", + "output_type": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaTestClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request", + "output_type": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": [ + "ScalacOptionsParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.collect_thirdparty_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ThirdpartyModulesRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "output_type": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "HandleScalacOptionsRequest", + "BuildRoot", + "Workspace" + ], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPDependencyModulesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "output_type": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.compile_scala_source": { + "description": "Compile with scalac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.fetch_scala_library": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "ScalaLibraryRequest" + ], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.fetch_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaPluginsRequest" + ], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis": { + "description": "Inferring Scala dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency": { + "description": "Infer dependency on scala-library artifact for Scala target.", + "documentation": null, + "input_gets": [ + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferScalaLibraryDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies": { + "description": "Infer dependency on scala plugin artifacts for Scala target.", + "documentation": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": [ + "InferScalaPluginDependenciesRequest" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "AnalyzeScalaSourceRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "SourceFilesRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "output_type": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaParserToolLockfileSentinel" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleScalaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets": { + "description": "Find all Scala targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols": { + "description": "Map all first party Scala targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.check.scalac_check": { + "description": "Check compilation for Scala", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ScalacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.repl.create_scala_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaRepl", + "BashBinary", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.tailor.find_putative_targets": { + "description": "Determine candidate Scala targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files": { + "description": null, + "documentation": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "GatherScalafmtConfigFilesRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalafmtToolLockfileSentinel", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "PartitionRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt": { + "description": "Format with scalafmt", + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "InternalJdk", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.scala_settings_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaInferSubsystem", + "ScalaSettingsRequest" + ], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalatestToolLockfileSentinel", + "Scalatest" + ], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.run_scalatest_test": { + "description": "Run Scalatest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "Batch" + ], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaArtifactsForVersionRequest" + ], + "name": "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version", + "output_type": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.shell.dependency_inference.find_all_shell_targets": { + "description": "Find all Shell targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.infer_shell_dependencies": { + "description": "Inferring Shell dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": [ + "InferShellDependencies", + "ShellMapping", + "ShellSetup" + ], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.map_shell_files": { + "description": "Creating map of Shell file names to Shell targets", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllShellTargets" + ], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.parse_shell_imports": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ParseShellImportsRequest", + "Shellcheck", + "Platform" + ], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck": { + "description": "Lint with Shellcheck", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "Shellcheck", + "Platform" + ], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_type": "LintResult", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt": { + "description": "Format with shfmt", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Shfmt", + "Platform" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.backend.shell.shell_command.prepare_shell_command_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ShellCommandProcessRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.shell_command.prepare_shell_command_process", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shell_command.run_shell_command": { + "description": "Running shell command", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(ProcessResult, {EnvironmentName: .., ShellCommandProcessRequest: ..})", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "GenerateFilesFromShellCommandRequest" + ], + "name": "pants.backend.shell.shell_command.run_shell_command", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shell_command.run_shell_command_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Process, ShellCommandProcessRequest, ..)" + ], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.backend.shell.shell_command.run_shell_command_request", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shell_command.run_shell_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.backend.shell.shell_command.run_shell_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell": { + "description": "Determine shunit2 shell", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Shunit2RunnerRequest", + "EnvironmentAware" + ], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2": { + "description": "Run tests with Shunit2", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem" + ], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_adapter_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test": { + "description": "Setup Shunit2 to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target": { + "description": "Setup shunit2", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "EnvironmentAware", + "TestSubsystem", + "TestExtraEnv", + "GlobalOptions", + "Shunit2" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.tailor.find_putative_targets": { + "description": "Determine candidate shell targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources", + "ShellSetup" + ], + "name": "pants.backend.shell.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ShellGeneratorSettingsRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + }, + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferTerraformModuleDependenciesRequest" + ], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TerraformHcl2ParserLockfileSentinel", + "TerraformHcl2Parser" + ], + "name": "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "TerraformHcl2Parser" + ], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseTerraformModuleSources", + "ParserSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.check.terraform_check": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": [ + "TerraformCheckRequest", + "TerraformValidateSubsystem" + ], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets": { + "description": "Determine candidate Terraform targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeTerraformTargetsRequest", + "TerraformTool", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt": { + "description": "Format with `terraform fmt`", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.tool.setup_terraform_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "TerraformProcess", + "TerraformTool", + "Platform" + ], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.bsp.rules.bsp_context": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SessionValues" + ], + "name": "pants.bsp.rules.bsp_context", + "output_type": "BSPContext", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.bsp_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPCompileResult, CompileOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_type": "CompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.compile_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPCompileResult, BSPCompileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileOneBSPTargetRequest", + "BSPContext", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.compile.compile_bsp_target", + "output_type": "BSPCompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.lifecycle.bsp_build_initialize": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InitializeBuildParams", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.bsp_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPResourcesResult, ResourcesForOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.resources.bsp_resources_request", + "output_type": "ResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.resources_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPResourcesResult, BSPResourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesForOneBSPTargetRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.resources.resources_bsp_target", + "output_type": "BSPResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": [ + "SourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_type": "SourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DependencyModulesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependencySourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_workspace_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateOneBSPBuildTargetResult, GenerateOneBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "BSPBuildTargets", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPBuildTargetsMetadataResult, BSPBuildTargetsMetadataRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "GenerateOneBSPBuildTargetRequest", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "output_type": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "MaterializeBuildTargetSourcesRequest", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(BSPBuildTargetInternal, _ParseOneBSPMappingRequest, ..)" + ], + "input_types": [ + "BSPGoal" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "output_type": "BSPBuildTargets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.parse_one_bsp_mapping": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_ParseOneBSPMappingRequest" + ], + "name": "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecsWithoutFileOwners, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal", + "UnionMembership", + "FieldDefaults" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "output_type": "Targets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BuildTargetIdentifier", + "BSPBuildTargets" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "output_type": "BSPBuildTargetSourcesInfo", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_one_dependency_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(BSPDependencyModulesResult, BSPDependencyModulesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResolveOneDependencyModuleRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + }, + "pants.core.goals.check.check": { + "description": "`check` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(CheckResults, {CheckRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "Workspace", + "FilteredTargets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_type": "Check", + "provider": "pants.core" + }, + "pants.core.goals.deploy.publish_process_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)" + ], + "input_types": [ + "_PublishProcessesForTargetRequest" + ], + "name": "pants.core.goals.deploy.publish_process_for_target", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.deploy.run_deploy": { + "description": "`experimental-deploy` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(DeployProcess, DeployFieldSet, ..)", + "Get(PublishProcesses, _PublishProcessesForTargetRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "DeploySubsystem" + ], + "name": "pants.core.goals.deploy.run_deploy", + "output_type": "Deploy", + "provider": "pants.core" + }, + "pants.core.goals.export.export": { + "description": "`export` goal", + "documentation": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir", + "ExportSubsystem" + ], + "name": "pants.core.goals.export.export", + "output_type": "Export", + "provider": "pants.core" + }, + "pants.core.goals.fix.convert_fix_result_to_lint_result": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FixResult" + ], + "name": "pants.core.goals.fix.convert_fix_result_to_lint_result", + "output_type": "LintResult", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix": { + "description": "`fix` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FixSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fix.fix", + "output_type": "Fix", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix_batch": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(FixResult, Batch, ..)" + ], + "input_types": [ + "_FixBatchRequest" + ], + "name": "pants.core.goals.fix.fix_batch", + "output_type": "_FixBatchResult", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt": { + "description": "`fmt` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_type": "Fmt", + "provider": "pants.core" + }, + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal": { + "description": "`generate-lockfiles` goal", + "documentation": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, {RequestedUserResolveNames: .., EnvironmentName: ..})", + "Get(WrappedGenerateLockfile, {GenerateToolLockfileSentinel: .., EnvironmentName: ..})", + "Get(GenerateLockfileResult, {GenerateLockfile: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + }, + "pants.core.goals.lint.lint": { + "description": "`lint` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(LintResult, Batch, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Specs", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_type": "Lint", + "provider": "pants.core" + }, + "pants.core.goals.package.environment_aware_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(BuiltPackage, {PackageFieldSet: .., EnvironmentName: ..})" + ], + "input_types": [ + "EnvironmentAwarePackageRequest" + ], + "name": "pants.core.goals.package.environment_aware_package", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.goals.package.find_all_packageable_targets": { + "description": "Find all packageable targets in project", + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)" + ], + "input_types": [ + "AllTargets" + ], + "name": "pants.core.goals.package.find_all_packageable_targets", + "output_type": "AllPackageableTargets", + "provider": "pants.core" + }, + "pants.core.goals.package.package_asset": { + "description": "`package` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "DistDir" + ], + "name": "pants.core.goals.package.package_asset", + "output_type": "Package", + "provider": "pants.core" + }, + "pants.core.goals.publish.package_for_publish": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(PublishProcesses, {PublishRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "PublishProcessesRequest", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.publish.package_for_publish", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.publish.run_publish": { + "description": "`publish` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "PublishSubsystem", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.publish.run_publish", + "output_type": "Publish", + "provider": "pants.core" + }, + "pants.core.goals.repl.run_repl": { + "description": "`repl` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "ReplSubsystem", + "FilteredTargets", + "UnionMembership", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.repl.run_repl", + "output_type": "Repl", + "provider": "pants.core" + }, + "pants.core.goals.run.run": { + "description": "`run` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(RunDebugAdapterRequest, RunFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "DebugAdapterSubsystem", + "GlobalOptions", + "Workspace", + "BuildRoot", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.run.run", + "output_type": "Run", + "provider": "pants.core" + }, + "pants.core.goals.tailor.determine_all_owned_sources": { + "description": "Determine all files already owned by targets", + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_type": "AllOwnedSources", + "provider": "pants.core" + }, + "pants.core.goals.tailor.edit_build_files": { + "description": "Edit BUILD files with new targets", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "EditBuildFilesRequest", + "TailorSubsystem" + ], + "name": "pants.core.goals.tailor.edit_build_files", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + }, + "pants.core.goals.tailor.rename_conflicting_targets": { + "description": null, + "documentation": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": [ + "PutativeTargets", + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + }, + "pants.core.goals.tailor.restrict_conflicting_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PutativeTarget" + ], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + }, + "pants.core.goals.tailor.tailor": { + "description": "`tailor` goal", + "documentation": null, + "input_gets": [ + "Get(SpecsPaths, Specs, ..)", + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_type": "TailorGoal", + "provider": "pants.core" + }, + "pants.core.goals.test.build_runtime_package_dependencies": { + "description": "Build runtime package dependencies for tests", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)" + ], + "input_types": [ + "BuildPackageDependenciesRequest" + ], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + }, + "pants.core.goals.test.get_filtered_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.goals.test.get_filtered_environment", + "output_type": "TestExtraEnv", + "provider": "pants.core" + }, + "pants.core.goals.test.run_tests": { + "description": "`test` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(Partitions, {PartitionRequest: .., EnvironmentName: ..})", + "Get(EnvironmentName, SingleEnvironmentNameRequest, ..)", + "Get(TestDebugRequest, {Batch: .., EnvironmentName: ..})", + "Get(TestDebugAdapterRequest, {Batch: .., EnvironmentName: ..})", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})", + "Get(TestResult, {Batch: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, {CoverageDataCollection: .., EnvironmentName: ..})", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "DebugAdapterSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.test.run_tests", + "output_type": "Test", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_black": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithBlackRequest", + "Black" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_yapf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithYapfRequest", + "Yapf" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields": { + "description": "Check for deprecated field type names", + "documentation": null, + "input_gets": [ + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)" + ], + "input_types": [ + "RenameDeprecatedFieldsRequest" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets": { + "description": "Check for deprecated target type names", + "documentation": null, + "input_gets": [ + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)" + ], + "input_types": [ + "RenameDeprecatedTargetsRequest" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.update_build_files": { + "description": "Update all BUILD files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership", + "Specs" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(_SearchPaths, _PyEnvPathsRequest, ..)" + ], + "input_types": [ + "_ExpandInterpreterSearchPathsRequest" + ], + "name": "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "output_type": "_SearchPaths", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap._get_pyenv_paths": { + "description": null, + "documentation": "Returns a tuple of paths to Python interpreters managed by pyenv.\n\n:param `request.env_tgt`: The environment target -- if not referring to a local/no environment,\n this will return an empty path.\n:param bool pyenv_local: If True, only use the interpreter specified by\n '.python-version' file under `build_root`.", + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "_PyEnvPathsRequest" + ], + "name": "pants.core.subsystems.python_bootstrap._get_pyenv_paths", + "output_type": "_SearchPaths", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap.python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_SearchPaths, _ExpandInterpreterSearchPathsRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_type": "PythonBootstrap", + "provider": "pants.core" + }, + "pants.core.target_types.find_all_assets": { + "description": "Find all assets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets", + "AllAssetTargetsRequest" + ], + "name": "pants.core.target_types.find_all_assets", + "output_type": "AllAssetTargets", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_file_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateFileSourceRequest" + ], + "name": "pants.core.target_types.hydrate_file_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_resource_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateResourceSourceRequest" + ], + "name": "pants.core.target_types.hydrate_resource_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.map_assets_by_path": { + "description": "Mapping assets by path", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllAssetTargets" + ], + "name": "pants.core.target_types.map_assets_by_path", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + }, + "pants.core.target_types.package_archive_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": [ + "ArchiveFieldSet" + ], + "name": "pants.core.target_types.package_archive_target", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.target_types.relocate_files": { + "description": "Relocating loose files for `relocated_files` targets", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "RelocateFilesViaCodegenRequest" + ], + "name": "pants.core.target_types.relocate_files", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest": { + "description": null, + "documentation": "Backwards-compatibility helper.", + "input_gets": [], + "input_types": [ + "Digest" + ], + "name": "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest", + "output_type": "MaybeExtractArchiveRequest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.create_archive": { + "description": "Creating an archive file", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ZipBinary, ZipBinaryRequest, ..)", + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CreateArchive" + ], + "name": "pants.core.util_rules.archive.create_archive", + "output_type": "Digest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.maybe_extract_archive": { + "description": "Extracting an archive file", + "documentation": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary, UnzipBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(GunzipBinary, GunzipBinaryRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MaybeExtractArchiveRequest" + ], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_type": "ExtractedArchive", + "provider": "pants.core" + }, + "pants.core.util_rules.asdf.resolve_asdf_tool_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "AsdfToolPathsRequest", + "BuildRoot" + ], + "name": "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "output_type": "AsdfToolPathsResult", + "provider": "pants.core" + }, + "pants.core.util_rules.config_files.find_config_file": { + "description": "Find config files", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ConfigFilesRequest" + ], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_type": "ConfigFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.distdir.get_distdir": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GlobalOptions", + "BuildRoot" + ], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_type": "DistDir", + "provider": "pants.core" + }, + "pants.core.util_rules.external_tool.download_external_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ExternalToolRequest" + ], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Shunit2" + ], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Shellcheck" + ], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Shfmt" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.core.util_rules.source_files.determine_source_files": { + "description": "Get all relevant source files", + "documentation": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFilesRequest" + ], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_type": "SourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_file_name": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "StrippedFileNameRequest" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_type": "StrippedFileName", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_source_roots": { + "description": null, + "documentation": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFiles" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_sources_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourcesPaths" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + }, + "pants.core.util_rules.subprocess_environment.get_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.create_binary_shims": { + "description": null, + "documentation": "Creates a bin directory with shims for all requested binaries.\n\nUseful as input digest for a Process to setup a `bin` directory for PATH.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryShimsRequest", + "BashBinary", + "MkdirBinary", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_type": "BinaryShims", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_bash": { + "description": "Finding the `bash` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "BashBinaryRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryPathRequest", + "EnvironmentTarget" + ], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_type": "BinaryPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat": { + "description": "Finding the `cat` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cat", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "CatBinaryRequest", + "CatBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_cat_wrapper", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod": { + "description": "Finding the `chmod` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ChmodBinaryRequest", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_chmod_wrapper", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cp": { + "description": "Finding the `cp` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cp", + "output_type": "CpBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff": { + "description": "Finding the `diff` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DiffBinaryRequest", + "DiffBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_diff_wrapper", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_git", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GitBinaryRequest", + "GitBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_git_wrapper", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_gunzip": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_gunzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GunzipBinaryRequest", + "GunzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip_wrapper", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir": { + "description": "Finding the `mkdir` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MkdirBinaryRequest", + "MkdirBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_mkdir_wrapper", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mv": { + "description": "Finding the `mv` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mv", + "output_type": "MvBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_open": { + "description": "Finding the `open` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_open", + "output_type": "OpenBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_python": { + "description": "Finding a `python` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "PythonBootstrap" + ], + "name": "pants.core.util_rules.system_binaries.find_python", + "output_type": "PythonBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink": { + "description": "Finding the `readlink` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_readlink", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ReadlinkBinaryRequest", + "ReadlinkBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_readlink_wrapper", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar": { + "description": "Finding the `tar` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TarBinaryRequest", + "TarBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_tar_wrapper", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_touch": { + "description": "Finding the `touch` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_touch", + "output_type": "TouchBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip": { + "description": "Finding the `unzip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnzipBinaryRequest", + "UnzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip": { + "description": "Finding the `zip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ZipBinaryRequest", + "ZipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_zip_wrapper", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.get_bash": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.maybe_find_git", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MaybeGitBinaryRequest", + "MaybeGitBinary" + ], + "name": "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.engine.process.fallible_to_exec_result_or_raise": { + "description": null, + "documentation": "Converts a FallibleProcessResult to a ProcessResult or raises an error.", + "input_gets": [], + "input_types": [ + "FallibleProcessResult", + "ProductDescription", + "KeepSandboxes" + ], + "name": "pants.engine.process.fallible_to_exec_result_or_raise", + "output_type": "ProcessResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.get_multi_platform_request_description": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Process" + ], + "name": "pants.engine.process.get_multi_platform_request_description", + "output_type": "ProductDescription", + "provider": "pants.backend.experimental.helm" + }, + "pants.goal.anonymous_telemetry.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AnonymousTelemetryCallbackFactoryRequest", + "AnonymousTelemetry" + ], + "name": "pants.goal.anonymous_telemetry.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.goal.stats_aggregator.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.jvm.bsp.compile.notify_for_classpath_entry": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "BSPClasspathEntryRequest", + "BSPContext" + ], + "name": "pants.jvm.bsp.compile.notify_for_classpath_entry", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "ClasspathEntryRequestFactory" + ], + "name": "pants.jvm.classpath.classpath", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.loose_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ClasspathEntry", + "UnzipBinary" + ], + "name": "pants.jvm.classpath.loose_classfiles", + "output_type": "LooseClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.calculate_jvm_request_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnionMembership" + ], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.classpath_dependency_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.compile_classpath_entries": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ClasspathEntryRequests" + ], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.required_classfiles": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleClasspathEntry" + ], + "name": "pants.jvm.compile.required_classfiles", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping": { + "description": null, + "documentation": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "output_type": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets": { + "description": "Find all jvm_artifact targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields": { + "description": "Find all targets with experimental_provides fields in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SymbolMap, FirstPartyMappingRequest, ..)" + ], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem", + "ThirdPartySymbolMapping" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "output_type": "SymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.determine_jvm_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownJVMUserResolveNamesRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.generate_jvm_lockfile": { + "description": "Generate JVM lockfile", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.fetch_nailgun": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.internal_jdk": { + "description": null, + "documentation": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)" + ], + "input_types": [ + "JvmSubsystem" + ], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.jvm_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess", + "JvmSubsystem", + "GlobalOptions" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.prepare_jdk_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "EnvironmentAware", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest", + "EnvironmentTarget" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.deploy_jar_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": [ + "DeployJarClasspathEntryRequest" + ], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.package_deploy_jar": { + "description": null, + "documentation": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Producing a ZIP file containing _only_ the JAR manifest file for the `main_class`\n3. Creating a deploy jar with a broken ZIP index by concatenating all dependency JARs together,\n followed by the thin JAR we created\n4. Using the unix `zip` utility's repair function to fix the broken fat jar", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, StripJarRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BashBinary", + "ZipBinary", + "JvmSubsystem", + "DeployJarFieldSet" + ], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.package_war": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "PackageWarFileFieldSet", + "BashBinary", + "ZipBinary" + ], + "name": "pants.jvm.package.war.package_war", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_content": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "RenderWarContentRequest" + ], + "name": "pants.jvm.package.war.render_war_content", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_deployment_descriptor": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderWarDeploymentDescriptorRequest" + ], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile": { + "description": null, + "documentation": "Fetch every artifact in a lockfile.", + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [ + "CoursierResolvedLockfile" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord": { + "description": null, + "documentation": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "CoursierLockfileEntry" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile": { + "description": null, + "documentation": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier": { + "description": "Fetch with coursier", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierFetchRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "CoursierResolveKey" + ], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "ToolClasspathRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets": { + "description": null, + "documentation": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": [ + "Get(Digest, PathGlobs, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "Coursier", + "CoursierFetchProcess" + ], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.setup_coursier": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBinary", + "Platform" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "GatherJvmCoordinatesRequest" + ], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": [ + "GenerateJvmLockfileFromTool" + ], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resources.assemble_resources_jar": { + "description": "Assemble resources", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "BashBinary", + "TouchBinary", + "JvmSubsystem", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.run_deploy_jar_debug_adapter_binary", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.jvm.strip_jar.strip_jar.build_processors", + "output_type": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StripJarToolLockfileSentinel" + ], + "name": "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.strip_jar": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "StripJarCompiledClassfiles", + "InternalJdk", + "StripJarRequest" + ], + "name": "pants.jvm.strip_jar.strip_jar.strip_jar", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types.jvm_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JvmResolveFieldDefaultFactoryRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.target_types.jvm_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.generate_junit_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JunitToolLockfileSentinel", + "JUnit" + ], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.run_junit_test": { + "description": "Run JUnit", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "Batch" + ], + "name": "pants.jvm.test.junit.run_junit_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.util_rules.digest_to_file_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "ExtractFileDigest" + ], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + }, + "pants.source.source_root.all_roots": { + "description": "Compute all source roots", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootConfig" + ], + "name": "pants.source.source_root.all_roots", + "output_type": "AllSourceRoots", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_root": { + "description": null, + "documentation": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest", + "SourceRootConfig" + ], + "name": "pants.source.source_root.get_optional_source_root", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_roots": { + "description": null, + "documentation": "Rule to request source roots that may not exist.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_optional_source_roots", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_root": { + "description": null, + "documentation": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest" + ], + "name": "pants.source.source_root.get_source_root", + "output_type": "SourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_roots": { + "description": null, + "documentation": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_source_roots", + "output_type": "SourceRootsResult", + "provider": "pants.core" + }, + "pants.vcs.git.get_git_worktree": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GitWorktreeRequest", + "MaybeGitBinary" + ], + "name": "pants.vcs.git.get_git_worktree", + "output_type": "MaybeGitWorktree", + "provider": "pants.core" + } + }, + "name_to_target_type_info": { + "_generator_sources_helper": { + "alias": "_generator_sources_helper", + "description": "A private helper target type used by some target generators.\n\nThis tracks their `source` / `sources` field so that `--changed-since --changed-dependees` works properly for generated targets.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.python", + "summary": "A private helper target type used by some target generators." + }, + "_lockfile": { + "alias": "_lockfile", + "description": "A target for lockfiles in order to include them in the dependency graph of other targets.\n\nThis tracks them so that `--changed-since --changed-dependees` works properly for targets relying on a particular lockfile.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A target for lockfiles in order to include them in the dependency graph of other targets." + }, + "_lockfiles": { + "alias": "_lockfiles", + "description": "Generate a `_lockfile` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.lock']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `_lockfile` target for each file in the `sources` field." + }, + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_environment": { + "alias": "docker_environment", + "description": "Configuration of a Docker environment used for building your code.\n\nEnvironment configuration includes both Docker-specific information (including the image and platform choice), as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this Docker environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image", + "default": null, + "description": "The docker image ID to use when this environment is loaded.\n\nThis value may be any image identifier that the local Docker installation can accept. This includes image names with or without tags (e.g. `centos6` or `centos6:latest`), or image names with an immutable digest (e.g. `centos@sha256:`).\n\nThe choice of image ID can affect the reproducibility of builds. Consider using an immutable digest if reproducibility is needed, but regularly ensure that the image is free of relevant bugs or security vulnerabilities.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "platform", + "default": null, + "description": "If set, Docker will always use the specified platform when pulling and running the image.\n\nIf unset, Pants will default to the CPU architecture of your local host machine. For example, if you are running on Apple Silicon, it will use `linux_arm64`, whereas running on Intel macOS will use `linux_x86_64`. This mirrors Docker's behavior when `--platform` is left off.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this Docker environment cannot be used because either the global option `--docker-execution` is false, or the field `platform` is not compatible with the local host's CPU architecture (this is only an issue when the local host is Linux; macOS is fine).\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific Docker environment cannot be used.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "shell_setup_executable_search_path", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_path` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a Docker environment used for building your code." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "\nAny tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.15/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [docker].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. \"/\".\n\nIt uses the `[docker].default_repository` by default.\n\nrepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory`, `parent_directory`, and `default_repository`.\n\nRegistries may also configure the repository value for specific registries.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nlabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: default|[=|[,]])\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this image to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pull", + "default": "False", + "description": "If true, then docker will always attempt to pull a newer version of the image.\n\nNOTE: This option cannot be used on images that build off of \"transient\" base images referenced by address (i.e. `FROM path/to/your/base/Dockerfile`).", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "squash", + "default": "False", + "description": "If true, then docker will squash newly built layers into a single new layer.\n\nNote that this option is only supported on a Docker daemon with experimental features enabled.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_run_shell_command": { + "alias": "experimental_run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n experimental_run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `experimental_shell_command`, in addition to `workdir` you only have the `command` and `dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the current working directory of the command, relative to the project root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "experimental_shell_command": { + "alias": "experimental_shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n experimental_shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n dependencies=[\":scripts\"],\n outputs=[\"results/\", \"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output from the command logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "outputs", + "default": null, + "description": "Specify the shell command output files and directories.\n\nUse a trailing slash on directory names, i.e. `my_dir/`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": null, + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in the shell process. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an http_source is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target. `http_source` has the following signature:\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\nThe filename defaults to the last part of the URL path (E.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory). You can easily get the len and checksum with the following command:\n `curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null`", + "provider": "", + "required": true, + "type_hint": "str | HTTPSource" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.go', '*_test.go', '!test_ignore.go']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_artifact": { + "alias": "helm_artifact", + "description": "A third party Helm artifact.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registry", + "default": null, + "description": "Either registry alias (prefixed by `@`) configured in `[helm.registries]` for the Helm artifact or the full OCI registry URL.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repository", + "default": null, + "description": "Either a HTTP(S) URL to a classic repository, or a path inside an OCI registry (when `registry` is provided).", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "Artifact name of the chart, without version number.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The `version` part of a third party Helm chart.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A third party Helm artifact." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'values.yml', 'templates/*.yaml', 'templates/*.yml', 'templates/*.tpl', 'crds/*.yaml', 'crds/*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['values.yaml', 'templates/*.yaml', '!values_ignore.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "repository", + "default": null, + "description": "Repository to use in the Helm registry where this chart is going to be published.\n\nIf no value is given and `[helm].default-registry-repository` is undefined too, then the chart will be pushed to the root of the OCI registry.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any OCI registries to use for the built chart.\n\nThe address is an `oci://` prefixed domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [helm].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [helm.registries.my-registry-alias]\n address = \"oci://myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n helm_chart(\n registries = [\n \"@my-registry-alias\",\n \"oci://myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this Helm chart to registries when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_lint", + "default": "False", + "description": "If set to true, do not run any linting in this Helm chart when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart." + }, + "helm_deployment": { + "alias": "helm_deployment", + "description": "A Helm chart deployment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "release_name", + "default": null, + "description": "Name of the release used in the deployment. If not set, the target name will be used instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.yaml', '*.yml')", + "description": "Helm configuration files for a given deployment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "namespace", + "default": null, + "description": "Kubernetes namespace for the given deployment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_crds", + "default": "False", + "description": "If true, then does not deploy the Custom Resource Definitions that are defined in the chart.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "values", + "default": null, + "description": "Individual values to use when rendering a given deployment.\n\nValue names should be defined using dot-syntax as in the following example:\n\n``` helm_deployment(\n values={\n \"nameOverride\": \"my_custom_name\",\n \"image.pullPolicy\": \"Always\",\n },\n) ```\n\nValues can be dynamically calculated using interpolation as shown in the following example:\n\n``` helm_deployment(\n values={\n \"configmap.deployedAt\": \"{env.DEPLOY_TIME}\",\n },\n) ```\n\nCheck the Helm backend documentation on what are the options available and its caveats when making usage of dynamic values in your deployments.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "create_namespace", + "default": "False", + "description": "If true, the namespace will be created if it doesn't exist.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "no_hooks", + "default": "False", + "description": "If true, none of the lifecycle hooks of the given chart will be included in the deployment.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": null, + "description": "Timeout in seconds when running a Helm deployment.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "post_renderers", + "default": null, + "description": "List of runnable targets to be used to post-process the helm chart after being rendered by Helm.\n\nThis is equivalent to the same post-renderer feature already available in Helm with the difference that this supports a list of executables instead of a single one.\n\nWhen more than one post-renderer is given, they will be combined into a single one in which the input of each of them would be output of the previous one.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart deployment." + }, + "helm_unittest_test": { + "alias": "helm_unittest_test", + "description": "A single helm-unittest suite file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A single helm-unittest suite file." + }, + "helm_unittest_tests": { + "alias": "helm_unittest_tests", + "description": "Generates a `helm_unittest_test` target per each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.yaml',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*_test.yaml', '!ignore_test.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"configmap_test.yaml\": {\"timeout\": 120},\n (\"deployment_test.yaml\", \"pod_test.yaml\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `helm_unittest_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "Generates a `helm_unittest_test` target per each file in the `sources` field." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.java', 'New*.java', '!OldExample.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.java', '!TestIgnore.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "excludes", + "default": null, + "description": "A list of unversioned coordinates (i.e. `group:artifact`) that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nThese values are passed directly to Coursier, and if specified incorrectly will show a parse error from Coursier.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., web.xml) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "kotlin_junit_test": { + "alias": "kotlin_junit_test", + "description": "A single Kotlin test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin test, run with JUnit." + }, + "kotlin_junit_tests": { + "alias": "kotlin_junit_tests", + "description": "Generate a `kotlin_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.kt', '!TestIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_junit_test` target for each file in the `sources` field." + }, + "kotlin_source": { + "alias": "kotlin_source", + "description": "A single Kotlin source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin source file containing application or library code." + }, + "kotlin_sources": { + "alias": "kotlin_sources", + "description": "Generate a `kotlin_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.kt', 'New*.kt', '!OldIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_source` target for each file in the `sources` field." + }, + "kotlinc_plugin": { + "alias": "kotlinc_plugin", + "description": "A plugin for `kotlinc`.\n\nTo enable a `kotlinc` plugin, define a target with this target type, and set the `artifact` field to the address of a `jvm_artifact` target that provides the plugin. Set the `plugin_id` field to the ID of the plugin if that name cannot be inferred from the `name` of this target.\n\nThe standard `kotlinc` plugins are available via the following artifact coordinates and IDs: * All-open: `org.jetbrains.kotlin:kotlin-allopen:VERSION` (ID: `all-open`)\n* No-arg: `org.jetbrains.kotlin:kotlin-noarg:VERSION` (ID: `no-arg`)\n* SAM with receiver: `org.jetbrains.kotlin:kotlin-sam-with-receiver:VERSION` (ID: `sam-with-receiver`)\n* kapt (annotation processor): `org.jetbrains.kotlin:org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:VERSION` (ID: `kapt3`)\n* Seralization: `org.jetbrains.kotlin:kotlin-serialization:VERSION` (ID: `serialization`)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `kotlinc`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_id", + "default": null, + "description": "The ID for `kotlinc` to use when setting options for the plugin.\n\nIf not set, the plugin ID defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "plugin_args", + "default": null, + "description": "Optional list of argument to pass to the plugin.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A plugin for `kotlinc`." + }, + "local_environment": { + "alias": "local_environment", + "description": "Configuration of a local execution environment for specific platforms.\n\nEnvironment configuration includes the platforms the environment is compatible with, and optionally a fallback environment, along with environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOnly one `local_environment` may be defined in `[environments-preview].names` per platform, and when `__local__` is specified as the environment, the `local_environment` that matches the current platform (if defined) will be selected.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatible_platforms", + "default": "('linux_arm64', 'linux_x86_64', 'macos_arm64', 'macos_x86_64')", + "description": "Which platforms this environment can be used with.\n\nThis is used for Pants to automatically determine which environment target to use for the user's machine when the environment is set to the special value `__local__`. Currently, there cannot be more than one environment target registered in `[environments-preview].names` for a particular platform. If there is no environment target for a certain platform, Pants will use the options system instead to determine environment variables and executable search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this local environment cannot be used because the field `compatible_platforms` is not compatible with the local host.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific local environment cannot be used.\n\nTip: when targeting Linux, it can be particularly helpful to fallback to a `docker_environment` or `remote_environment` target. That allows you to prefer using the local host when possible, which often has less overhead (particularly compared to Docker). If the local host is not compatible, then Pants will use Docker or remote execution to still run in a similar environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "shell_setup_executable_search_path", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_path` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a local execution environment for specific platforms." + }, + "openapi_document": { + "alias": "openapi_document", + "description": "A single OpenAPI document file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI document file." + }, + "openapi_documents": { + "alias": "openapi_documents", + "description": "Generate an `openapi_document` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('openapi.json', 'openapi.yaml', 'openapi.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['openapi.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_document` target for each file in the `sources` field." + }, + "openapi_source": { + "alias": "openapi_source", + "description": "A single OpenAPI source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI source file." + }, + "openapi_sources": { + "alias": "openapi_sources", + "description": "Generate an `openapi_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.json', '*.yaml', '*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_source` target for each file in the `sources` field." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants. The generated targets will have the correct version based on the `version` in your `pants.toml`, and they will work with dependency inference.\n\nBecause the Plugin API is not yet stable, the version is set automatically for you to improve stability. If you're currently using a dev release, the version will be set to that exact dev release. If you're using an alpha release, release candidate (rc), or stable release, the version will allow any non-dev-release release within the release series, e.g. `>=2.15.0rc0,<2.16`.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n ```\n overrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n }\n ```\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same entry_point in multiple keys, so long as you don't override the same field more than one time for the entry_point.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.15/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.15/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.15/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.proto', 'new_*.proto', '!old_ignore*.proto']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.proto\": {\"grpc\": True},\n \"bar.proto\": {\"description\": \"our user model\"},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.15/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the value of the `binary_name` field. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary that will be output by PyOxidizer. If not set, this will default to the name of this target.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by $ or surrounded with ${ }.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted entry_point passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or []).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets filesystem_resources.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.15/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.15/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: 'path.to.module'.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.15/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the Pex. This is most useful with Lambda Layers to make code uploads smaller when deps are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.15/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\n Example:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies ", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.15/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing setup.py, setup.cfg, pyproject.toml files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "env_vars", + "default": null, + "description": "Environment variables to set when running the PEP-517 build backend.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the long_description field in setup.py.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + }, + { + "alias": "uses_mypyc", + "default": "False", + "description": "If true, this distribution is built using mypyc.\n\nIn this case, Pants will build the distribution in an environment that includes mypy, as configured in the `[mypy]` subsystem, including plugins, config files, extra type stubs, and the distribution's own requirements (which normally would not be needed at build time, but in this case may provide necessary type annotations).\n\nYou will typically set this field on distributions whose setup.py uses mypyc.build.mypycify(). See https://mypyc.readthedocs.io/en/latest/index.html .", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.15/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'cloud_function.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.", + "provider": "", + "required": false, + "type_hint": "'python310' | 'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be 'event' or 'http'. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to --trigger-http.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style file from the `source` field.\n\nThis works with pip-style requirements files: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style file from the `source` field." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'new_*.py', '!old_ignore.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.15/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single `pytest` process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same `pytest` process. Compatible tests may not end up in the same `pytest` batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test_*.py', '*_test.py', 'tests.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo_test.py\": {\"timeout\": 120},\n \"bar_test.py\": {\"timeout\": 200},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.experimental.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single `pytest` process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same `pytest` process. Compatible tests may not end up in the same `pytest` batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "remote_environment": { + "alias": "remote_environment", + "description": "Configuration of a remote execution environment used for building your code.\n\nEnvironment configuration includes platform properties and a fallback environment, as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this remote environment.\n\nNote that you must also configure remote execution with the global options like `remote_execution` and `remote_execution_address`.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOften, it is only necessary to have a single `remote_environment` target for your repository, but it can be useful to have >1 so that you can set different `extra_platform_properties`. For example, with some servers, you could use this to configure a different Docker image per environment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platform", + "default": "'linux_x86_64'", + "description": "The platform used by the remote execution environment.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "extra_platform_properties", + "default": "()", + "description": "Platform properties to set on remote execution requests.\n\nFormat: property=value. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when remote execution is disabled via the global option `--remote-execution`.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when remote execution is disabled.\n\nTip: if you are using a Docker image with your remote execution environment (usually enabled by setting the field extra_platform_properties`), then it can be useful to fallback to an equivalent `docker_image` target so that you have a consistent execution environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cache_binary_discovery", + "default": "False", + "description": "If true, will cache system binary discovery, e.g. finding Python interpreters.\n\nWhen safe to do, it is preferable to set this option to `True` for faster performance by avoiding wasted work. Otherwise, Pants will search for system binaries whenever the Pants daemon is restarted.\n\nHowever, it is only safe to set this to `True` if the remote execution environment has a stable environment, e.g. the server will not change versions of installed system binaries. Otherwise, you risk caching results that become stale when the server changes its environment, which may break your builds. With some remote execution servers, you can specify a Docker image to run with via the field `extra_platform_properties`; if you are able to specify what Docker image to use, and also use a pinned tag of the image, it is likely safe to set this field to true.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "shell_setup_executable_search_path", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_path` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a remote execution environment used for building your code." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an http_source is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target. `http_source` has the following signature:\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\nThe filename defaults to the last part of the URL path (E.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory). You can easily get the len and checksum with the following command:\n `curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null`", + "provider": "", + "required": true, + "type_hint": "str | HTTPSource" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.scala', '!TestIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_junit_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.scala', 'New*.scala', '!OldIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_sources` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala')).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Spec.scala', '!SuiteIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scalatest_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala'))." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.sh', 'new_*.sh', '!old_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test.sh', 'test_*.sh', '!test_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo_test.sh\": {\"timeout\": 120},\n \"bar_test.sh\": {\"timeout\": 200},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.tf', 'new_*.tf', '!old_ignore.tf']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.15/docs/thrift-python", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.thrift', 'new_*.thrift', '!old_ignore.thrift']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.15/docs/targets for more about how addresses are formed, including for generated targets. You can also run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + }, + "vcs_version": { + "alias": "vcs_version", + "description": "Generates a version string from VCS state.\n\nUses a constrained but useful subset of the full functionality of setuptools_scm (https://github.com/pypa/setuptools_scm). These constraints avoid pitfalls in the interaction of setuptools_scm with Pants's hermetic environments.\n\nIn particular, we ignore any existing setuptools_scm config. Instead you must provide a subset of that config in this target's fields.\n\nIf you need functionality that is not currently exposed here, please reach out to us at https://www.pantsbuild.org/v2.15/docs/getting-help.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "tag_regex", + "default": "'^(?:[\\\\w-]+-)?(?P[vV]?\\\\d+(?:\\\\.\\\\d+){0,2}[^\\\\+]*)(?:\\\\+.*)?$'", + "description": "A Python regex string to extract the version string from a VCS tag.\n\nThe regex needs to contain either a single match group, or a group named version, that captures the actual version information.\n\nNote that this is unrelated to the tags field and Pants's own tags concept.\n\nSee https://github.com/pypa/setuptools_scm for implementation details.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "generate_to", + "default": null, + "description": "Generate the version data to this relative path, using the template field.\n\nNote that the generated output will not be written to disk in the source tree, but will be available as a generated dependency to code that depends on this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "template", + "default": null, + "description": "Generate the version data using this format string, which takes a version format kwarg.\n\nE.g., 'version = \"{version}\"'", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python", + "summary": "Generates a version string from VCS state." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.15/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.15.2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.15.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/", + "__pycache__" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/", + "__pycache__" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--logdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "target_field_name": null, + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": [ + "fetch", + "validate", + "defer" + ], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cache-content-behavior=" + ], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "target_field_name": null, + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.15/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-total-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-per-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.15.2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "target_field_name": null, + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-read-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.15.2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-append-only-caches-base-path=", + "config_key": "remote_execution_append_only_caches_base_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-append-only-caches-base-path=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH", + "help": "Sets the base path to use when setting up an append-only cache for a process running remotely. If this option is not set, then append-only caches will not be used with remote execution. The option should be set to the absolute path of a writable directory in the remote execution environment where Pants can create append-only caches for use with remotely executing processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-build-file-globs=" + ], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-cli-globs=" + ], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.15/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-level=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-execution", + "config_key": "docker_execution", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-execution" + ], + "env_var": "PANTS_DOCKER_EXECUTION", + "help": "If true, `docker_environment` targets can be used to run builds inside a Docker container.\n\nIf false, anytime a `docker_environment` target is used, Pants will instead fallback to whatever the target's `fallback_environment` field is set to.\n\nThis can be useful, for example, if you want to always use Docker locally, but disable it in CI, or vice versa.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests.\n\nFormat: property=value. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.\n\nIf you are using the remote_environment target mechanism, set this value as a field on the target instead. This option will be ignored.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "always", + "on_failure", + "never" + ], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--keep-sandboxes=" + ], + "env_var": "PANTS_KEEP_SANDBOXES", + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "target_field_name": null, + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--session-end-tasks-timeout=", + "config_key": "session_end_tasks_timeout", + "default": 3.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--session-end-tasks-timeout=" + ], + "env_var": "PANTS_SESSION_END_TASKS_TIMEOUT", + "help": "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 invocation to a configured remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--session-end-tasks-timeout" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--session-end-tasks-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "indicatif-spinner", + "experimental-prodash" + ], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dynamic-ui-renderer=" + ], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "target_field_name": null, + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.15/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.16.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `[GLOBAL].remote_store_headers` still work.\n\nIf you return `instance_name`, Pants will replace `[GLOBAL].remote_instance_name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": "Remote auth plugins should now provide the function by implementing an entry point called remote_auth.\n\nIf you are developing a plugin, switch to using an entry point.\n\nIf you are only consuming a plugin from someone else, you can delete the remote_auth_plugin option and now only need the plugin to be included in [GLOBAL].plugins", + "removal_version": "2.16.0.dev1", + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "add-trailing-comma": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-version=", + "config_key": "version", + "default": "add-trailing-comma==2.2.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-version=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma==2.2.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-lockfile=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/add_trailing_comma/add_trailing_comma.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=add-trailing-comma`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-console-script=", + "config_key": "console_script", + "default": "add-trailing-comma", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-console-script=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-entry-point=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]add-trailing-comma-skip" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_SKIP", + "help": "If true, don't use add-trailing-comma when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-skip", + "--no-add-trailing-comma-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ARGS", + "help": "Arguments to pass directly to add-trailing-comma, e.g. `--add-trailing-comma-args='--py36-plus'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]add-trailing-comma-export" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_EXPORT", + "help": "If true, export a virtual environment with add-trailing-comma when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--add-trailing-comma-export", + "--no-add-trailing-comma-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "scope": "add-trailing-comma" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.15/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.15/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-expected-version=" + ], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-expected-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-thrift-search-paths" + ], + "target_field_name": "apache_thrift_thrift_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--thrift-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake==1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-version=" + ], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake==1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-lockfile=" + ], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/autoflake/autoflake.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=autoflake`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "help": "If true, don't use Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [ + "--remove-all-unused-imports" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "--remove-all-unused-imports" + ] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]autoflake-export" + ], + "env_var": "PANTS_AUTOFLAKE_EXPORT", + "help": "If true, export a virtual environment with Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--autoflake-export", + "--no-autoflake-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython==3.1.18" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython==3.1.18" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/bandit/bandit.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=bandit`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "If true, don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]bandit-export" + ], + "env_var": "PANTS_BANDIT_EXPORT", + "help": "If true, export a virtual environment with Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--bandit-export", + "--no-bandit-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==22.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==22.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/black/black.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "If true, don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]black-export" + ], + "env_var": "PANTS_BLACK_EXPORT", + "help": "If true, export a virtual environment with Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--black-export", + "--no-black-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-version=" + ], + "env_var": "PANTS_BUF_VERSION", + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-template=" + ], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-format-skip" + ], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "help": "If true, don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-skip", + "--no-buf-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--format-skip", + "--no-format-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-lint-skip" + ], + "env_var": "PANTS_BUF_LINT_SKIP", + "help": "If true, don't use Buf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-skip", + "--no-buf-lint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-skip", + "--no-lint-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--format-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--lint-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "build-deprecations-fixer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]build-deprecations-fixer-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]build-deprecations-fixer-skip" + ], + "env_var": "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP", + "help": "If true, don't use BUILD Deprecations Fixer when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fix`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-deprecations-fixer-skip", + "--no-build-deprecations-fixer-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for: - Renamed targets - Renamed fields", + "is_goal": false, + "provider": "pants.backend.build_files.fix.deprecations", + "scope": "build-deprecations-fixer" + }, + "buildifier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-version=" + ], + "env_var": "PANTS_BUILDIFIER_VERSION", + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-template=" + ], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buildifier-skip" + ], + "env_var": "PANTS_BUILDIFIER_SKIP", + "help": "If true, don't use Buildifier when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-skip", + "--no-buildifier-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_ARGS", + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "is_goal": false, + "provider": "pants.backend.build_files.fmt.buildifier", + "scope": "buildifier" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "target_field_name": null, + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.15/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--check-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_CHECK_ONLY", + "help": "Only run these checkerss and skip all others.\n\nThe checkers names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkerss.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--check-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependees=transitive\"\n\nThis would allow you to run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 green all-changed`, which is shorthand for `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependees=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.0-M5-18-gfebf9838c", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.0-M5-18-gfebf9838c" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=6.5,<6.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=6.5,<6.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/subsystems/coverage_py.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=coverage-py`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']`.\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json", + "lcov" + ], + "comma_separated_choices": "console, xml, html, raw, json, lcov", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "debug-adapter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-host=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-host" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--host" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-port=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "is_goal": false, + "provider": "pants.core", + "scope": "debug-adapter" + }, + "debugpy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-version=", + "config_key": "version", + "default": "debugpy==1.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-version=" + ], + "env_var": "PANTS_DEBUGPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy==1.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-lockfile=" + ], + "env_var": "PANTS_DEBUGPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/subsystems/debugpy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=debugpy`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-console-script=" + ], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-entry-point=" + ], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DEBUGPY_ARGS", + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "debugpy" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees. If unspecified, list direct dependees only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/docformatter/docformatter.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=docformatter`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "If true, don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]docformatter-export" + ], + "env_var": "PANTS_DOCFORMATTER_EXPORT", + "help": "If true, export a virtual environment with docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--docformatter-export", + "--no-docformatter-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-tools=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_TOOLS", + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tools" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tools" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-tailor" + ], + "env_var": "PANTS_DOCKER_TAILOR", + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tailor", + "--no-docker-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "target_field_name": "docker_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find the Docker client and any tools required.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-executable-search-paths" + ], + "target_field_name": "docker_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-context-root=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-context-root" + ], + "target_field_name": null, + "typ": "workspace_path", + "unscoped_cmd_line_args": [ + "--default-context-root" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-verbose" + ], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-verbose", + "--no-build-verbose" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ /home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-version=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-lockfile=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/docker/subsystems/dockerfile.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=dockerfile-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.0.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.0.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.2.6|macos_x86_64|94d1efad05a06c879b9c1afc8a6f7acb2532d33864225605fc766ecdd58d9888|21328767", + "1.2.6|macos_arm64|452675f91cfe955a95708697a739d9b114c39ff566da7d9b31489064ceaaf66a|19774190", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.5|macos_x86_64|d196f94486e54407524a0efbcb5756b197b763863ead2e145f86dd6c80fc9ce8|21323818", + "1.2.5|macos_arm64|77dd998d26e578aa22de557dc142672307807c88e3a4da65d8442de61479899f|19767100", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.4|macos_x86_64|3e04343620fb01b8be01c8689dcb018b8823d8d7b070346086d7df22cc4cd5e6|21321939", + "1.2.4|macos_arm64|e596dcdfe55b2070a55fcb271873e86d1af7f6b624ffad4837ccef119fdac97a|19765021", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.3|macos_x86_64|2962b0ebdf6f431b8fb182ffc1d8b582b73945db0c3ab99230ffc360d9e297a2|21318448", + "1.2.3|macos_arm64|601962205ad3dcf9b1b75f758589890a07854506cbd08ca2fc25afbf373bff53|19757696", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.2|macos_x86_64|bd224d57718ed2b6e5e3b55383878d4b122c6dc058d65625605cef1ace9dcb25|21317982", + "1.2.2|macos_arm64|4750d46e47345809a0baa3c330771c8c8a227b77bec4caa7451422a21acefae5|19758608", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.1|macos_x86_64|d7c9a677efb22276afdd6c7703cbfee87d509a31acb247b96aa550a35154400a|21309907", + "1.2.1|macos_arm64|96e3659e89bfb50f70d1bb8660452ec433019d00a862d2291817c831305d85ea|19751670", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.0|macos_x86_64|f608b1fee818988d89a16b7d1b6d22b37cc98892608c52c22661ca6cbfc3d216|21309982", + "1.2.0|macos_arm64|d4df7307bad8c13e443493c53898a7060f77d661bfdf06215b61b65621ed53e9|19750767", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.1.9|macos_x86_64|c902b3c12042ac1d950637c2dd72ff19139519658f69290b310f1a5924586286|20709155", + "1.1.9|macos_arm64|918a8684da5a5529285135f14b09766bd4eb0e8c6612a4db7c121174b4831739|19835808", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.8|macos_x86_64|29ad0af72d498a76bbc51cc5cb09a6d6d0e5673cbbab6ef7aca57e3c3e780f46|20216382", + "1.1.8|macos_arm64|d6fefdc27396a019da56cce26f7eeea3d6986714cbdd488ff6a424f4bca40de8|19371647", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.7|macos_x86_64|5e7e939e084ae29af7fd86b00a618433d905477c52add2d4ea8770692acbceac|20213394", + "1.1.7|macos_arm64|a36b6e2810f81a404c11005942b69c3d1d9baa8dd07de6b1f84e87a67eedb58f|19371095", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.6|macos_x86_64|bbfc916117e45788661c066ec39a0727f64c7557bf6ce9f486bbd97c16841975|20168574", + "1.1.6|macos_arm64|dddb11195fc413653b98e7a830ec7314f297e6c22575fc878f4ee2287a25b4f5|19326402", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.5|macos_x86_64|7d4dbd76329c25869e407706fed01213beb9d6235c26e01c795a141c2065d053|20157551", + "1.1.5|macos_arm64|723363af9524c0897e9a7d871d27f0d96f6aafd11990df7e6348f5b45d2dbe2c|19328643", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.4|macos_x86_64|c2b2500835d2eb9d614f50f6f74c08781f0fee803699279b3eb0188b656427f2|20098620", + "1.1.4|macos_arm64|a753e6cf402beddc4043a3968ff3e790cf50cc526827cda83a0f442a893f2235|19248286", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.3|macos_x86_64|c54022e514a97e9b96dae24a3308227d034989ecbafb65e3293eea91f2d5edfb|20098660", + "1.1.3|macos_arm64|856e435da081d0a214c47a4eb09b1842f35eaa55e7ef0f9fa715d4816981d640|19244516", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.2|macos_x86_64|214da2e97f95389ba7557b8fcb11fe05a23d877e0fd67cd97fcbc160560078f1|20098558", + "1.1.2|macos_arm64|39e28f49a753c99b5e2cb30ac8146fb6b48da319c9db9d152b1e8a05ec9d4a13|19240921", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.1|macos_x86_64|85fa7c90359c4e3358f78e58f35897b3e466d00c0d0648820830cac5a07609c3|20094218", + "1.1.1|macos_arm64|9cd8faf29095c57e30f04f9ca5fa9105f6717b277c65061a46f74f22f0f5907e|19240711", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.0|macos_x86_64|6fb2af160879d807291980642efa93cc9a97ddf662b17cc3753065c974a5296d|20089311", + "1.1.0|macos_arm64|f69e0613f09c21d44ce2131b20e8b97909f3fc7aa90c443639475f5e474a22ec|19240009", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.0.11|macos_x86_64|92f2e7eebb9699e23800f8accd519775a02bd25fe79e1fe4530eca123f178202|19340098", + "1.0.11|macos_arm64|0f38af81641b00a2cbb8d25015d917887a7b62792c74c28d59e40e56ce6f265c|18498208", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.10|macos_x86_64|e7595530a0dcdaec757621cbd9f931926fd904b1a1e5206bf2c9db6b73cee04d|33021017", + "1.0.10|macos_arm64|eecea1343888e2648d5f7ea25a29494fd3b5ecde95d0231024414458c59cb184|32073869", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.9|macos_x86_64|fb791c3efa323c5f0c2c36d14b9230deb1dc37f096a8159e718e8a9efa49a879|33017665", + "1.0.9|macos_arm64|aa5cc13903be35236a60d116f593e519534bcabbb2cf91b69cae19307a17b3c0|32069384", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.8|macos_x86_64|e2493c7ae12597d4a1e6437f6805b0a8bcaf01fc4e991d1f52f2773af3317342|33018420", + "1.0.8|macos_arm64|9f0e1366484748ecbd87c8ef69cc4d3d79296b0e2c1a108bcbbff985dbb92de8|32068918", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|macos_arm64|cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.6|macos_x86_64|3a97f2fffb75ac47a320d1595e20947afc8324571a784f1bd50bd91e26d5648c|33022053", + "1.0.6|macos_arm64|aaff1eccaf4099da22fe3c6b662011f8295dad9c94a35e1557b92844610f91f3|32080428", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.2.6|macos_x86_64|94d1efad05a06c879b9c1afc8a6f7acb2532d33864225605fc766ecdd58d9888|21328767", + "1.2.6|macos_arm64|452675f91cfe955a95708697a739d9b114c39ff566da7d9b31489064ceaaf66a|19774190", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.5|macos_x86_64|d196f94486e54407524a0efbcb5756b197b763863ead2e145f86dd6c80fc9ce8|21323818", + "1.2.5|macos_arm64|77dd998d26e578aa22de557dc142672307807c88e3a4da65d8442de61479899f|19767100", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.4|macos_x86_64|3e04343620fb01b8be01c8689dcb018b8823d8d7b070346086d7df22cc4cd5e6|21321939", + "1.2.4|macos_arm64|e596dcdfe55b2070a55fcb271873e86d1af7f6b624ffad4837ccef119fdac97a|19765021", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.3|macos_x86_64|2962b0ebdf6f431b8fb182ffc1d8b582b73945db0c3ab99230ffc360d9e297a2|21318448", + "1.2.3|macos_arm64|601962205ad3dcf9b1b75f758589890a07854506cbd08ca2fc25afbf373bff53|19757696", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.2|macos_x86_64|bd224d57718ed2b6e5e3b55383878d4b122c6dc058d65625605cef1ace9dcb25|21317982", + "1.2.2|macos_arm64|4750d46e47345809a0baa3c330771c8c8a227b77bec4caa7451422a21acefae5|19758608", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.1|macos_x86_64|d7c9a677efb22276afdd6c7703cbfee87d509a31acb247b96aa550a35154400a|21309907", + "1.2.1|macos_arm64|96e3659e89bfb50f70d1bb8660452ec433019d00a862d2291817c831305d85ea|19751670", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.0|macos_x86_64|f608b1fee818988d89a16b7d1b6d22b37cc98892608c52c22661ca6cbfc3d216|21309982", + "1.2.0|macos_arm64|d4df7307bad8c13e443493c53898a7060f77d661bfdf06215b61b65621ed53e9|19750767", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.1.9|macos_x86_64|c902b3c12042ac1d950637c2dd72ff19139519658f69290b310f1a5924586286|20709155", + "1.1.9|macos_arm64|918a8684da5a5529285135f14b09766bd4eb0e8c6612a4db7c121174b4831739|19835808", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.8|macos_x86_64|29ad0af72d498a76bbc51cc5cb09a6d6d0e5673cbbab6ef7aca57e3c3e780f46|20216382", + "1.1.8|macos_arm64|d6fefdc27396a019da56cce26f7eeea3d6986714cbdd488ff6a424f4bca40de8|19371647", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.7|macos_x86_64|5e7e939e084ae29af7fd86b00a618433d905477c52add2d4ea8770692acbceac|20213394", + "1.1.7|macos_arm64|a36b6e2810f81a404c11005942b69c3d1d9baa8dd07de6b1f84e87a67eedb58f|19371095", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.6|macos_x86_64|bbfc916117e45788661c066ec39a0727f64c7557bf6ce9f486bbd97c16841975|20168574", + "1.1.6|macos_arm64|dddb11195fc413653b98e7a830ec7314f297e6c22575fc878f4ee2287a25b4f5|19326402", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.5|macos_x86_64|7d4dbd76329c25869e407706fed01213beb9d6235c26e01c795a141c2065d053|20157551", + "1.1.5|macos_arm64|723363af9524c0897e9a7d871d27f0d96f6aafd11990df7e6348f5b45d2dbe2c|19328643", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.4|macos_x86_64|c2b2500835d2eb9d614f50f6f74c08781f0fee803699279b3eb0188b656427f2|20098620", + "1.1.4|macos_arm64|a753e6cf402beddc4043a3968ff3e790cf50cc526827cda83a0f442a893f2235|19248286", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.3|macos_x86_64|c54022e514a97e9b96dae24a3308227d034989ecbafb65e3293eea91f2d5edfb|20098660", + "1.1.3|macos_arm64|856e435da081d0a214c47a4eb09b1842f35eaa55e7ef0f9fa715d4816981d640|19244516", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.2|macos_x86_64|214da2e97f95389ba7557b8fcb11fe05a23d877e0fd67cd97fcbc160560078f1|20098558", + "1.1.2|macos_arm64|39e28f49a753c99b5e2cb30ac8146fb6b48da319c9db9d152b1e8a05ec9d4a13|19240921", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.1|macos_x86_64|85fa7c90359c4e3358f78e58f35897b3e466d00c0d0648820830cac5a07609c3|20094218", + "1.1.1|macos_arm64|9cd8faf29095c57e30f04f9ca5fa9105f6717b277c65061a46f74f22f0f5907e|19240711", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.0|macos_x86_64|6fb2af160879d807291980642efa93cc9a97ddf662b17cc3753065c974a5296d|20089311", + "1.1.0|macos_arm64|f69e0613f09c21d44ce2131b20e8b97909f3fc7aa90c443639475f5e474a22ec|19240009", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.0.11|macos_x86_64|92f2e7eebb9699e23800f8accd519775a02bd25fe79e1fe4530eca123f178202|19340098", + "1.0.11|macos_arm64|0f38af81641b00a2cbb8d25015d917887a7b62792c74c28d59e40e56ce6f265c|18498208", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.10|macos_x86_64|e7595530a0dcdaec757621cbd9f931926fd904b1a1e5206bf2c9db6b73cee04d|33021017", + "1.0.10|macos_arm64|eecea1343888e2648d5f7ea25a29494fd3b5ecde95d0231024414458c59cb184|32073869", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.9|macos_x86_64|fb791c3efa323c5f0c2c36d14b9230deb1dc37f096a8159e718e8a9efa49a879|33017665", + "1.0.9|macos_arm64|aa5cc13903be35236a60d116f593e519534bcabbb2cf91b69cae19307a17b3c0|32069384", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.8|macos_x86_64|e2493c7ae12597d4a1e6437f6805b0a8bcaf01fc4e991d1f52f2773af3317342|33018420", + "1.0.8|macos_arm64|9f0e1366484748ecbd87c8ef69cc4d3d79296b0e2c1a108bcbbff985dbb92de8|32068918", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.7|macos_x86_64|80ae021d6143c7f7cbf4571f65595d154561a2a25fd934b7a8ccc1ebf3014b9b|33020029", + "1.0.7|macos_arm64|cbab9aca5bc4e604565697355eed185bb699733811374761b92000cc188a7725|32071346", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.6|macos_x86_64|3a97f2fffb75ac47a320d1595e20947afc8324571a784f1bd50bd91e26d5648c|33022053", + "1.0.6|macos_arm64|aaff1eccaf4099da22fe3c6b662011f8295dad9c94a35e1557b92844610f91f3|32080428", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]download-terraform-tailor" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "environments-preview": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "names", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_ENVIRONMENTS_PREVIEW_NAMES", + "help": "A mapping of logical names to addresses to environment targets. For example:\n\n [environments-preview.names]\n linux_local = \"//:linux_env\"\n macos_local = \"//:macos_env\"\n centos6 = \"//:centos6_docker_env\"\n linux_ci = \"build-support:linux_ci_env\"\n macos_ci = \"build-support:macos_ci_env\"\n\nTo use an environment for a given target, specify the name in the `environment` field on that target. Pants will consume the environment target at the address mapped from that name.\n\nPants will ignore any environment targets that are not given a name via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--environments-preview-names" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A highly experimental subsystem to allow setting environment variables and executable search paths for different environments, e.g. macOS vs. Linux.", + "is_goal": false, + "provider": "", + "scope": "environments-preview" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]experimental-bsp-server" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--server", + "--no-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": [ + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-runner-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--runner-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-groups-config-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--groups-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-bsp" + }, + "experimental-deploy": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Perform a deployment process.", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-deploy" + }, + "experimental-explorer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-address=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-port=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run the Pants Explorer Web UI server.", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-explorer" + }, + "export": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_RESOLVE", + "help": "Export the specified resolve(s). The export format is backend-specific, e.g., Python resolves are exported as virtualenvs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]export-symlink-python-virtualenv", + "config_key": "symlink_python_virtualenv", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]export-symlink-python-virtualenv" + ], + "env_var": "PANTS_EXPORT_SYMLINK_PYTHON_VIRTUALENV", + "help": "Export a symlink into a cached Python virtualenv. This virtualenv will have no pip binary, and will be immutable. Any attempt to modify it will corrupt the cache! It may, however, take significantly less time to export than a standalone, mutable virtualenv will.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-symlink-python-virtualenv", + "--no-export-symlink-python-virtualenv" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--symlink-python-virtualenv", + "--no-symlink-python-virtualenv" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.backend.docker", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "target_field_name": null, + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "fix": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fix-batch-size=" + ], + "env_var": "PANTS_FIX_BATCH_SIZE", + "help": "The target number of files to be included in each fixer batch.\n\nFixer processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in fixer processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fix-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FIX_ONLY", + "help": "Only run these fixers and skip all others.\n\nThe fixer names are outputted at the final summary of running this goal, e.g. `autoflake` and `pyupgrade`. You can also run `fix --only=fake` to get a list of all activated fixers.\n\nYou can repeat this option, e.g. `fix --only=autoflake --only=pyupgrade` or `fix --only=['autoflake', 'pyupgrade']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fix-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fix-skip-formatters" + ], + "env_var": "PANTS_FIX_SKIP_FORMATTERS", + "help": "If true, skip running all formatters.\n\nFYI: when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fix fmt ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `fix` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-skip-formatters", + "--no-fix-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autofix source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fix" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=5.0.4,<5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=5.0.4,<5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/flake8/flake8.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=flake8`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add 'build-support/flake8' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.15/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n ```\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n ```\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[flake8].extra_requirements`.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Flake8 plugins such as 'flake8-plugins' so that the third-party requirements used by your plugin, like `flake8`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "If true, don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]flake8-export" + ], + "env_var": "PANTS_FLAKE8_EXPORT", + "help": "If true, export a virtual environment with Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--flake8-export", + "--no-flake8-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.flake8", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-batch-size=" + ], + "env_var": "PANTS_FMT_BATCH_SIZE", + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FMT_ONLY", + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from backend-specific configuration such as `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for Python third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "go-generate": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-generate-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-generate-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_GENERATE_ENV_VARS", + "help": "Environment variables to set when invoking generator programs. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-generate-env-vars" + ], + "target_field_name": "go_generate_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the //go:generate directives.\n\nSee https://go.dev/blog/generate for details.", + "is_goal": true, + "provider": "pants.backend.experimental.go", + "scope": "go-generate" + }, + "go-test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{import_path_escaped}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-output-dir=" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "help": "Path to write the Go coverage reports to. Must be relative to the build root. `{distdir}` is replaced with the Pants `distdir`, and `{import_path_escaped}` is replaced with the applicable package's import path but with slashes converted to underscores.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-output-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--coverage-output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{import_path_escaped}" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": [ + "set", + "count", + "atomic" + ], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-cover-mode=" + ], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via --test-use-coverage. Valid values are `set`, `count`, and `atomic`:\n\n* `set`: bool: does this statement run?\n\n* `count`: int: how many times does this statement run?\n\n* `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cover-mode" + ], + "target_field_name": null, + "typ": "GoCoverMode", + "unscoped_cmd_line_args": [ + "--cover-mode" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-coverage-html", + "config_key": "coverage_html", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-coverage-html" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_HTML", + "help": "If true, then convert coverage reports to HTML format and write a `coverage.html` file next to the raw coverage data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-html", + "--no-go-test-coverage-html" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--coverage-html", + "--no-coverage-html" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-skip" + ], + "env_var": "PANTS_GO_TEST_SKIP", + "help": "If true, don't use Go test binary when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-skip", + "--no-go-test-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "help": "If true, don't use gofmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-go-mod-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-package-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-binary-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-tool-name=" + ], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-tool-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-tool-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-bin-relpath=" + ], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-bin-relpath" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-bin-relpath" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "target_field_name": "golang_subprocess_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gcc-binary-name=", + "config_key": "cgo_gcc_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-gcc-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_GCC_BINARY_NAME", + "help": "Name of the tool to use to compile C code included via CGo in a Go package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-gcc-binary-name" + ], + "target_field_name": "golang_cgo_gcc_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-gcc-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gxx-binary-name=", + "config_key": "cgo_gxx_binary_name", + "default": "g++", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-gxx-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_GXX_BINARY_NAME", + "help": "Name of the tool to use to compile C++ code included via CGo in a Go package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-gxx-binary-name" + ], + "target_field_name": "golang_cgo_gxx_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-gxx-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "g++" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-binary-name=", + "config_key": "cgo_fortran_binary_name", + "default": "gfortran", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME", + "help": "Name of the tool to use to compile fortran code included via CGo in a Go package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-fortran-binary-name" + ], + "target_field_name": "golang_cgo_fortran_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-fortran-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gfortran" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-c-flags=\"['', '', ...]\"", + "config_key": "cgo_c_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-c-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_C_FLAGS", + "help": "Compiler options used when compiling C code when Cgo is enabled. Equivalent to setting the CGO_CFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-c-flags" + ], + "target_field_name": "golang_cgo_c_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-c-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-cxx-flags=\"['', '', ...]\"", + "config_key": "cgo_cxx_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-cxx-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_CXX_FLAGS", + "help": "Compiler options used when compiling C++ code when Cgo is enabled. Equivalent to setting the CGO_CXXFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-cxx-flags" + ], + "target_field_name": "golang_cgo_cxx_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-cxx-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-flags=\"['', '', ...]\"", + "config_key": "cgo_fortran_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_FLAGS", + "help": "Compiler options used when compiling Fortran code when Cgo is enabled. Equivalent to setting the CGO_FFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-fortran-flags" + ], + "target_field_name": "golang_cgo_fortran_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-fortran-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-linker-flags=\"['', '', ...]\"", + "config_key": "cgo_linker_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-linker-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_LINKER_FLAGS", + "help": "Compiler options used when linking native code when Cgo is enabled. Equivalent to setting the CGO_LDFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-linker-flags" + ], + "target_field_name": "golang_cgo_linker_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-linker-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-minimum-expected-version=" + ], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-minimum-expected-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--minimum-expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-cgo-enabled", + "config_key": "cgo_enabled", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-cgo-enabled" + ], + "env_var": "PANTS_GOLANG_CGO_ENABLED", + "help": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nTODO: Future Pants changes may also require enabling Cgo via fields on relevant Go targets. See https://github.com/pantsbuild/pants/issues/16833.\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-enabled", + "--no-golang-cgo-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cgo-enabled", + "--no-cgo-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable\n* ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "target_field_name": "golang_go_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-tool-search-paths=\"['', '', ...]\"", + "config_key": "cgo_tool_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-tool-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS", + "help": "A list of paths to search for tools needed by CGo (e.g., gcc, g++).\n\nSpecify absolute paths to directories with tools needed by CGo , e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-tool-search-paths" + ], + "target_field_name": "golang_cgo_tool_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-tool-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "help": "If true, don't use Google Java Format when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "help": "If true, don't use Hadolint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-version=" + ], + "env_var": "PANTS_HELM_VERSION", + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-template=" + ], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-extra-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-tailor" + ], + "env_var": "PANTS_HELM_TAILOR", + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor", + "--no-helm-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-registries" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-lint-strict" + ], + "env_var": "PANTS_HELM_LINT_STRICT", + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-strict", + "--no-lint-strict" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-default-registry-repository=" + ], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-default-registry-repository" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-registry-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as folows:\n\n * --atomic\n * --cleanup-on-fail\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n\nBefore attempting to use passthrough arguments, check the refence of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "helm-k8s-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-version=", + "config_key": "version", + "default": "hikaru==0.11.0b", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-version=" + ], + "env_var": "PANTS_HELM_K8S_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "hikaru==0.11.0b" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-lockfile=" + ], + "env_var": "PANTS_HELM_K8S_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/helm/subsystems/k8s_parser.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=helm-k8s-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Analyses K8S manifests rendered by Helm.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-k8s-parser" + }, + "helm-post-renderer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-version=", + "config_key": "version", + "default": "yamlpath>=3.6,<3.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-version=" + ], + "env_var": "PANTS_HELM_POST_RENDERER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamlpath>=3.6,<3.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "ruamel.yaml>=0.15.96,!=0.17.0,!=0.17.1,!=0.17.2,!=0.17.5,<=0.17.21" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "ruamel.yaml>=0.15.96,!=0.17.0,!=0.17.1,!=0.17.2,!=0.17.5,<=0.17.21" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-lockfile=" + ], + "env_var": "PANTS_HELM_POST_RENDERER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/helm/subsystems/post_renderer.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=helm-post-renderer`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-post-renderer" + }, + "helm-unittest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.2.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.2.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-template=" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-unittest-color" + ], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--color", + "--no-color" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "XUnit", + "NUnit", + "JUnit" + ], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-output-type" + ], + "target_field_name": null, + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": [ + "--output-type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-unittest-skip" + ], + "env_var": "PANTS_HELM_UNITTEST_SKIP", + "help": "If true, don't use helmunittestsubsystem when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-skip", + "--no-helm-unittest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-unittest" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython>=7.34,<8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython>=7.34,<8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/subsystems/ipython.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=ipython`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/isort/isort.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=isort`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "If true, don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]isort-export" + ], + "env_var": "PANTS_ISORT_EXPORT", + "help": "If true, export a virtual environment with isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--isort-export", + "--no-isort-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]javac-tailor-source-targets" + ], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]junit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]junit-skip" + ], + "env_var": "PANTS_JUNIT_SKIP", + "help": "If true, don't use JUnit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-skip", + "--no-junit-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-tool-jdk=" + ], + "env_var": "PANTS_JVM_TOOL_JDK", + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-tool-jdk" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--tool-jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]jvm-reproducible-jars" + ], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-nailgun-remote-cache-speculation-delay=" + ], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-nailgun-remote-cache-speculation-delay" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--nailgun-remote-cache-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-global-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-global-options" + ], + "target_field_name": "jvm_global_options", + "typ": "list", + "unscoped_cmd_line_args": [ + "--global-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like ['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "kotlin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-tailor-source-targets" + ], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-version-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin" + }, + "kotlin-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-imports" + ], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-consumed-types" + ], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Kotlin targets.", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin-infer" + }, + "kotlinc": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-plugins-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlinc" + }, + "ktlint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-version=" + ], + "env_var": "PANTS_KTLINT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.pinterest:ktlint:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.pinterest:ktlint:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-lockfile=" + ], + "env_var": "PANTS_KTLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ktlint-skip" + ], + "env_var": "PANTS_KTLINT_SKIP", + "help": "If true, don't use Ktlint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-skip", + "--no-ktlint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "scope": "ktlint" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.9", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.9" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/subsystems/lambdex.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=lambdex`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "provider": "pants.backend.awslambda.python", + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-batch-size=" + ], + "env_var": "PANTS_LINT_BATCH_SIZE", + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_LINT_ONLY", + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-formatters" + ], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-fixers", + "config_key": "skip_fixers", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-fixers" + ], + "env_var": "PANTS_LINT_SKIP_FIXERS", + "help": "If true, skip running all fixers in check-only mode.\n\nFYI: when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fix lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fix` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-fixers", + "--no-lint-skip-fixers" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-fixers", + "--no-skip-fixers" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run linters/formatters/fixers in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.961", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.961" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/typecheck/mypy/mypy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`. Tip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your MyPy plugins such as 'mypy-plugins' so that the third-party requirements used by your plugin, like `mypy`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement` target. Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.\n\nWe recommend also enabling `[mypy].extra_type_stubs_lockfile` for a more reproducible build and less supply-chain security risk.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs-lockfile=", + "config_key": "extra_type_stubs_lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs-lockfile=" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS_LOCKFILE", + "help": "Path to a lockfile for the option `[mypy].extra_type_stubs`.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this if you use `[mypy].extra_type_stubs`, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-extra-type-stubs`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--extra-type-stubs-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "If true, don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]mypy-export" + ], + "env_var": "PANTS_MYPY_EXPORT", + "help": "If true, export a virtual environment with MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--mypy-export", + "--no-mypy-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python.typecheck.mypy", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "protobuf<3.21" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "protobuf<3.21" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-protobuf`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "openapi": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-tailor-targets", + "config_key": "tailor_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]openapi-tailor-targets" + ], + "env_var": "PANTS_OPENAPI_TAILOR_TARGETS", + "help": "If true, add `openapi_documents` and `openapi_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-tailor-targets", + "--no-openapi-tailor-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-targets", + "--no-tailor-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The OpenAPI Specification (https://swagger.io/specification/).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi", + "scope": "openapi" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FROM", + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "target_field_name": "pex_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.111", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-version=" + ], + "env_var": "PANTS_PEX_CLI_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.111,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.111" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.111|macos_arm64|9787e9712aba67ccc019415060a33e850675174be3331d35014e39219212b669|4063422", + "v2.1.111|macos_x86_64|9787e9712aba67ccc019415060a33e850675174be3331d35014e39219212b669|4063422", + "v2.1.111|linux_x86_64|9787e9712aba67ccc019415060a33e850675174be3331d35014e39219212b669|4063422", + "v2.1.111|linux_arm64|9787e9712aba67ccc019415060a33e850675174be3331d35014e39219212b669|4063422" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.111|macos_arm64|9787e9712aba67ccc019415060a33e850675174be3331d35014e39219212b669|4063422", + "v2.1.111|macos_x86_64|9787e9712aba67ccc019415060a33e850675174be3331d35014e39219212b669|4063422", + "v2.1.111|linux_x86_64|9787e9712aba67ccc019415060a33e850675174be3331d35014e39219212b669|4063422", + "v2.1.111|linux_arm64|9787e9712aba67ccc019415060a33e850675174be3331d35014e39219212b669|4063422" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.111,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-template=" + ], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "protobuf-java-grpc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-version=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-lockfile=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.java", + "scope": "protobuf-java-grpc" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-tailor" + ], + "env_var": "PANTS_PROTOC_TAILOR", + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-tailor", + "--no-protoc-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.13.0,<2.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.13.0,<2.15" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/pylint/pylint.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pylint`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.15/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Pylint plugins such as 'pylint-plugins' so that the third-party requirements used by your plugin, like `pylint`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "If true, don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]pylint-export" + ], + "env_var": "PANTS_PYLINT_EXPORT", + "help": "If true, export a virtual environment with Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--pylint-export", + "--no-pylint-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pylint", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-version=", + "config_key": "version", + "default": "pyoxidizer==0.18.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-version=" + ], + "env_var": "PANTS_PYOXIDIZER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer==0.18.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.8,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.8,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-lockfile=" + ], + "env_var": "PANTS_PYOXIDIZER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/packaging/pyoxidizer/pyoxidizer.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pyoxidizer`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-console-script=" + ], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-entry-point=" + ], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest==7.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest==7.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1", + "pytest-xdist>=2.5,<3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1", + "pytest-xdist>=2.5,<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/subsystems/pytest.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pytest`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-config=" + ], + "env_var": "PANTS_PYTEST_CONFIG", + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-xdist-enabled" + ], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--xdist-enabled", + "--no-xdist-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-skip" + ], + "env_var": "PANTS_PYTEST_SKIP", + "help": "If true, don't use Pytest when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-skip", + "--no-pytest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]pytest-export" + ], + "env_var": "PANTS_PYTEST_EXPORT", + "help": "If true, export a virtual environment with Pytest when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--pytest-export", + "--no-pytest-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.15/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-resolves" + ], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.15/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-default-resolve=" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python.interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use ['==3.9.*'] via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to ['==3.7.*'], then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`. To change the interpreter constraints for tool lockfiles, change `[tool].interpreter_constraints`, e.g. `[black].interpreter_constraints`; if the tool does not have that option, it determines its interpreter constraints from your user code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-constraints-file" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-constraints-file" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve, you can also use the value `:all:` to disable all binary packages: `{'data-science': [':all:']}`.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-no-binary" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-no-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve you can use the value `:all:` to disable all source packages: `{'data-science': [':all:']}`.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-only-binary" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-only-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "target_field_name": null, + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolves-generate-lockfiles" + ], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile changes, rather than just those that depend on the changed requirement. 2) Requirements unneeded by a test/run/repl will be present on the sys.path, which might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-source-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-empty-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-lockfile-targets", + "config_key": "enable_lockfile_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-lockfile-targets" + ], + "env_var": "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS", + "help": "Create targets for all Python lockfiles defined in `[python].resolves`.\n\nThe lockfile targets will then be used as dependencies to the `python_requirement` targets that use them, invalidating source targets per resolve when the lockfile changes.\n\nIf another targets address is in conflict with the created lockfile target, it will shadow the lockfile target and it will not be available as a dependency for any `python_requirement` targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-lockfile-targets", + "--no-python-enable-lockfile-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-lockfile-targets", + "--no-enable-lockfile-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-default-run-goal-use-sandbox" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "help": "A list of paths to search for Python interpreters.\n\nWhich interpeters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "target_field_name": "python_bootstrap_search_path", + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "target_field_name": "python_bootstrap_names", + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-assets" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--assets", + "--no-assets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-assets-min-slashes=" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "help": "If --assets is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets-min-slashes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--assets-min-slashes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": [ + "always", + "content_only", + "never" + ], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-init-files=" + ], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-init-files" + ], + "target_field_name": null, + "typ": "InitFilesInference", + "unscoped_cmd_line_args": [ + "--init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "target_field_name": null, + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `CPPFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "target_field_name": "python_native_code_cpp_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `LDFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "target_field_name": "python_native_code_ld_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.15/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what WHEELS_DIR points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.15/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.15/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.15/docs/options#pantsrc-file.\n\nNote: Only takes effect if using Pex lockfiles, i.e. using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-path-mappings" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--path-mappings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-find-links=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-find-links" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--find-links" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-thrift-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.33.0,<2.35", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-version=" + ], + "env_var": "PANTS_PYUPGRADE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.33.0,<2.35" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-lockfile=" + ], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/pyupgrade/pyupgrade.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=pyupgrade`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "help": "If true, don't use pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]pyupgrade-export" + ], + "env_var": "PANTS_PYUPGRADE_EXPORT", + "help": "If true, export a virtual environment with pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--pyupgrade-export", + "--no-pyupgrade-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]regex-lint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]regex-lint-skip" + ], + "env_var": "PANTS_REGEX_LINT_SKIP", + "help": "If true, don't use regex-lint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-skip", + "--no-regex-lint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-config" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-detail-level=" + ], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-detail-level" + ], + "target_field_name": null, + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-debug-adapter" + ], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-debug-adapter", + "--no-run-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-cleanup", + "config_key": "cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.16.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--[no-]run-cleanup" + ], + "env_var": "PANTS_RUN_CLEANUP", + "help": "Whether to clean up the temporary directory in which the binary is chrooted. Set this to false to retain the directory, e.g., for debugging.\n\nNote that setting the global --keep-sandboxes option may also conserve this directory, along with those of all other processes that Pants executes. This option is more selective and controls just the target binary's directory.", + "removal_hint": "Use the global `keep_sandboxes` option instead.", + "removal_version": "2.16.0.dev1", + "scoped_cmd_line_args": [ + "--run-cleanup", + "--no-run-cleanup" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cleanup", + "--no-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-tailor-source-targets" + ], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-package-objects" + ], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-objects", + "--no-package-objects" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-force-add-siblings-as-dependencies" + ], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "help": "If true, add a dependency on all scala_source targets generated by the same scala_sources target generator. If false, the dependencies will only be added if [scala-infer].imports is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "help": "If true, don't use scalafmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-version=" + ], + "env_var": "PANTS_SCALAPB_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-lockfile=" + ], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set --scalapb-runtime-dependencies appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalatest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalatest-skip" + ], + "env_var": "PANTS_SCALATEST_SKIP", + "help": "If true, don't use Scalatest when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-skip", + "--no-scalatest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "target_field_name": null, + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=63.1.0,<64.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=63.1.0,<64.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/subsystems/setuptools.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "setuptools-scm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-version=", + "config_key": "version", + "default": "setuptools-scm==6.4.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-version=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools-scm==6.4.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/subsystems/setuptools_scm.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools-scm`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-console-script=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "setuptools-scm" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-tailor" + ], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-path=\"[, , ...]\"", + "config_key": "executable_search_path", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATH", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-path" + ], + "target_field_name": "shell_setup_executable_search_path", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "If true, don't use Shellcheck when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "If true, don't use shfmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "shunit2": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-version=", + "config_key": "version", + "default": "b9102bb763cc603b3115ed30a5648bf950548097", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-version=" + ], + "env_var": "PANTS_SHUNIT2_VERSION", + "help": "Use this version of shunit2.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "b9102bb763cc603b3115ed30a5648bf950548097" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHUNIT2_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shunit2-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-use-unsupported-version=" + ], + "env_var": "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shunit2 is not supported.\n\nSupported shunit2 versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-template=", + "config_key": "url_template", + "default": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-template=" + ], + "env_var": "PANTS_SHUNIT2_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHUNIT2_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shunit2-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shunit2-skip" + ], + "env_var": "PANTS_SHUNIT2_SKIP", + "help": "If true, don't use shunit2 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-skip", + "--no-shunit2-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shunit2" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.15/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "spectral": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-version=", + "config_key": "version", + "default": "v6.5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-version=" + ], + "env_var": "PANTS_SPECTRAL_VERSION", + "help": "Use this version of Spectral.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v6.5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v6.5.1|linux_arm64 |81017af87e04711ab0a0a7c15af9985241f6c84101d039775057bbec17572916|72709153", + "v6.5.1|linux_x86_64|81017af87e04711ab0a0a7c15af9985241f6c84101d039775057bbec17572916|72709153", + "v6.5.1|macos_arm64 |5b10d772cb309d82b6a49b689ed58580dcb3393ead82b82ab648eead7da4bd79|77446257", + "v6.5.1|macos_x86_64|5b10d772cb309d82b6a49b689ed58580dcb3393ead82b82ab648eead7da4bd79|77446257" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPECTRAL_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v6.5.1|linux_arm64 |81017af87e04711ab0a0a7c15af9985241f6c84101d039775057bbec17572916|72709153", + "v6.5.1|linux_x86_64|81017af87e04711ab0a0a7c15af9985241f6c84101d039775057bbec17572916|72709153", + "v6.5.1|macos_arm64 |5b10d772cb309d82b6a49b689ed58580dcb3393ead82b82ab648eead7da4bd79|77446257", + "v6.5.1|macos_x86_64|5b10d772cb309d82b6a49b689ed58580dcb3393ead82b82ab648eead7da4bd79|77446257" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--spectral-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-use-unsupported-version=" + ], + "env_var": "PANTS_SPECTRAL_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of Spectral is not supported.\n\nSupported Spectral versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-url-template=", + "config_key": "url_template", + "default": "https://github.com/stoplightio/spectral/releases/download/{version}/spectral-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-url-template=" + ], + "env_var": "PANTS_SPECTRAL_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.15/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/stoplightio/spectral/releases/download/{version}/spectral-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux", + "linux_x86_64": "linux", + "macos_arm64": "macos", + "macos_x86_64": "macos" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SPECTRAL_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux", + "linux_x86_64": "linux", + "macos_arm64": "macos", + "macos_x86_64": "macos" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]spectral-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]spectral-skip" + ], + "env_var": "PANTS_SPECTRAL_SKIP", + "help": "If true, don't use Spectral when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-skip", + "--no-spectral-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SPECTRAL_ARGS", + "help": "Arguments to pass directly to Spectral, e.g. `--spectral-args='--fail-severity=warn'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "spectral" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-memory-summary" + ], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--memory-summary", + "--no-memory-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.15/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "target_field_name": "subprocess_environment_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.15/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-fmt-skip" + ], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "help": "If true, don't use `terraform fmt` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-version=", + "config_key": "version", + "default": "python-hcl2==3.0.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-version=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-hcl2==3.0.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-lockfile=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/terraform/hcl2.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=terraform-hcl2-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-validate-skip" + ], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "help": "If true, don't use `terraform validate` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-report" + ], + "env_var": "PANTS_TEST_REPORT", + "help": "Write test reports to --report-dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report", + "--no-test-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--report", + "--no-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-report-dir=" + ], + "env_var": "PANTS_TEST_REPORT_DIR", + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--report-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-default=" + ], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-default" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-maximum=" + ], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-maximum" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-batch-size=" + ], + "env_var": "PANTS_TEST_BATCH_SIZE", + "help": "The target maximum number of files to be included in each run of batch-enabled test runners.\n\nSome test runners can execute tests from multiple files in a single run. Test implementations will return all tests that _can_ run together as a single group - and then this may be further divided into smaller batches, based on this option. This is done:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch\n 3. to allow for parallelism in test runners which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" max batch size (rather than an exact value).\n\nNOTE: This parameter has no effect on test runners/plugins that do not implement support for batched testing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug-adapter" + ], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies --debug.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "target_field_name": null, + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-shard=" + ], + "env_var": "PANTS_TEST_SHARD", + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with --shard=0/3, --shard=1/3, --shard=2/3.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-shard" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--shard" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-timeouts" + ], + "env_var": "PANTS_TEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeouts", + "--no-test-timeouts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "target_field_name": "test_extra_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-tailor" + ], + "env_var": "PANTS_THRIFT_TAILOR", + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-tailor", + "--no-thrift-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-dependency-inference" + ], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine>=3.7.1,<3.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-version=" + ], + "env_var": "PANTS_TWINE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine>=3.7.1,<3.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "colorama>=0.4.3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "colorama>=0.4.3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-lockfile=" + ], + "env_var": "PANTS_TWINE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/subsystems/twine.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=twine`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use any certificates.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.15/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "help": "If true, don't use Twine when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "yapf", + "black" + ], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--update-build-files-formatter=" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-formatter" + ], + "target_field_name": null, + "typ": "Formatter", + "unscoped_cmd_line_args": [ + "--formatter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.15/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf==0.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf==0.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.15.2/src/python/pants/backend/python/lint/yapf/yapf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 generate-lockfiles --resolve=yapf`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "help": "If true, don't use yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]yapf-export" + ], + "env_var": "PANTS_YAPF_EXPORT", + "help": "If true, export a virtual environment with yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--yapf-export", + "--no-yapf-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.16.x/reference/help-all.json b/versioned_docs/version-2.16.x/reference/help-all.json new file mode 100644 index 000000000..83572777e --- /dev/null +++ b/versioned_docs/version-2.16.x/reference/help-all.json @@ -0,0 +1,84161 @@ +{ + "name_to_api_type_info": { + "abc.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.goals.test.get_filtered_environment" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "abc", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "builtins.AddPrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "AddPrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.core.goals.export.export", + "pants.core.target_types.relocate_files", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "builtins.Digest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.go.goals.generate", + "pants.backend.helm.util_rules.chart_metadata", + "pants.engine.fs", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.strip_jar.strip_jar" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "Digest", + "provider": "builtins, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.core.util_rules.archive.create_archive", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.javascript.subsystems.nodejs.setup_npx_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.generate_setup_py", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "builtins.FileDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.util_rules" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "FileDigest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "builtins.MergeDigests": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "MergeDigests", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.javascript.subsystems.nodejs.setup_npx_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.source_files.determine_source_files", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "builtins.RemovePrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "RemovePrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.backend.adhoc.adhoc_tool.GenerateFilesFromAdhocToolRequest": { + "consumed_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.adhoc" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.adhoc.adhoc_tool", + "name": "GenerateFilesFromAdhocToolRequest", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.adhoc.run_system_binary.SystemBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.adhoc" + ], + "documentation": "SystemBinaryFieldSet(address: 'Address', name: 'SystemBinaryNameField', extra_search_paths: 'SystemBinaryExtraSearchPathsField', fingerprint_pattern: 'SystemBinaryFingerprintPattern', fingerprint_argv: 'SystemBinaryFingerprintArgsField', fingerprint_dependencies: 'SystemBinaryFingerprintDependenciesField')", + "is_union": false, + "module": "pants.backend.adhoc.run_system_binary", + "name": "SystemBinaryFieldSet", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "PythonAwsLambdaFieldSet(address: 'Address', handler: 'PythonAwsLambdaHandlerField', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PythonAwsLambdaCompletePlatforms', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.target_types.InferPythonLambdaHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "InferPythonLambdaHandlerDependency", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.target_types.PythonAwsLambdaCompletePlatforms": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.digest_complete_platforms" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "PythonAwsLambdaCompletePlatforms", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda" + ] + }, + "pants.backend.awslambda.python.target_types.ResolvePythonAwsHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "ResolvePythonAwsHandlerRequest(field: pants.backend.awslambda.python.target_types.PythonAwsLambdaHandlerField)", + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "ResolvePythonAwsHandlerRequest", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency" + ] + }, + "pants.backend.awslambda.python.target_types.ResolvedPythonAwsHandler": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "ResolvedPythonAwsHandler(val: str, file_name_used: bool)", + "is_union": false, + "module": "pants.backend.awslambda.python.target_types", + "name": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency" + ] + }, + "pants.backend.build_files.fix.deprecations.base.FixedBUILDFile": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.build_files.fix.deprecations" + ], + "dependents": [ + "pants.core" + ], + "documentation": "FixedBUILDFile(path: 'str', content: 'bytes')", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.base", + "name": "FixedBUILDFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenamedFieldTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenamedFieldTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Deprecated target type names to new names.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenamedTargetTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenamedTargetTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.subsystem.BUILDDeprecationsFixer": { + "consumed_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fix.deprecations" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.subsystem", + "name": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [ + "construct_scope_build_deprecations_fixer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.black.register.BlackRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.black.register", + "name": "BlackRequest", + "provider": "pants.backend.build_files.fmt.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.rules.BuildifierRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.rules", + "name": "BuildifierRequest", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.subsystem.Buildifier": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.subsystem", + "name": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [ + "construct_scope_buildifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.yapf.register.YapfRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.yapf.register", + "name": "YapfRequest", + "provider": "pants.backend.build_files.fmt.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegen": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegen", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegenSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegenSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GenerateGoFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GenerateGoFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GoCodegenBuildProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg_target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GoCodegenBuildProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoCodegenBuildRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.ProtobufGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets" + ], + "dependencies": [ + "pants.backend.go.dependency_inference" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "ProtobufGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtobufPackageBuildRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": "Request type used to trigger setup of a BuildGoPackageRequest for entire generated Go\nProtobuf package.\n\nThis type is separate so that a build of the full package can be cached no matter which one of\nits component source files was requested. This occurs because a request to build any one of the\nsource files will be converted into this type and then built.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtobufPackageBuildRequest", + "provider": "pants.backend.codegen.protobuf.go.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtocPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": "_SetupGoProtocPlugin(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.InferProtobufJavaRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "InferProtobufJavaRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaGrpcRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaGrpcRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.rules.GenerateJavaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GenerateJavaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.rules.GrpcJavaToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GrpcJavaToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.java.rules, pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ] + }, + "pants.backend.codegen.protobuf.java.rules.ProtobufJavaGrpcPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaGrpcPlugin(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.subsystem.JavaProtobufGrpcSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.subsystem", + "name": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "construct_scope_protobuf_java_grpc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.BufFormatRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.format_rules", + "name": "BufFormatRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.BufLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.lint_rules", + "name": "BufLintRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufFormatField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufFormatField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufLintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufLintField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.subsystem.BufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.subsystem", + "name": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [ + "construct_scope_buf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.InferProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "InferProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.ProtobufMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": "A mapping of stripped .proto file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protoc.Protoc": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protoc", + "name": "Protoc", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_protoc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonInterpreterConstraintsField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonInterpreterConstraintsField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonResolveField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.PythonSourceRootField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "PythonSourceRootField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.grpc_python_plugin.GrpcPythonPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.grpc_python_plugin", + "name": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_grpc_python_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.PythonProtobufMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper", + "name": "PythonProtobufMappingMarker", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.InferPythonProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "InferPythonProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.MypyProtobufLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "MypyProtobufLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufMypyPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_mypy_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_python_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.rules.GeneratePythonFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.rules", + "name": "GeneratePythonFromProtobufRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.InferScalaPBRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "InferScalaPBRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.dependency_inference", + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "ScalaPBRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "ScalaPBRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.scala.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.GenerateScalaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "GenerateScalaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializeJvmPluginRequest(plugin: 'PluginArtifactSpec')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializeJvmPluginsRequest(plugins: 'tuple[PluginArtifactSpec, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginsRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.java", + "pants.jvm.resolve.common" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalaPBShimCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalapbcToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalapbcToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.scala.rules, pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ] + }, + "pants.backend.codegen.protobuf.scala.subsystem.ScalaPBSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.subsystem", + "name": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "construct_scope_scalapb" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.tailor.PutativeProtobufTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": "PutativeProtobufTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.tailor", + "name": "PutativeProtobufTargetsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.AllProtobufTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.additional_fields.ThriftPythonResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.additional_fields", + "name": "ThriftPythonResolveField", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.PythonThriftMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper", + "name": "PythonThriftMappingMarker", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.GeneratePythonFromThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "GeneratePythonFromThriftRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.InferApacheThriftPythonDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "InferApacheThriftPythonDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.subsystem.ThriftPythonSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.subsystem", + "name": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_python_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.ApacheThriftSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "ApacheThriftSetup(path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.GenerateThriftSourcesRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "GenerateThriftSourcesRequest(thrift_source_field: 'ThriftSourceField', lang_id: 'str', lang_options: 'tuple[str, ...]', lang_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GenerateThriftSourcesRequest", + "provider": "pants.backend.codegen.thrift.apache.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.rules.GeneratedThriftSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.thrift.apache.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "GeneratedThriftSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.subsystem.ApacheThriftSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_apache_thrift", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.subsystem", + "name": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_apache_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.InferThriftDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "InferThriftDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.ThriftMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "A mapping of stripped .thrift file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.subsystem.ThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.subsystem", + "name": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.tailor.PutativeThriftTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "PutativeThriftTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.tailor", + "name": "PutativeThriftTargetsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.AllThriftTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThrift": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.thrift.thrift_parser", + "pants.backend.experimental.go", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "ParsedThriftRequest(sources_field: 'ThriftSourceField')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThriftRequest", + "provider": "pants.backend.codegen.thrift.thrift_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.docker.goals.package_image.DockerPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerPackageFieldSet(address: 'Address', context_root: 'DockerImageContextRootField', registries: 'DockerImageRegistriesField', repository: 'DockerImageRepositoryField', source: 'DockerImageSourceField', tags: 'DockerImageTagsField', target_stage: 'DockerImageTargetStageField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.backend.docker.goals.package_image", + "name": "DockerPackageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "PublishDockerImageFieldSet(address: 'Address', registries: 'DockerImageRegistriesField', skip_push: 'DockerImageSkipPushField')", + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.docker.goals.run_image.DockerRunFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerRunFieldSet(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.goals.run_image", + "name": "DockerRunFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.tailor.PutativeDockerTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "PutativeDockerTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.goals.tailor", + "name": "PutativeDockerTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.rules.HadolintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.rules", + "name": "HadolintRequest", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.skip_field.SkipHadolintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.skip_field", + "name": "SkipHadolintField", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.subsystem.Hadolint": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker.lint.hadolint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.subsystem", + "name": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [ + "construct_scope_hadolint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.DockerOptions": { + "consumed_by_rules": [ + "construct_env_aware_scope_docker", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "DockerOptions", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.docker.lint.hadolint" + ], + "documentation": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', build_args: 'DockerBuildArgs' = DockerBuildArgs(), copy_source_paths: 'tuple[str, ...]' = (), from_image_build_args: 'DockerBuildArgs' = DockerBuildArgs(), version_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfo", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfoRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerfileInfoRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfoRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParseRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerfileParseRequest(sources_digest: 'Digest', args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParseRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParser": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParser", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_dockerfile_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParserLockfileSentinel", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "ParserSetup", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.AllDockerImageTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.target_types", + "name": "AllDockerImageTargets", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.target_types.all_docker_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.DockerImageTagsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to provide additional image tags.", + "is_union": true, + "module": "pants.backend.docker.target_types", + "name": "DockerImageTagsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.dependencies.InferDockerDependencies": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dependencies", + "name": "InferDockerDependencies", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinary": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "The `docker` binary.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinary", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_binary.get_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.find_docker" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBinaryRequest()", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinaryRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgs", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildArgsRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContext": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm" + ], + "documentation": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', upstream_image_ids: 'tuple[str, ...]', dockerfile: 'str', interpolation_context: 'InterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContext", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContextRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildContextRequest(address: 'Address', build_upstream_images: 'bool' = False)", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContextRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.GenerateDockerContextFiles": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "This translates all files from acceptable Source fields for the docker context using the\n`codegen` machinery.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "GenerateDockerContextFiles", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildEnvironment(environment: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironment", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildEnvironmentRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironmentRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.dockerfile.GenerateDockerfileRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dockerfile", + "name": "GenerateDockerfileRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.AllGoModuleImportPathsMappings": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.target_type_rules" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Maps import paths (as strings) to one or more addresses of targets providing those import\npath(s) for a single Go module.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappings": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Import path mappings for all Go modules in the repository.\n\nThis type is requested from plugins which provide implementations for the GoCodegenBuildRequest\nunion and then merged.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappingsHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "An entry point for a specific implementation of mapping Go import paths to owning targets.\n\nAll implementations will be merged together. The core Go dependency inference rules will request\nthe `GoModuleImportPathsMappings` type using implementations of this union.", + "is_union": true, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappingsHook", + "provider": "pants.backend.go.dependency_inference", + "returned_by_rules": [], + "union_members": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "ProtobufGoModuleImportPathsMappingsHook" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.go_sources.load_go_binary", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "LoadedGoBinary(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "LoadedGoBinaryRequest(dir_name: 'str', file_names: 'tuple[str, ...]', output_name: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinaryRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.NaiveBuildGoPackageRequestForStdlibPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "NaiveBuildGoPackageRequestForStdlibPackageRequest(import_path: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ] + }, + "pants.backend.go.goals.check.GoCheckRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.check.check_go" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.check", + "name": "GoCheckRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_env_aware_scope_go_generate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoal", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.generate.go_generate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoalSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_go_generate" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_go_generate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.OverwriteMergeDigests": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "OverwriteMergeDigests(orig_digest: 'Digest', new_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "OverwriteMergeDigests", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RunPackageGeneratorsRequest(address: 'Address', regex: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsRequest", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.go_generate" + ] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.generate", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RunPackageGeneratorsResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.go_generate" + ] + }, + "pants.backend.go.goals.package_binary.GoBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBinaryFieldSet(address: 'Address', main: 'GoBinaryMainPackageField', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.go.goals.package_binary", + "name": "GoBinaryFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FindPutativeGoPackageTargetRequest(dir_path: 'str', files: 'tuple[str, ...]', all_go_mod_dirs: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetRequest", + "provider": "pants.backend.go.goals.tailor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.goals.tailor", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FindPutativeGoPackageTargetResult(putative_target: 'PutativeTarget | None')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.PutativeGoTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "PutativeGoTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "PutativeGoTargetsRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.FalliblePrepareGoTestBinaryResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.test", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FalliblePrepareGoTestBinaryResult(binary: 'PrepareGoTestBinaryResult | None', stdout: 'str', stderr: 'str', exit_code: 'int')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.goals.test.GoTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "GoTestFieldSet(address: 'Address', sources: 'GoPackageSourcesField', dependencies: 'Dependencies', timeout: 'GoTestTimeoutField', extra_env_vars: 'GoTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.GoTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.PrepareGoTestBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "PrepareGoTestBinaryRequest(field_set: 'GoTestFieldSet', coverage: 'PrepareGoTestBinaryCoverageConfig | None')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "PrepareGoTestBinaryRequest", + "provider": "pants.backend.go.goals.test", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.lint.gofmt.rules.GofmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.rules", + "name": "GofmtRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.skip_field.SkipGofmtField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.skip_field", + "name": "SkipGofmtField", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.subsystem.GofmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.subsystem", + "name": "GofmtSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_gofmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_env_aware_scope_golang" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.GolangSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_golang", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "GolangSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_golang" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.gotest.GoTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.gotest", + "name": "GoTestSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_go_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.FirstPartyGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "dependencies": [ + "pants.backend.go.dependency_inference" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "FirstPartyGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GenerateTargetsFromGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GenerateTargetsFromGoModRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GoImportPathMappingRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoImportPathMappingRequest(go_mod_address: 'Address')", + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GoImportPathMappingRequest", + "provider": "pants.backend.go.target_type_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.target_type_rules.InferGoPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InferGoThirdPartyPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoThirdPartyPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_types.GoOwningGoModAddressField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_types", + "name": "GoOwningGoModAddressField", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.assembly.AssembleGoAssemblyFilesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Assemble Go assembly files to object files.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssembleGoAssemblyFilesRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleAssembleGoAssemblyFilesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FallibleAssembleGoAssemblyFilesResult(result: 'AssembleGoAssemblyFilesResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleGenerateAssemblySymabisResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FallibleGenerateAssemblySymabisResult(result: 'GenerateAssemblySymabisResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.GenerateAssemblySymabisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Generate a `symabis` file with metadata about the assemnbly files for consumption by Go\ncompiler.\n\nSee https://github.com/bazelbuild/rules_go/issues/1893.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "GenerateAssemblySymabisRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackage": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.binary", + "pants.build_graph.address", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBinaryMainPackage(address: 'Address', is_third_party: 'bool', import_path: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBinaryMainPackageRequest(field: 'GoBinaryMainPackageField')", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackageRequest", + "provider": "pants.backend.go.util_rules.binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.InferGoBinaryMainDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "InferGoBinaryMainDependencyRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.build_opts" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBuildOptions(coverage_config: 'GoCoverageConfig | None' = None, cgo_enabled: 'bool' = True, with_race_detector: 'bool' = False, with_msan: 'bool' = False, with_asan: 'bool' = False, compiler_flags: 'tuple[str, ...]' = (), linker_flags: 'tuple[str, ...]' = (), assembler_flags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptions", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptionsFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBuildOptionsFromTargetRequest(address: 'Address', for_tests: 'bool' = False)", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptionsFromTargetRequest", + "provider": "pants.backend.go.util_rules.build_opts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.go.go_sources.load_go_binary" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go, pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuiltGoPackage": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckForGolangAssemblyRequest(digest: 'Digest', dir_path: 'str', s_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckForGolangAssemblyResult(maybe_golang_assembly: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.go.rules", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuiltGoPackage": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.core", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Fallible version of `BuiltGoPackage` with error details.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoCompileActionIdRequest(build_request: 'BuildGoPackageRequest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoCompileActionIdResult(action_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderEmbedConfigRequest(embed_config: 'EmbedConfig | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderedEmbedConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderedEmbedConfig(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.SetupAsmCheckBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "SetupAsmCheckBinary(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageRequestForStdlibRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "BuildGoPackageRequestForStdlibRequest(import_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageRequestForStdlibRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Build a `go_package`, `go_third_party_package`, or Go codegen target and its dependencies as\n`__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageTargetRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.GoCodegenBuildRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": "The plugin hook to build/compile Go code.\n\nNote that you should still use the normal `GenerateSourcesRequest` plugin hook from\n`pants.engine.target` too, which is necessary for integrations like the `export-codegen` goal.\nHowever, that is only helpful to generate the raw `.go` files; you also need to use this\nplugin hook so that Pants knows how to compile those generated `.go` files.\n\nSubclass this and set the class property `generate_from`. Define a rule that goes from your\nsubclass to `BuildGoPackageRequest` - the request must result in valid compilation, which you\nshould test for by using `rule_runner.request(BuiltGoPackage, BuildGoPackageRequest)` in your\ntests. For example, make sure to set up any third-party packages needed by the generated code.\nFinally, register `UnionRule(GoCodegenBuildRequest, MySubclass)`.", + "is_union": true, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "GoCodegenBuildRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [ + "GoCodegenBuildProtobufRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_ResolveStdlibEmbedConfigRequest(package: 'GoStdLibPackage')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_ResolveStdlibEmbedConfigResult(embed_config: 'EmbedConfig | None', stderr: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompileRequest(import_path: 'str', pkg_name: 'str', digest: 'Digest', build_opts: 'GoBuildOptions', dir_path: 'str', cgo_files: 'tuple[str, ...]', cgo_flags: 'CGoCompilerFlags', c_files: 'tuple[str, ...]' = (), cxx_files: 'tuple[str, ...]' = (), objc_files: 'tuple[str, ...]' = (), fortran_files: 'tuple[str, ...]' = (), s_files: 'tuple[str, ...]' = (), is_stdlib: 'bool' = False, transitive_prebuilt_object_files: 'tuple[Digest, frozenset[str]] | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompileResult(digest: 'Digest', output_go_files: 'tuple[str, ...]', output_obj_files: 'tuple[str, ...]', include_module_sources_with_output: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompilerWrapperScript": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.cgo", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompilerWrapperScript(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompilerWrapperScriptRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompilerWrapperScriptRequest()", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompilerWrapperScriptRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsFlagRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckCompilerSupportsFlagRequest(cc: 'str', flag: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsFlagRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsOptionResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckCompilerSupportsOptionResult(supports_flag: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "SetupCompilerCmdRequest(compiler: 'tuple[str, ...]', include_dir: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.cgo" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "SetupCompilerCmdResult(args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo_binaries.CGoBinaryPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoBinaryPathRequest(binary_name: 'str', binary_path_test: 'BinaryPathTest | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_binaries", + "name": "CGoBinaryPathRequest", + "provider": "pants.backend.go.util_rules.cgo_binaries", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Request resolution of pkg-config arguments into CFLAGS and LDFLAGS.", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsRequest", + "provider": "pants.backend.go.util_rules.cgo_pkgconfig", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.cgo_pkgconfig" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoPkgConfigFlagsResult(cflags: 'tuple[str, ...]', ldflags: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Apply code coverage to a package using `go tool cover`.", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ApplyCodeCoverageResult(digest: 'Digest', cover_file_metadatas: 'tuple[FileCodeCoverageMetadata, ...]', go_files: 'tuple[str, ...]', cgo_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ApplyCodeCoverageToFileRequest(digest: 'Digest', go_file: 'str', cover_go_file: 'str', mode: 'GoCoverMode', cover_var: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.coverage" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ApplyCodeCoverageToFileResult(digest: 'Digest', cover_go_file: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GenerateCoverageSetupCodeRequest(packages: 'FrozenOrderedSet[BuiltGoPackageCodeCoverageMetadata]', cover_mode: 'GoCoverMode')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GenerateCoverageSetupCodeResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageProfileToHtmlRequest(raw_coverage_profile: 'bytes', description_of_origin: 'str', sources_digest: 'Digest', sources_dir_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlRequest", + "provider": "pants.backend.go.util_rules.coverage_html", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.coverage_html", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageProfileToHtmlResult(html_output: 'bytes')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_output.GoCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "GoCoverageDataCollection", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageReportRequest(raw_report: 'GoCoverageData')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportRequest", + "provider": "pants.backend.go.util_rules.coverage_output", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.coverage_output", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageReportResult(coverage_report: 'FilesystemCoverageReport', html_report: 'FilesystemCoverageReport | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Metadata for a Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "The source files for a Go package, but fallible if embed preparation failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FirstPartyPkgAnalysisRequest(address: 'Address', build_opts: 'GoBuildOptions', extra_build_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgDigestRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FirstPartyPkgDigestRequest(address: 'Address', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgDigestRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.first_party_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FirstPartyPkgImportPathRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPathRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.go_bootstrap.GoBootstrap": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBootstrap(go_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_bootstrap", + "name": "GoBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.AllGoModTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "AllGoModTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.GoModInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.go_mod" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfo", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.GoModInfoRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoModInfoRequest(source: 'Address | GoModSourcesField')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfoRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "NearestAncestorGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "NearestAncestorGoModResult(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoMod": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.build_graph.address" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "OwningGoMod(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoMod", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "OwningGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.goroot.GoRoot": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Path to the Go installation (the `GOROOT`).", + "is_union": false, + "module": "pants.backend.go.util_rules.goroot", + "name": "GoRoot", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.implicit_linker_deps.SdkImplicitLinkerDependenciesHook": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "dependencies": [ + "pants.backend.go.util_rules.link_defs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.implicit_linker_deps", + "name": "SdkImplicitLinkerDependenciesHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "ImplicitLinkerDependenciesHook", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackages": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.import_analysis" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A mapping of standard library import paths to an analysis of the package at that import\npath.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoStdLibPackagesRequest(with_race_detector: 'bool', cgo_enabled: 'bool' = True)", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackagesRequest", + "provider": "pants.backend.go.util_rules.import_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.import_config", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Create an `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfigRequest", + "provider": "pants.backend.go.util_rules.import_config", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Link a Go binary from package archives and an import configuration.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkGoBinaryRequest", + "provider": "pants.backend.go.util_rules.link", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.link", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A linked Go binary stored in a `Digest`.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkerSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "LinkerSetup(digest: 'Digest', extld_wrapper_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.link.setup_go_linker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ImplicitLinkerDependencies(digest: 'Digest', import_paths_to_pkg_a_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependenciesHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ImplicitLinkerDependenciesHook(build_opts: 'GoBuildOptions')", + "is_union": true, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependenciesHook", + "provider": "pants.backend.go.util_rules.link_defs", + "returned_by_rules": [], + "union_members": [ + "SdkImplicitLinkerDependenciesHook" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.pkg_analyzer.PackageAnalyzerSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "PackageAnalyzerSetup(digest: Digest, path: str)", + "is_union": false, + "module": "pants.backend.go.util_rules.pkg_analyzer", + "name": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkProcess": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkProcess(command: 'Iterable[str]', *, description: 'str', env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), working_dir: 'str | None' = None, output_files: 'Iterable[str]' = (), output_directories: 'Iterable[str]' = (), allow_downloads: 'bool' = False, replace_sandbox_root_in_args: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkProcess", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkRunSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkToolIDRequest(tool_name: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDRequest", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.sdk" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GenerateTestMainRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GenerateTestMainRequest(digest: 'Digest', test_paths: 'FrozenOrderedSet[str]', xtest_paths: 'FrozenOrderedSet[str]', import_path: 'str', register_cover: 'bool', address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GenerateTestMainRequest", + "provider": "pants.backend.go.util_rules.tests_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GeneratedTestMain": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.tests_analysis", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GeneratedTestMain", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackages": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AllThirdPartyPackagesRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackagesRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyModuleRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AnalyzeThirdPartyModuleRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', import_path: 'str', name: 'str', version: 'str', minimum_go_version: 'str | None', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyModuleRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AnalyzeThirdPartyPackageRequest(pkg_json: 'FrozenDict[str, Any]', module_sources_digest: 'Digest', module_sources_path: 'str', module_import_path: 'str', package_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyPackageRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzedThirdPartyModule": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.FallibleThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptors": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptors", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ModuleDescriptorsRequest(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptorsRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.third_party_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Request the info and digest needed to build a third-party package.\n\nThe package's module must be included in the input `go.mod`/`go.sum`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.google_cloud_function.python.rules.PythonGoogleCloudFunctionFieldSet": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": "PythonGoogleCloudFunctionFieldSet(address: 'Address', handler: 'PythonGoogleCloudFunctionHandlerField', runtime: 'PythonGoogleCloudFunctionRuntime', complete_platforms: 'PythonGoogleCloudFunctionCompletePlatforms', type: 'PythonGoogleCloudFunctionType', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.rules", + "name": "PythonGoogleCloudFunctionFieldSet", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.google_cloud_function.python.target_types.InferPythonCloudFunctionHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "InferPythonCloudFunctionHandlerDependency", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.google_cloud_function.python.target_types.PythonGoogleCloudFunctionCompletePlatforms": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.rules.digest_complete_platforms" + ], + "dependencies": [], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "PythonGoogleCloudFunctionCompletePlatforms", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ] + }, + "pants.backend.google_cloud_function.python.target_types.ResolvePythonGoogleHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler" + ], + "dependencies": [], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": "ResolvePythonGoogleHandlerRequest(field: pants.backend.google_cloud_function.python.target_types.PythonGoogleCloudFunctionHandlerField)", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "ResolvePythonGoogleHandlerRequest", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency" + ] + }, + "pants.backend.google_cloud_function.python.target_types.ResolvedPythonGoogleHandler": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": "ResolvedPythonGoogleHandler(val: str, file_name_used: bool)", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.target_types", + "name": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [ + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency" + ] + }, + "pants.backend.helm.dependency_inference.chart.FirstPartyHelmChartMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.InferHelmChartDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "InferHelmChartDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.deployment.AnalyseHelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "AnalyseHelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "AnalyseHelmDeploymentRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.helm.dependency_inference.deployment" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "A mapping between `helm_deployment` target addresses and tuples made up of a Docker image\nreference and a `docker_image` target address.\n\nThe tuples of Docker image references and addresses are stored in a YAML index so we can track\nthe locations in which the Docker image refs appear in the deployment files.", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMappingRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FirstPartyHelmDeploymentMappingRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMappingRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.HelmDeploymentReport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.dependency_inference.deployment", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmDeploymentReport(address: 'Address', image_refs: 'FrozenYamlIndex[str]')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.InferHelmDeploymentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "InferHelmDeploymentDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.unittest.InferHelmUnitTestChartDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.unittest", + "name": "InferHelmUnitTestChartDependencyRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.deploy.DeployHelmDeploymentFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "DeployHelmDeploymentFieldSet(address: 'Address', description: 'DescriptionField', release_name: 'HelmDeploymentReleaseNameField', namespace: 'HelmDeploymentNamespaceField', create_namespace: 'HelmDeploymentCreateNamespaceField', sources: 'HelmDeploymentSourcesField', skip_crds: 'HelmDeploymentSkipCrdsField', no_hooks: 'HelmDeploymentNoHooksField', dependencies: 'HelmDeploymentDependenciesField', values: 'HelmDeploymentValuesField', post_renderers: 'HelmDeploymentPostRenderersField', timeout: 'HelmDeploymentTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.goals.deploy", + "name": "DeployHelmDeploymentFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.lint.HelmLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.lint", + "name": "HelmLintRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.package.HelmPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.package.run_helm_package" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmPackageFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', output_path: 'HelmChartOutputPathField')", + "is_union": false, + "module": "pants.backend.helm.goals.package", + "name": "HelmPackageFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.HelmPublishFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "HelmPublishFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', registries: 'HelmRegistriesField', repository: 'HelmChartRepositoryField', skip_push: 'HelmSkipPushField')", + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "HelmPublishFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.PublishHelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.publish.publish_helm_chart" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "PublishHelmChartRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.tailor.PutativeHelmChartTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.tailor.find_putative_helm_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "PutativeHelmChartTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.goals.tailor", + "name": "PutativeHelmChartTargetsRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.resolve.artifacts.HelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "HelmArtifact", + "provider": "pants.backend.helm.resolve.artifacts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ResolvedHelmArtifact": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.resolve.artifacts" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ResolvedHelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address', location_url: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ThirdPartyHelmArtifactMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.resolve.fetch.FetchHelmArtifactRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FetchHelmArtifactRequest(field_set: 'HelmArtifactFieldSet', description_of_origin: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchHelmArtifactRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.resolve.fetch", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FetchedHelmArtifact(artifact: 'ResolvedHelmArtifact', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.helm.HelmSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.helm", + "name": "HelmSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserLockfileSentinel", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_k8s_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.ParseKubeManifestRequest": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ParseKubeManifestRequest(file: 'FileEntry')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParseKubeManifestRequest", + "provider": "pants.backend.helm.subsystems.k8s_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser.ParsedKubeManifest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.helm.subsystems.k8s_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ParsedKubeManifest(filename: 'str', found_image_refs: 'tuple[tuple[int, YamlPath, str], ...]')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser._HelmKubeParserTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "_HelmKubeParserTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRenderer": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmPostRenderer(*, exe: 'str', digest: 'Digest', description_of_origin: 'str', env: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererLockfileSentinel", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_post_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.SetupHelmPostRenderer": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.post_renderer", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Request for a post-renderer process that will perform a series of replacements in the\ngenerated files.", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer._HelmPostRendererTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "_HelmPostRendererTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestPluginBinding": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "dependencies": [ + "pants.backend.helm.util_rules.tool" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestPluginBinding", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExternalHelmPluginBinding", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_unittest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmChartTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_chart_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmDeploymentTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmUnitTestTestTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_unittest_test_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.HelmChartMetaSourceField": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "HelmChartMetaSourceField", + "provider": "pants.backend.helm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "HelmUnitTestFieldSet(address: 'Address', sources: 'SourcesField', source: pants.backend.helm.target_types.HelmUnitTestSourceField, dependencies: pants.backend.helm.target_types.HelmUnitTestDependenciesField, strict: pants.backend.helm.target_types.HelmUnitTestStrictField, timeout: pants.backend.helm.target_types.HelmUnitTestTimeoutField)", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.test.unittest.HelmUnitTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.chart.FindHelmDeploymentChart": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FindHelmDeploymentChart(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "FindHelmDeploymentChart", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChart": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.chart", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChart(address: 'Address', info: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChart", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartRequest(field_set: 'HelmChartFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChartRequest", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.HelmChartMetadata": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.target_types", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm, pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.ParseHelmChartMetadataDigest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Request to parse the Helm chart definition file (i.e. `Chart.yaml`) from the given digest.\n\nThe definition file is expected to be at the root of the digest.", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "ParseHelmChartMetadataDigest", + "provider": "pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.post_renderer.HelmDeploymentPostRendererRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmDeploymentPostRendererRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.post_renderer", + "name": "HelmDeploymentPostRendererRequest", + "provider": "pants.backend.helm.util_rules.post_renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.HelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet', *, cmd: 'HelmDeploymentCmd', description: 'str', extra_argv: 'Iterable[str] | None' = None, post_renderer: 'HelmPostRenderer | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "HelmDeploymentRequest", + "provider": "pants.backend.helm.util_rules.renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.RenderedHelmFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "RenderedHelmFiles(address: 'Address', chart: 'HelmChart', snapshot: 'Snapshot', post_processed: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.util_rules.renderer._HelmDeploymentProcessWrapper": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Intermediate representation of a `HelmProcess` that will produce a fully rendered set of\nmanifests from a given chart.\n\nThe encapsulated `process` will be side-effecting dependening on the `cmd` that was originally requested.\n\nThis is meant to only be used internally by this module.", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.sources.HelmChartRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.sources" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartRoot(path: 'str')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRoot", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartRootRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartRootRequest(source: 'HelmChartMetaSourceField')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRootRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.sources", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartSourceFiles(snapshot: 'Snapshot', unrooted_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartSourceFilesRequest(field_set: 'HelmChartFieldSet', include_resources: 'bool', include_files: 'bool', include_metadata: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFilesRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginBinding": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Union type allowing Pants to discover global external Helm plugins.", + "is_union": true, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginBinding", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [ + "HelmUnitTestPluginBinding" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "dependencies": [ + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Helper class to create a download request for an external Helm plugin.", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmBinary": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmBinary", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmPlugin(info: 'HelmPluginInfo', platform: 'Platform', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugin", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.tool.HelmPlugins": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugins", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmProcess": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmProcess(argv: 'Iterable[str]', *, description: 'str', input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), level: 'LogLevel' = , output_directories: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, extra_env: 'Mapping[str, str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_append_only_caches: 'Mapping[str, str] | None' = None, cache_scope: 'ProcessCacheScope | None' = None, timeout_seconds: 'int | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmProcess", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "HandleJavacOptionsRequest(bsp_target_id: pants.bsp.spec.base.BuildTargetIdentifier)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsRequest", + "provider": "pants.backend.java.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.java.bsp.rules", + "pants.base.build_root" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.JavaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPCompileRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPLanguageSupport", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavacOptionsHandlerMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.java.bsp.spec.JavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.java.bsp.spec" + ], + "dependents": [], + "documentation": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.spec", + "name": "JavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.compile.javac.CompileJavaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.compile.javac", + "name": "CompileJavaSourceRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.FallibleJavaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.java.dependency_inference.java_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaParserCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors" + ] + }, + "pants.backend.java.dependency_inference.java_parser.JavaSourceDependencyAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.InferJavaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "InferJavaSourceDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.java.dependency_inference.rules", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependenciesAndExportsRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaInferredDependenciesAndExportsRequest(source: 'SourcesField')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependenciesAndExportsRequest", + "provider": "pants.backend.java.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.symbol_mapper.AllJavaTargets": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "AllJavaTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.symbol_mapper.FirstPartyJavaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "FirstPartyJavaTargetsMappingRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.types.JavaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.types", + "name": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ] + }, + "pants.backend.java.goals.check.JavacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.check.javac_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.goals.check", + "name": "JavacCheckRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.java.goals.tailor.PutativeJavaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "PutativeJavaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.java.goals.tailor", + "name": "PutativeJavaTargetsRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatRequest", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatToolLockfileSentinel", + "provider": "pants.backend.experimental.java.lint.google_java_format, pants.backend.java.lint.google_java_format.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ] + }, + "pants.backend.java.lint.google_java_format.skip_field.SkipGoogleJavaFormatField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.skip_field", + "name": "SkipGoogleJavaFormatField", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.subsystem.GoogleJavaFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.subsystem", + "name": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [ + "construct_scope_google_java_format" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.java_infer.JavaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.java_infer", + "name": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_java_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.javac.JavacSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.javac", + "name": "JavacSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_javac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.junit.JUnit": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.jvm.test.junit.generate_junit_lockfile_request", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.junit", + "name": "JUnit", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_junit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.target_types.JavaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'JavaSourceField')", + "is_union": false, + "module": "pants.backend.java.target_types", + "name": "JavaFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJS": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_npx_process" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "construct_scope_nodejs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NpxProcess": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_npx_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "A request to invoke the npx cli (via NodeJS)", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NpxProcess", + "provider": "pants.backend.javascript.subsystems.nodejs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.lint.spectral.rules.run_spectral" + ] + }, + "pants.backend.kotlin.compile.kotlinc.CompileKotlinSourceRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc", + "name": "CompileKotlinSourceRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.AllKotlincPluginTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.build_graph.address", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPlugins(ids: 'tuple[str, ...]', classpath: 'ClasspathEntry', plugin_args: 'FrozenDict[str, tuple[str, ...]]')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsRequest", + "provider": "pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.FallibleKotlinSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "FallibleKotlinSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.dependency_inference.kotlin_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinSourceDependencyAnalysis(package: 'str', imports: 'frozenset[KotlinImport]', named_declarations: 'frozenset[str]', consumed_symbols_by_scope: 'FrozenDict[str, frozenset[str]]', scopes: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinRuntimeDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinSourceDependencies", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.dependency_inference.rules" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolveRequest", + "provider": "pants.backend.kotlin.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.AllKotlinTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.FirstPartyKotlinTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "FirstPartyKotlinTargetsMappingRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.check.KotlincCheckRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.check.kotlinc_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.goals.check", + "name": "KotlincCheckRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.tailor.PutativeKotlinTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "PutativeKotlinTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.kotlin.goals.tailor", + "name": "PutativeKotlinTargetsRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintRequest", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin.lint.ktlint, pants.backend.kotlin.lint.ktlint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt" + ] + }, + "pants.backend.kotlin.lint.ktlint.skip_field.SkipKtlintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.skip_field", + "name": "SkipKtlintField", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.subsystem.KtlintSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.subsystem", + "name": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [ + "construct_scope_ktlint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin.KotlinSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin", + "name": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin_infer.KotlinInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin_infer", + "name": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlinc.KotlincSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlinc", + "name": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlinc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.target_types.KotlinFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'KotlinSourceField')", + "is_union": false, + "module": "pants.backend.kotlin.target_types", + "name": "KotlinFieldSet", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.InferKotlinJunitTestDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "InferKotlinJunitTestDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.test.junit" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinJunitLibrariesForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinJunitLibrariesForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolveRequest", + "provider": "pants.backend.kotlin.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiDocumentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiDocumentDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiSourceDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiSourceDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.OpenApiDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.openapi.dependency_inference", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": "OpenApiDependencies(dependencies: 'FrozenDict[str, frozenset[str]]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.dependency_inference.ParseOpenApiSources": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": "ParseOpenApiSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "ParseOpenApiSources", + "provider": "pants.backend.openapi.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.goals.tailor.PutativeOpenApiTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": "PutativeOpenApiTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.goals.tailor", + "name": "PutativeOpenApiTargetsRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.rules.SpectralRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.rules", + "name": "SpectralRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.skip_field.SkipSpectralField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.skip_field", + "name": "SkipSpectralField", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.subsystem.SpectralSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.subsystem", + "name": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "construct_scope_spectral" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.openapi.subsystems.openapi.OpenApiSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.subsystems.openapi", + "name": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [ + "construct_scope_openapi" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.plugin_development.pants_requirements.GenerateFromPantsRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.plugin_development" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.plugin_development.pants_requirements", + "name": "GenerateFromPantsRequirementsRequest", + "provider": "pants.backend.plugin_development", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCode": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCode", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCodeSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.SuccinctCodeCounter": { + "consumed_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "SuccinctCodeCounter", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_scc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.Dependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "Dependencies", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.DependenciesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "DependenciesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.AddressToDependents": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "AddressToDependents(mapping: pants.util.frozendict.FrozenDict[pants.build_graph.address.Address, pants.util.ordered_set.FrozenOrderedSet[pants.build_graph.address.Address]])", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "AddressToDependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.map_addresses_to_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.Dependents": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.project_info", + "pants.backend.python.mixed_interpreter_constraints" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "Dependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.DependentsRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "DependentsRequest(addresses: Iterable[pants.build_graph.address.Address], *, transitive: bool, include_roots: bool)", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.Filedeps": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.base.build_root", + "pants.build_graph.address", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "Filedeps", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.FiledepsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "FiledepsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filedeps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.Roots": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "Roots", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.RootsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "RootsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.List": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "List", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.ListSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "ListSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_list" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.Peek": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "Peek", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.PeekSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "Display detailed target information in JSON form.", + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "PeekSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.TargetDatas": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "TargetDatas", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.get_target_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.peek.peek" + ] + }, + "pants.backend.project_info.regex_lint.RegexLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.regex_lint.RegexLintSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.project_info.regex_lint.partition_inputs" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_regex_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.AllPythonTargets": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "AllPythonTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImpl": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.python, pants.backend.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImplMarker": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "An entry point for a specific implementation of mapping module names to owning targets for\nPython import dependency inference.\n\nAll implementations will be merged together. Any modules that show up in multiple\nimplementations will be marked ambiguous.", + "is_union": true, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImplMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "FirstPartyPythonTargetsMappingMarker", + "PythonProtobufMappingMarker", + "PythonThriftMappingMarker", + "PythonVCSVersionMappingMarker" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "FirstPartyPythonModuleMapping(resolves_to_modules_to_providers: 'FrozenDict[ResolveName, FrozenDict[str, Tuple[ModuleProvider, ...]]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonTargetsMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonTargetsMappingMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "documentation": "The target(s) that own a Python module.\n\nUp to 2 targets can unambiguously own the same module, if one is an implementation and the other\nis a .pyi type stub. It is ambiguous for >1 implementation target to own the same module, and\nthose targets will be put into `ambiguous` instead of `unambiguous`. Therefore, `unambiguous`\nshould never be >2; and only 1 of `unambiguous` and `ambiguous` should have targets.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwnersRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonModuleOwnersRequest(module: 'str', resolve: 'str | None', locality: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwnersRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.ThirdPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.python" + ], + "documentation": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.GeneralPythonDependencyVisitorRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "GeneralPythonDependencyVisitorRequest()", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "GeneralPythonDependencyVisitorRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PythonDependencyVisitorRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsePythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ParsePythonDependenciesRequest(source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsePythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ParsedPythonDependencies(imports: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonImports, assets: pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonAssetPaths)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParserScript": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ParserScript(digest: Digest, env: pants.util.frozendict.FrozenDict[str, str])", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParserScript", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.PythonDependencyVisitor": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Wraps a subclass of DependencyVisitorBase.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "PythonDependencyVisitor", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.PythonDependencyVisitorRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": true, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "PythonDependencyVisitorRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "GeneralPythonDependencyVisitorRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script" + ] + }, + "pants.backend.python.dependency_inference.rules.InferConftestDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferConftestDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferInitDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferInitDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferPythonImportDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferPythonImportDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.PythonImportDependenciesInferenceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": "PythonImportDependenciesInferenceFieldSet(address: 'Address', source: 'PythonSourceField', dependencies: 'PythonDependenciesField', resolve: 'PythonResolveField', interpreter_constraints: 'InterpreterConstraintsField')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "PythonImportDependenciesInferenceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ResolvedParsedPythonDependencies(resolve_results: 'dict[str, ImportResolveResult]', assets: 'dict[str, ImportResolveResult]', explicit: 'ExplicitlyProvidedDependencies')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ResolvedParsedPythonDependenciesRequest(field_set: 'PythonImportDependenciesInferenceFieldSet', parsed_dependencies: 'ParsedPythonDependencies', resolve: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwnerRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "UnownedImportPossibleOwnerRequest(unowned_import: 'str', original_resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwnerRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwners": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "UnownedImportPossibleOwners(value: 'list[tuple[Address, ResolveName]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.subsystem.PythonInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.subsystem", + "name": "PythonInferSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_python_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.InferStevedoreNamespacesDependencies": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "InferStevedoreNamespacesDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.StevedoreExtensions": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": "A mapping of stevedore namespaces to a list of targets that provide them.\n\nEffectively, the targets are StevedoreExtension targets.", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.rules.GenerateEntryPointsTxtFromStevedoreExtensionRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.rules", + "name": "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.AllStevedoreExtensionTargets": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreExtensionTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesField", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesProviderTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": "StevedoreNamespacesProviderTargetsRequest(stevedore_namespaces: 'StevedoreNamespacesField')", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesProviderTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.goals.coverage_py.CoverageConfig": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "CoverageConfig(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageConfig", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoveragePyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoveragePyLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSetup": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "CoverageSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_coverage_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.MergedCoverageData": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "MergedCoverageData", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.PytestCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "PytestCoverageDataCollection", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysisSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_python_dump_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.PythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": "Information on the inferred imports for a Python file, including all raw intermediate\nresults.", + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.goals.export.ExportPluginOptions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.subsystem" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPluginOptions", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginOption", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.ExportPythonTool": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_tool" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.tools.yamllint, pants.backend.python, pants.backend.python.lint.autoflake, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export", + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.lint.ruff.subsystem.ruff_export", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.tools.yamllint.subsystem.yamllint_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportPythonToolSentinel": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Python tools use this as an entry point to say how to export their tool virtualenv.\n\nEach tool should subclass `ExportPythonToolSentinel` and set up a rule that goes from\nthe subclass -> `ExportPythonTool`. Register a union rule for the `ExportPythonToolSentinel`\nsubclass.\n\nIf the tool is in `pantsbuild/pants`, update `export_integration_test.py`.", + "is_union": true, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonToolSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaExportSentinel", + "AutoflakeExportSentinel", + "BanditExportSentinel", + "BlackExportSentinel", + "DocformatterExportSentinel", + "Flake8ExportSentinel", + "IsortExportSentinel", + "MyPyExportSentinel", + "PyUpgradeExportSentinel", + "PydocstyleExportSentinel", + "PylintExportSentinel", + "PytestExportSentinel", + "RuffExportSentinel", + "YamllintExportSentinel", + "YapfExportSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportVenvsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ExportVenvsRequest(targets: 'Sequence[Target]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportVenvsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.MaybeExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "MaybeExportResult(result: 'ExportResult | None')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "MaybeExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.VenvExportRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "VenvExportRequest(pex_request: 'PexRequest', dest_prefix: 'str', resolve_name: 'str', qualify_path_with_python_version: 'bool')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "VenvExportRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenv_for_targets" + ] + }, + "pants.backend.python.goals.export._ExportVenvForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_ExportVenvForResolveRequest(resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvForResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export._ExportVenvRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_ExportVenvRequest(resolve: 'str | None', root_python_targets: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.lockfile.GeneratePythonLockfile": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.terraform, pants.backend.experimental.tools.yamllint, pants.backend.python, pants.backend.python.lint.autoflake, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request", + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request", + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "pants.backend.python.lint.ruff.subsystem.setup_ruff_lockfile", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "pants.backend.tools.yamllint.subsystem.setup_yamllint_lockfile" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.KnownPythonUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "KnownPythonUserResolveNamesRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.PythonSyntheticLockfileTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "dependencies": [ + "pants.engine.internals.synthetic_targets" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "Register the type used to create synthetic targets for Python lockfiles.\n\nAs the paths for all lockfiles are known up-front, we set the `path` field to\n`SyntheticTargetsRequest.SINGLE_REQUEST_FOR_ALL_TARGETS` so that we get a single request for all\nour synthetic targets rather than one request per directory.", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "PythonSyntheticLockfileTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "SyntheticTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.RequestedPythonUserResolveNames": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "RequestedPythonUserResolveNames", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.backend.python.goals.package_pex_binary.PexBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PexBinaryFieldSet(address: 'Address', entry_point: pants.backend.python.target_types.PexEntryPointField, script: pants.backend.python.target_types.PexScriptField, args: pants.backend.python.target_types.PexArgsField, env: pants.backend.python.target_types.PexEnvField, output_path: pants.core.goals.package.OutputPathField, emit_warnings: pants.backend.python.target_types.PexEmitWarningsField, ignore_errors: pants.backend.python.target_types.PexIgnoreErrorsField, inherit_path: pants.backend.python.target_types.PexInheritPathField, shebang: pants.backend.python.target_types.PexShebangField, strip_env: pants.backend.python.target_types.PexStripEnvField, platforms: pants.backend.python.target_types.PexPlatformsField, complete_platforms: pants.backend.python.target_types.PexCompletePlatformsField, resolve_local_platforms: pants.backend.python.target_types.PexResolveLocalPlatformsField, layout: pants.backend.python.target_types.PexLayoutField, execution_mode: pants.backend.python.target_types.PexExecutionModeField, include_requirements: pants.backend.python.target_types.PexIncludeRequirementsField, include_sources: pants.backend.python.target_types.PexIncludeSourcesField, include_tools: pants.backend.python.target_types.PexIncludeToolsField, venv_site_packages_copies: pants.backend.python.target_types.PexVenvSitePackagesCopies, venv_hermetic_scripts: pants.backend.python.target_types.PexVenvHermeticScripts, environment: pants.core.util_rules.environments.EnvironmentField)", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexBinaryFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.package_pex_binary.PexFromTargetsRequestForBuiltPackage": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request" + ], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "An intermediate class that gives consumers access to the data used to create a\n`PexFromTargetsRequest` to fulfil a `BuiltPackage` request.\n\nThis class is used directly by `run_pex_binary`, but should be handled transparently by direct\n`BuiltPackage` requests.", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.publish.PublishPythonPackageFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "PublishPythonPackageFieldSet(address: 'Address', repositories: 'PythonRepositoriesField', skip_twine: 'SkipTwineUploadField')", + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageFieldSet", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PublishPythonPackageRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PythonRepositoriesField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PythonRepositoriesField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.SkipTwineUploadField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "SkipTwineUploadField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetups": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.python.framework.stevedore", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetups", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetupsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "AllPytestPluginSetupsRequest(addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetupsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.PyTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PyTestRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetupRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "A request to set up the test environment before Pytest runs, e.g. to set up databases.\n\nTo use, subclass PytestPluginSetupRequest, register the rule\n`UnionRule(PytestPluginSetupRequest, MyCustomPytestPluginSetupRequest)`, and add a rule that\ntakes your subclass as a parameter and returns `PytestPluginSetup`.", + "is_union": true, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "RuntimePackagesPluginRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.RuntimePackagesPluginRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "RuntimePackagesPluginRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "RuntimePackagesPluginRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "TestSetup(process: 'Process', results_file_name: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.pytest_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "TestSetupRequest(field_sets: 'Tuple[PythonTestFieldSet, ...]', metadata: 'TestMetadata', is_debug: 'bool', extra_env: 'FrozenDict[str, str]' = FrozenDict({}), prepend_argv: 'Tuple[str, ...]' = (), additional_pexes: 'Tuple[Pex, ...]' = ())", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.repl.IPythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "IPythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.repl.PythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_python_repl_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "PythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_requirement.PythonRequirementFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonRequirementFieldSet(address: 'Address', requirements: 'PythonRequirementsField', dependencies: 'PythonRequirementDependenciesField', modules: 'PythonRequirementModulesField', resolve: 'PythonRequirementResolveField', entry_point: 'PythonRequirementEntryPointField')", + "is_union": false, + "module": "pants.backend.python.goals.run_python_requirement", + "name": "PythonRequirementFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_source.PythonSourceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonSourceFieldSet(address: 'Address', source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.target_types.InterpreterConstraintsField, _run_goal_use_sandbox: pants.backend.python.target_types.PythonRunGoalUseSandboxField)", + "is_union": false, + "module": "pants.backend.python.goals.run_python_source", + "name": "PythonSourceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.setup_py.DependencyOwner": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "An ExportedTarget in its role as an owner of other targets.\n\nWe need this type to prevent rule ambiguities when computing the list of targets owned by an\nExportedTarget (which involves going from ExportedTarget -> dep -> owner (which is itself an\nExportedTarget) and checking if owner is the original ExportedTarget.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DependencyOwner", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_sources" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildChroot": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A chroot containing PEP 517 build setup and the sources it operates on.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildChroot", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildChrootRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to create a chroot for building a dist in.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildChrootRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Various extra information that might be needed to build a dist.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildEnvironmentRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "DistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": true, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildEnvironmentRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "MyPycDistBuildEnvironmentRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.goals.setup_py.DistBuildSources": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The source-root-stripped sources required to build a distribution with a generated setup.py.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "DistBuildSources", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ] + }, + "pants.backend.python.goals.setup_py.ExportedTarget": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "ExportedTarget", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_exporting_owner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.ExportedTargetRequirements": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "ExportedTargetRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_requirements" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.goals.setup_py.FinalizedSetupKwargs": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "FinalizedSetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_setup_py" + ] + }, + "pants.backend.python.goals.setup_py.GenerateSetupPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.generate_setup_py" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "GenerateSetupPyRequest(exported_target: 'ExportedTarget', sources: 'DistBuildSources', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "GenerateSetupPyRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.generate_setup_py" + ] + }, + "pants.backend.python.goals.setup_py.GeneratedSetupPy": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "GeneratedSetupPy(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "GeneratedSetupPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.generate_setup_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot" + ] + }, + "pants.backend.python.goals.setup_py.OwnedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "OwnedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_sources" + ] + }, + "pants.backend.python.goals.setup_py.OwnedDependency": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.get_exporting_owner" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A target that is owned by some ExportedTarget.\n\nCode in this target is published in the owner's distribution.\n\nThe owner of a target T is T's closest filesystem ancestor among the python_distribution\ntargets that directly or indirectly depend on it (including T itself).", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "OwnedDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.SetupKwargs": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.setup_py.get_requirements" + ] + }, + "pants.backend.python.goals.setup_py.SetupKwargsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to allow setting the kwargs passed to the `setup()` function.\n\nBy default, Pants will pass the kwargs provided in the BUILD file unchanged. To customize this\nbehavior, subclass `SetupKwargsRequest`, register the rule `UnionRule(SetupKwargsRequest,\nMyCustomSetupKwargsRequest)`, and add a rule that takes your subclass as a parameter and returns\n`SetupKwargs`.", + "is_union": true, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupKwargsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs" + ] + }, + "pants.backend.python.goals.setup_py.SetupPyGeneration": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_requirements" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.setup_py", + "name": "SetupPyGeneration", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setup_py_generation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.tailor.PutativePythonTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PutativePythonTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.tailor", + "name": "PutativePythonTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.rules.AddTrailingCommaRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.rules", + "name": "AddTrailingCommaRequest", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.skip_field.SkipAddTrailingCommaField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.skip_field", + "name": "SkipAddTrailingCommaField", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingComma": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export", + "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [ + "construct_scope_add_trailing_comma" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingCommaExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingCommaExportSentinel", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingCommaLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingCommaLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.rules.AutoflakeRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.rules", + "name": "AutoflakeRequest", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.skip_field.SkipAutoflakeField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.skip_field", + "name": "SkipAutoflakeField", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.Autoflake": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.autoflake" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "Autoflake", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [ + "construct_scope_autoflake" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.AutoflakeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.autoflake_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.autoflake" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "AutoflakeExportSentinel", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.AutoflakeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.autoflake" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "AutoflakeLockfileSentinel", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.rules.BanditRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditRequest", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.skip_field.SkipBanditField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.skip_field", + "name": "SkipBanditField", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.Bandit": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.bandit" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "Bandit", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [ + "construct_scope_bandit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.bandit" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditExportSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.bandit" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditLockfileSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.rules.BlackRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.rules", + "name": "BlackRequest", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.skip_field.SkipBlackField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.skip_field", + "name": "SkipBlackField", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.Black": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.python.lint.black", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "Black", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_black" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.black_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.black" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackExportSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.setup_black_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.black" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackLockfileSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.rules.DocformatterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.rules", + "name": "DocformatterRequest", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.skip_field.SkipDocformatterField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.skip_field", + "name": "SkipDocformatterField", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.Docformatter": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.docformatter" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "Docformatter", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [ + "construct_scope_docformatter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.DocformatterExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.subsystem.docformatter_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.docformatter" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "DocformatterExportSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.DocformatterLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.docformatter" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "DocformatterLockfileSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.rules.Flake8Request": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Request", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.skip_field.SkipFlake8Field": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.skip_field", + "name": "SkipFlake8Field", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "construct_scope_flake8" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8ExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8ExportSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8FirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8LockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8LockfileSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.rules.IsortRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.rules", + "name": "IsortRequest", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.skip_field.SkipIsortField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.skip_field", + "name": "SkipIsortField", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.Isort": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.isort" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "Isort", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [ + "construct_scope_isort" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.IsortExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.subsystem.isort_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.isort" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "IsortExportSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.IsortLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.isort" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "IsortLockfileSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.rules.PydocstyleRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.rules", + "name": "PydocstyleRequest", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.skip_field.SkipPydocstyleField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.skip_field", + "name": "SkipPydocstyleField", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.subsystem.Pydocstyle": { + "consumed_by_rules": [ + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export", + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.pydocstyle" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.subsystem", + "name": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [ + "construct_scope_pydocstyle" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.subsystem.PydocstyleExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.pydocstyle" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.subsystem", + "name": "PydocstyleExportSentinel", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.subsystem.PydocstyleLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.pydocstyle" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.subsystem", + "name": "PydocstyleLockfileSentinel", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.rules.PylintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintRequest", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.skip_field.SkipPylintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.skip_field", + "name": "SkipPylintField", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.Pylint": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "Pylint", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "construct_scope_pylint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintExportSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintLockfileSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.rules.PyUpgradeRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.rules", + "name": "PyUpgradeRequest", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.skip_field.SkipPyUpgradeField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.skip_field", + "name": "SkipPyUpgradeField", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgrade": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.pyupgrade" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [ + "construct_scope_pyupgrade" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgradeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.pyupgrade" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgradeExportSentinel", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgradeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.pyupgrade" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgradeLockfileSentinel", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffFixRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffFixRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffLintRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules._RunRuffRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.rules.run_ruff" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.lint.ruff" + ], + "documentation": "_RunRuffRequest(snapshot: 'Snapshot', is_fix: 'bool')", + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "_RunRuffRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_lint" + ] + }, + "pants.backend.python.lint.ruff.skip_field.SkipRuffField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.skip_field", + "name": "SkipRuffField", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.subsystem.Ruff": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.ruff.subsystem.ruff_export", + "pants.backend.python.lint.ruff.subsystem.setup_ruff_lockfile", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.lint.ruff" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.subsystem", + "name": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [ + "construct_scope_ruff" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.subsystem.RuffExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.subsystem.ruff_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python.lint.ruff" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.subsystem", + "name": "RuffExportSentinel", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.subsystem.RuffLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.subsystem.setup_ruff_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.lint.ruff" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.subsystem", + "name": "RuffLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.rules.YapfRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.rules", + "name": "YapfRequest", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.skip_field.SkipYapfField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.skip_field", + "name": "SkipYapfField", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.Yapf": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fmt.yapf", + "pants.backend.python.lint.yapf", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "Yapf", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_yapf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.YapfExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.subsystem.yapf_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.lint.yapf" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "YapfExportSentinel", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.YapfLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.yapf" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "YapfLockfileSentinel", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.macros.pipenv_requirements.GenerateFromPipenvRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.pipenv_requirements", + "name": "GenerateFromPipenvRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.poetry_requirements.GenerateFromPoetryRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.poetry_requirements", + "name": "GenerateFromPoetryRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.python_requirements.GenerateFromPythonRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.python_requirements.generate_from_python_requirement" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.python_requirements", + "name": "GenerateFromPythonRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.mixed_interpreter_constraints" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "construct_scope_py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyOxidizerFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": "PyOxidizerFieldSet(address: 'Address', binary_name: 'PyOxidizerBinaryNameField', entry_point: 'PyOxidizerEntryPointField', dependencies: 'PyOxidizerDependenciesField', unclassified_resources: 'PyOxidizerUnclassifiedResources', template: 'PyOxidizerConfigSourceField', output_path: 'PyOxidizerOutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyOxidizerFieldSet", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyoxidizerRunnerScript": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyOxidizer": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "construct_scope_pyoxidizer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyoxidizerLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyoxidizerLockfileSentinel", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPy": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_debugpy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPyLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPython": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPython", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_ipython" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPythonLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPythonLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.Lambdex": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "Lambdex", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "construct_scope_lambdex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.LambdexLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "LambdexLockfileSentinel", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PyTest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PyTest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pytest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.pytest_export" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestExportSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PythonTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "PythonTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'PythonTestSourceField', interpreter_constraints: 'InterpreterConstraintsField', timeout: 'PythonTestsTimeoutField', runtime_package_dependencies: 'RuntimePackageDependenciesField', extra_env_vars: 'PythonTestsExtraEnvVarsField', xdist_concurrency: 'PythonTestsXdistConcurrencyField', batch_compatibility_tag: 'PythonTestsBatchCompatibilityTagField', resolve: 'PythonResolveField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PythonTestFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_python_native_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.PythonNativeCodeSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_python_native_code" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "PythonNativeCodeSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_native_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.repos.PythonRepos": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.repos", + "name": "PythonRepos", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_repos" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup.PythonSetup": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup", + "name": "PythonSetup", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.PythonDistributionFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonDistributionFieldSet(address: 'Address', provides: pants.backend.python.target_types.PythonProvidesField)", + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "PythonDistributionFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.subsystems.setuptools.Setuptools": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "Setuptools", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setuptools" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.SetuptoolsLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "SetuptoolsLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCM": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_setuptools_scm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCMLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCMLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.twine.setup_twine_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.subsystems.twine.setup_twine_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_twine" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexBinaryDefaults": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexBinaryDefaults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pex_binary_defaults" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexCompletePlatformsField": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexCompletePlatformsField", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.target_types.PythonFilesGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PythonFilesGeneratorSettingsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types.ResolvePexEntryPointRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Determine the `entry_point` for a `pex_binary` after applying all syntactic sugar.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePexEntryPointRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvePythonDistributionEntryPointsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Looks at the entry points to see if it is a setuptools entry point, or a BUILD target address\nthat should be resolved into a setuptools entry point.\n\nIf the `entry_points_field` is present, inspect the specified entry points.\nIf the `provides_field` is present, inspect the `provides_field.kwargs[\"entry_points\"]`.\n\nThis is to support inspecting one or the other depending on use case, using the same\nlogic for resolving pex_binary addresses etc.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePythonDistributionEntryPointsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.target_types.ResolvedPexEntryPoint": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPexEntryPoint", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvedPythonDistributionEntryPoints": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ] + }, + "pants.backend.python.target_types_rules.GenerateTargetsFromPexBinaries": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "GenerateTargetsFromPexBinaries", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPexBinaryEntryPointDependency": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPexBinaryEntryPointDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPythonDistributionDependencies": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPythonDistributionDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonValidateDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonValidateDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.MyPycDistBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPycDistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "MyPycDistBuildEnvironmentRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "DistBuildEnvironmentRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.UsesMyPycField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "UsesMyPycField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPyPartition(field_sets: 'FrozenOrderedSet[MyPyFieldSet]', root_targets: 'CoarsenedTargets', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartition", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartitions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.skip_field.SkipMyPyField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.skip_field", + "name": "SkipMyPyField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPy": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPy", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "construct_scope_mypy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyConfigFile": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyExportSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyExtraTypeStubsLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyExtraTypeStubsLockfileSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyLockfileSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Any ancestor files found.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request for ancestor files of the given names.\n\n\"Ancestor files\" means all files with one of the given names that are siblings of, or in parent\ndirectories of, a `.py` or `.pyi` file in the input_files.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A PEP 517/518 build system configuration.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystemRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to find build system config in the given dir of the given digest.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystemRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to build dists via a PEP 517 build backend.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.package_python_dist" + ] + }, + "pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.interpreter_constraints", + "name": "InterpreterConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistWheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Contains the wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistWheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPex": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPex", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Request to build the local dists from the dependency closure of a set of addresses.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.BuildPexResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "BuildPexResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex" + ] + }, + "pants.backend.python.util_rules.pex.CompletePlatforms": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "CompletePlatforms", + "provider": "pants.backend.awslambda.python, pants.backend.google_cloud_function.python, pants.core", + "returned_by_rules": [ + "pants.backend.awslambda.python.rules.digest_complete_platforms", + "pants.backend.google_cloud_function.python.rules.digest_complete_platforms", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.digest_complete_platforms", + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.digest_complete_platforms", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPex": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "OptionalPex(maybe_pex: 'Pex | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex.Pex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.tools.yamllint", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "Wrapper for a digest containing a pex file created with some filename.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "Pex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_pex_process" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "PexProcess(pex: 'Pex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings_or_addrs=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None, description_of_origin=''), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.PexResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexResolveInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex.PythonProvider": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Union which should have 0 or 1 implementations registered which provide Python.\n\nSubclasses should provide a rule from their subclass type to `PythonExecutable`.", + "is_union": true, + "module": "pants.backend.python.util_rules.pex", + "name": "PythonProvider", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex.ReqStrings": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": [ + "pants.core" + ], + "documentation": "ReqStrings(req_strings: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "ReqStrings", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex.VenvPex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "VenvPex(digest: 'Digest', append_only_caches: 'FrozenDict[str, str] | None', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_venv_pex_process" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "VenvPexProcess(venv_pex: 'VenvPex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "VenvPexRequest(pex_request: 'PexRequest', complete_pex_env: 'CompletePexEnvironment', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexRequest", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexCli": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCli", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex_cli" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_cli.PexCliProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "PexCliProcess(*, subcommand: 'Iterable[str]', extra_args: 'Iterable[str]', description: 'str', additional_input_digest: 'Optional[Digest]' = None, extra_env: 'Optional[Mapping[str, str]]' = None, output_files: 'Optional[Iterable[str]]' = None, output_directories: 'Optional[Iterable[str]]' = None, level: 'LogLevel' = , concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCliProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexPEX": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [ + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "The Pex PEX binary.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexPEX", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexEnvironment": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [ + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.core" + ], + "documentation": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonBuildStandaloneBinary', venv_use_symlinks: 'bool' = False)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_pex", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PythonExecutable": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "The BinaryPath of a Python executable for user code, along with some extras.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PythonExecutable", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolve", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ChosenPythonResolveRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.GlobalRequirementConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "GlobalRequirementConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_from_targets.InterpreterConstraintsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "InterpreterConstraintsRequest(addresses: 'Iterable[Address]', *, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "InterpreterConstraintsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.PexFromTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "PexFromTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.RequirementsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Requests a PEX containing only thirdparty requirements for internal/non-portable use.\n\nUsed as part of an optimization to reduce the \"overhead\" (in terms of both time and space) of\nthirdparty requirements by taking advantage of certain PEX features.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "RequirementsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._ConstraintsRepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_ConstraintsRepositoryPexRequest(repository_pex_request: '_RepositoryPexRequest')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_ConstraintsRepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._PexRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Determine the requirement strings used transitively.\n\nThis type is private because callers should likely use `RequirementsPexRequest` or\n`PexFromTargetsRequest` instead.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_PexRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._RepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_RepositoryPexRequest(addresses: 'Iterable[Address]', *, internal_only: 'bool', hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_lockfile_args: 'tuple[str, ...]' = ()) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_RepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.docker", + "pants.backend.python", + "pants.core" + ], + "documentation": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfileRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A request to load and validate the content of the given lockfile.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfileRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Lockfile": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Lockfile(url: 'str', url_description_of_origin: 'str', resolve_name: 'str', lockfile_hex_digest: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Lockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_requirements.PexRequirements": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "PexRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Resolve": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Resolve(name: 'str', use_entire_lockfile: 'bool')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Resolve", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.core" + ], + "documentation": "Configuration from `[python]` that impacts how the resolve is created.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfig", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfigRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Find all configuration from `[python]` that impacts how the resolve is created.\n\nIf `resolve_name` is None, then most per-resolve options will be ignored because there is no way\nfor users to configure them. However, some options like `[python-repos].indexes` will still be\nloaded.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfigRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFiles": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonSourceFilesRequest(targets: 'Iterable[Target]', *, include_resources: 'bool' = True, include_files: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.StrippedPythonSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "documentation": "A PythonSourceFiles that has had its source roots stripped.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "StrippedPythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.vcs_versioning.AllVCSVersionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.GeneratePythonFromSetuptoolsSCMRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "GeneratePythonFromSetuptoolsSCMRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.PythonVCSVersionMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "PythonVCSVersionMappingMarker", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.VCSVersionPythonResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "VCSVersionPythonResolveField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "HandleScalacOptionsRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.base.build_root", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "HandleScalacOptionsResult(item: 'ScalacOptionsItem')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.ScalaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPCompileRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPDependencyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaBSPDependencyModulesRequest(field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPDependencyModulesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPDependencyModulesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPLanguageSupport", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_resources_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPResourcesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaMainClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaMainClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaTestClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaTestClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalacOptionsHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModules": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.core", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ThirdpartyModules(resolve: 'CoursierResolveKey', entries: 'dict[CoursierLockfileEntry, ClasspathEntry]', merged_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ThirdpartyModulesRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModulesRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.spec.ScalaMainClassesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "dependents": [], + "documentation": "ScalaMainClassesResult(items: 'tuple[ScalaMainClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalaTestClassesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "dependents": [], + "documentation": "ScalaTestClassesResult(items: 'tuple[ScalaTestClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "dependents": [], + "documentation": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac.CompileScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac", + "name": "CompileScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.AllScalaPluginTargets": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.scala.compile.scalac_plugins", + "pants.build_graph.address", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPlugins", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala, pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetWithoutResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginsForTargetWithoutResolveRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetWithoutResolveRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaLibraryDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaLibraryDependencyRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaPluginDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaPluginDependenciesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaSourceDependencies", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.dependency_inference.rules" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolveRequest", + "provider": "pants.backend.scala.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.AnalyzeScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "AnalyzeScalaSourceRequest(source_files: 'SourceFiles', scala_version: 'str', source3: 'bool')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.FallibleScalaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.dependency_inference.scala_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[ScalaProvidedSymbol]', provided_symbols_encoded: 'FrozenOrderedSet[ScalaProvidedSymbol]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.AllScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "AllScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.FirstPartyScalaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "FirstPartyScalaTargetsMappingRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.check.ScalacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.check.scalac_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.check", + "name": "ScalacCheckRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.repl.ScalaRepl": { + "consumed_by_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.repl", + "name": "ScalaRepl", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.scala.goals.tailor.PutativeScalaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "PutativeScalaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.goals.tailor", + "name": "PutativeScalaTargetsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.GatherScalafmtConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "GatherScalafmtConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "GatherScalafmtConfigFilesRequest", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtConfigFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.scala.lint.scalafmt.rules" + ], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtRequest", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtToolLockfileSentinel", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.skip_field.SkipScalafmtField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.skip_field", + "name": "SkipScalafmtField", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.subsystem.ScalafmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.subsystem", + "name": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "construct_scope_scalafmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.resolve.lockfile.ValidateResolveHasScalaRuntimeRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": [ + "pants.jvm.goals.lockfile" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.lockfile", + "name": "ValidateResolveHasScalaRuntimeRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateJvmArtifactsForResolveRequest", + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala.ScalaSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala", + "name": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala_infer.ScalaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala_infer", + "name": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalac.Scalac": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalac", + "name": "Scalac", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalatest.Scalatest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalatest", + "name": "Scalatest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalatest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'ScalaSourceField')", + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaSettingsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "ScalatestTestFieldSet(address: 'Address', sources: 'ScalatestTestSourceField', timeout: 'ScalatestTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'ScalatestTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ] + }, + "pants.backend.scala.test.scalatest.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.scala.test.scalatest", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetup", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.test.scalatest.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "TestSetupRequest(field_set: 'ScalatestTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetupRequest", + "provider": "pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionRequest": { + "consumed_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaArtifactsForVersionRequest(scala_version: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionRequest", + "provider": "pants.backend.scala.util_rules.versions", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.util_rules.versions" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaArtifactsForVersionResult(compiler_coordinate: 'Coordinate', library_coordinate: 'Coordinate', compiler_main: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.shell.dependency_inference.AllShellTargets": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "AllShellTargets", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.find_all_shell_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.InferShellDependencies": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "InferShellDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.ParseShellImportsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "ParseShellImportsRequest(digest: 'Digest', fp: 'str')", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParseShellImportsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ParsedShellImports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParsedShellImports", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ShellMapping": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "A mapping of Shell file names to their owning file address.", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ShellMapping", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.goals.tailor.PutativeShellTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "PutativeShellTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.shell.goals.tailor", + "name": "PutativeShellTargetsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.ShellTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "ShellTestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.TestShellCommandFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "TestShellCommandFieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.rules.ShellcheckRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.rules", + "name": "ShellcheckRequest", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.skip_field.SkipShellcheckField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.skip_field", + "name": "SkipShellcheckField", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.subsystem.Shellcheck": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.subsystem", + "name": "Shellcheck", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shellcheck" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.rules.ShfmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.rules", + "name": "ShfmtRequest", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.skip_field.SkipShfmtField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.skip_field", + "name": "SkipShfmtField", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.subsystem.Shfmt": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell.lint.shfmt" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.subsystem", + "name": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [ + "construct_scope_shfmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2FieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "Shunit2FieldSet(address: 'Address', sources: pants.backend.shell.target_types.Shunit2TestSourceField, timeout: pants.backend.shell.target_types.Shunit2TestTimeoutField, shell: pants.backend.shell.target_types.Shunit2ShellField, runtime_package_dependencies: pants.core.goals.test.RuntimePackageDependenciesField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2FieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2Runner": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2Runner", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2RunnerRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "Shunit2RunnerRequest(address: pants.build_graph.address.Address, test_file_content: pants.engine.fs.FileContent, shell_field: pants.backend.shell.target_types.Shunit2ShellField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2RunnerRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2TestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2TestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "TestSetup(process: pants.engine.process.Process)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "TestSetupRequest(field_set: pants.backend.shell.shunit2_test_runner.Shunit2FieldSet)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.subsystems.shell_setup.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "EnvironmentAware", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_env_aware_scope_shell_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_setup.ShellSetup": { + "consumed_by_rules": [ + "construct_env_aware_scope_shell_setup", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "ShellSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shell_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_test_subsys.ShellTestSubsystem": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_test_subsys", + "name": "ShellTestSubsystem", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shell_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shunit2.Shunit2": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shunit2", + "name": "Shunit2", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shunit2" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.target_types.ShellGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.target_types", + "name": "ShellGeneratorSettingsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.GenerateFilesFromShellCommandRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "GenerateFilesFromShellCommandRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.RunShellCommand": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "RunShellCommand", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.ShellCommandProcessFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "ShellCommandProcessFromTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "ShellCommandProcessFromTargetRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.backend.terraform.dependency_inference.InferTerraformModuleDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "InferTerraformModuleDependenciesRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.ParseTerraformModuleSources": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "ParseTerraformModuleSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParseTerraformModuleSources", + "provider": "pants.backend.terraform.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ] + }, + "pants.backend.terraform.dependency_inference.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParserSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2Parser": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_hcl2_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2ParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2ParserLockfileSentinel", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformCheckRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformCheckRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformValidateSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_validate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.tailor.PutativeTerraformTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "PutativeTerraformTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.goals.tailor", + "name": "PutativeTerraformTargetsRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TfFmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TffmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TffmtRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.tool.TerraformProcess": { + "consumed_by_rules": [ + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "A request to invoke Terraform.", + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformProcess", + "provider": "pants.backend.terraform.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformTool": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformTool", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_download_terraform" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.preamble.rules.PreambleRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.rules", + "name": "PreambleRequest", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.preamble.subsystem.PreambleSubsystem": { + "consumed_by_rules": [ + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.subsystem", + "name": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": [ + "construct_scope_preamble" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.tools.yamllint.rules" + ], + "dependents": [ + "pants.backend.experimental.tools.yamllint" + ], + "documentation": "YamllintConfigFiles(snapshot: 'Snapshot', source_dir_to_config_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.tools.yamllint.rules.partition_inputs" + ] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.tools.yamllint" + ], + "documentation": "YamllintConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFilesRequest", + "provider": "pants.backend.tools.yamllint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.tools.yamllint.rules.partition_inputs" + ] + }, + "pants.backend.tools.yamllint.rules.YamllintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintRequest", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [], + "union_members": [], + "union_type": "LintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.subsystem.Yamllint": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.backend.tools.yamllint.subsystem.setup_yamllint_lockfile", + "pants.backend.tools.yamllint.subsystem.yamllint_export" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.tools.yamllint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.subsystem", + "name": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [ + "construct_scope_yamllint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.subsystem.YamllintExportSentinel": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.subsystem.yamllint_export" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.tools.yamllint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.subsystem", + "name": "YamllintExportSentinel", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.subsystem.YamllintLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.subsystem.setup_yamllint_lockfile" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.tools.yamllint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.subsystem", + "name": "YamllintLockfileSentinel", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.base.specs.RawSpecs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Convert the specs into matching targets and files.\n\nUnlike `Specs`, this does not consider include vs. ignore specs. It simply matches all relevant\ntargets/files.\n\nWhen you want to operate on what the user specified, use `Specs`. Otherwise, you can use\neither `Specs` or `RawSpecs` in rules, e.g. to find what targets exist in a directory.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.base.specs.RawSpecsWithoutFileOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The subset of `RawSpecs` that do not use the `Owners` rule to match targets.\n\nThis exists to work around a cycle in the rule graph. Usually, consumers should use the simpler\n`Get(Addresses, RawSpecs)`, which will result in this rule being used.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecsWithoutFileOwners", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners" + ] + }, + "pants.base.specs.Specs": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "The specs provided by the user for what to run on.\n\nThe `ignores` will filter out all relevant `includes`.\n\nIf your rule does not need to consider includes vs. ignores, e.g. to find all targets in a\ndirectory, you can directly use `RawSpecs`.", + "is_union": false, + "module": "pants.base.specs", + "name": "Specs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.bsp.context.BSPContext": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependencies": [ + "pants.engine.internals.session" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "is_union": false, + "module": "pants.bsp.context", + "name": "BSPContext", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.rules.bsp_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.goal.BSPGoal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.goal", + "name": "BSPGoal", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_experimental_bsp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.protocol.BSPHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "Union type for rules to register handlers for BSP methods.", + "is_union": true, + "module": "pants.bsp.protocol", + "name": "BSPHandlerMapping", + "provider": "pants.bsp.protocol", + "returned_by_rules": [], + "union_members": [ + "BuildTargetSourcesHandlerMapping", + "CompileRequestHandlerMapping", + "DependencyModulesHandlerMapping", + "DependencySourcesHandlerMapping", + "InitializeBuildHandlerMapping", + "JavacOptionsHandlerMapping", + "ResourcesRequestHandlerMapping", + "ScalaMainClassesHandlerMapping", + "ScalaTestClassesHandlerMapping", + "ScalacOptionsHandlerMapping", + "WorkspaceBuildTargetsHandlerMapping" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.base.BuildTargetIdentifier": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A unique identifier for a target, can use any URI-compatible encoding as long as it is unique\nwithin the workspace.\n\nClients should not infer metadata out of the URI structure such as the path or query parameters,\nuse BuildTarget instead.", + "is_union": false, + "module": "pants.bsp.spec.base", + "name": "BuildTargetIdentifier", + "provider": "pants.bsp.spec.base", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.spec.compile.CompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.compile", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "is_union": false, + "module": "pants.bsp.spec.compile", + "name": "CompileResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.lifecycle.InitializeBuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.spec.lifecycle", + "pants.engine.unions" + ], + "dependents": [], + "documentation": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "is_union": false, + "module": "pants.bsp.spec.lifecycle", + "name": "InitializeBuildResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.lifecycle.bsp_build_initialize" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.resources.ResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.resources", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "ResourcesResult(items: 'tuple[ResourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.resources", + "name": "ResourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencyModulesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencySourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "dependents": [], + "documentation": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencySourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.SourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "dependents": [], + "documentation": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "SourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.WorkspaceBuildTargetsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "WorkspaceBuildTargetsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.compile.CompileOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "CompileOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal', origin_id: 'str | None' = None, arguments: 'tuple[str, ...] | None' = ())", + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ] + }, + "pants.bsp.util_rules.compile.CompileRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.BSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Union exposed by language backends to inform BSP core rules of capabilities to advertise to\nclients.", + "is_union": true, + "module": "pants.bsp.util_rules.lifecycle", + "name": "BSPLanguageSupport", + "provider": "pants.bsp.util_rules.lifecycle", + "returned_by_rules": [], + "union_members": [ + "JavaBSPLanguageSupport", + "ScalaBSPLanguageSupport" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.InitializeBuildHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.lifecycle", + "name": "InitializeBuildHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.resources.ResourcesForOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ResourcesForOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesForOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.resources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ] + }, + "pants.bsp.util_rules.resources.ResourcesRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetInternal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "dependencies": [ + "pants.bsp.spec.base" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BSPBuildTargetInternal(name: 'str', specs: 'RawSpecs', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetInternal", + "provider": "pants.bsp.util_rules.targets, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetSourcesInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Source files and roots for a BSP build target.\n\nIt is a separate class so that it is computed lazily only when called for by an RPC call.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetSourcesInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargets": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BSPBuildTargets(targets_mapping: 'FrozenDict[str, BSPBuildTargetInternal]')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide metadata for BSP build targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPBuildTargetsMetadataRequest", + "ScalaBSPBuildTargetsMetadataRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Response type for a BSPBuildTargetsMetadataRequest.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to compile targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPCompileRequest", + "ScalaBSPCompileRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.bsp.util_rules.compile", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Result of compilation of a target capable of target compilation.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide dependency modules.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "ScalaBSPDependencyModulesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BSPDependencyModulesResult(modules: 'tuple[DependencyModule, ...]', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide resources for targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPResourcesRequest", + "ScalaBSPResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.bsp.util_rules.resources", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Resources for a target.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BuildTargetSourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BuildTargetSourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencyModulesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencyModulesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencySourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencySourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GenerateOneBSPBuildTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.base.build_root", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "GenerateOneBSPBuildTargetResult(build_target: 'BuildTarget', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "MaterializeBuildTargetSourcesRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.base.build_root", + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.core" + ], + "documentation": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ResolveOneDependencyModuleRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.WorkspaceBuildTargetsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "WorkspaceBuildTargetsHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets._ParseOneBSPMappingRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_ParseOneBSPMappingRequest(name: 'str', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "_ParseOneBSPMappingRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ] + }, + "pants.build_graph.address.AddressInput": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A string that has been parsed and normalized using the Address syntax.\n\nAn AddressInput must be resolved into an Address using the engine (which involves inspecting\ndisk to determine the types of its path component).", + "is_union": false, + "module": "pants.build_graph.address", + "name": "AddressInput", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.build_graph.address.BuildFileAddressRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to find the BUILD file path for an address.", + "is_union": false, + "module": "pants.build_graph.address", + "name": "BuildFileAddressRequest", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.filedeps.file_deps", + "pants.engine.internals.graph.find_owners" + ] + }, + "pants.core.goals.check.Check": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "Check", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.check.check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.check.CheckRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "A union for targets that should be checked.\n\nSubclass and install a member of this type to provide a checker.", + "is_union": true, + "module": "pants.core.goals.check", + "name": "CheckRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCheckRequest", + "JavacCheckRequest", + "KotlincCheckRequest", + "MyPyRequest", + "ScalacCheckRequest", + "TerraformCheckRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.core.goals.check.CheckResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResults", + "provider": "pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.terraform.goals.check.terraform_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.check.check" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.Deploy": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": "Deploy(exit_code: int)", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "Deploy", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.deploy.run_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.DeployFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "The FieldSet type for the `deploy` goal.\n\nUnion members may list any fields required to fulfill the instantiation of the `DeployProcess`\nresult of the deploy rule.", + "is_union": true, + "module": "pants.core.goals.deploy", + "name": "DeployFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployHelmDeploymentFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.deploy.DeployProcess": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A process that when executed will have the side effect of deploying a target.\n\nTo provide with the ability to deploy a given target, create a custom `DeployFieldSet` for\nthat given target and implement a rule that returns `DeployProcess` for that custom field set:\n\nExample:\n\n @dataclass(frozen=True)\n class MyDeploymentFieldSet(DeployFieldSet):\n pass\n\n @rule\n async def my_deployment_process(field_set: MyDeploymentFieldSet) -> DeployProcess:\n # Create the underlying process that executes the deployment\n process = Process(...)\n return DeployProcess(\n name=\"my_deployment\",\n process=InteractiveProcess.from_process(process)\n )\n\n def rules():\n return [\n *collect_rules(),\n UnionRule(DeployFieldSet, MyDeploymentFieldSet)\n ]\n\nUse the `publish_dependencies` field to provide with a list of targets that produce packages\nwhich need to be externally published before the deployment process is executed.", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeployProcess", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.deploy.DeploySubsystem": { + "consumed_by_rules": [ + "pants.core.goals.deploy.run_deploy" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeploySubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_experimental_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy._PublishProcessesForTargetRequest": { + "consumed_by_rules": [ + "pants.core.goals.deploy.publish_process_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_PublishProcessesForTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "_PublishProcessesForTargetRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.export.Export": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.base.build_root", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "Export", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.export.export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.export.ExportRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A union for exportable data provided by a backend.\n\nSubclass and install a member of this type to export data.", + "is_union": true, + "module": "pants.core.goals.export", + "name": "ExportRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ExportVenvsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = (), resolve: 'str | None' = None)", + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.core.goals.export.ExportResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.export.export" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.Batch": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier" + ], + "documentation": "Batch(tool_name: 'str', elements: 'tuple[PartitionElementT, ...]', partition_metadata: 'PartitionMetadataT', snapshot: 'Snapshot')", + "is_union": true, + "module": "pants.core.goals.fix", + "name": "Batch", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.fix.Fix": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "Fix", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fix.fix" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.FixRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fix", + "name": "FixRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "PreambleRequest", + "PyUpgradeRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.FixResult": { + "consumed_by_rules": [ + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "FixResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', tool_name: 'str')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixResult", + "provider": "pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.experimental.go, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.python.lint.autoflake, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.isort, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble, pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix_batch" + ] + }, + "pants.core.goals.fix.FixSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_fix" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix._FixBatchRequest": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix_batch" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request to serially fix all the elements in the given batch.", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.fix._FixBatchResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "dependents": [ + "pants.core" + ], + "documentation": "_FixBatchResult(results: 'tuple[FixResult, ...]')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fix.fix_batch" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.fmt.Fmt": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "Fmt", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fmt", + "name": "FmtRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "PreambleRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "documentation": "A union base for generating ecosystem-specific lockfiles.\n\nEach language ecosystem should set up a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile` and `GenerateJVMLockfile`, and register a union rule. They should\nalso set up a simple rule that goes from that class -> `WrappedGenerateLockfile`.\n\nSubclasses will usually want to add additional properties, such as what requirements to\ninstall and Python interpreter constraints.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GenerateJvmLockfile", + "GeneratePythonLockfile" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.core" + ], + "documentation": "The result of generating a lockfile for a particular resolve.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfileResult", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_generate_lockfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateToolLockfileSentinel": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Tools use this as an entry point to say how to generate their tool lockfile.\n\nEach language ecosystem should set up a union member of `GenerateLockfile`, like\n`GeneratePythonLockfile`, as explained in that class's docstring.\n\nEach language ecosystem should also subclass `GenerateToolLockfileSentinel`, e.g.\n`GeneratePythonToolLockfileSentinel`. The subclass does not need to do anything - it is only used to know which language ecosystems tools correspond to.\n\nThen, each tool should subclass their language ecosystem's subclass of `GenerateToolLockfileSentinel` and set up a rule that goes from the\nsubclass -> the language's lockfile request, e.g. BlackLockfileSentinel ->\nGeneratePythonLockfile. Register `UnionRule(GenerateToolLockfileSentinel, MySubclass)`.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateToolLockfileSentinel", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaLockfileSentinel", + "AutoflakeLockfileSentinel", + "BanditLockfileSentinel", + "BlackLockfileSentinel", + "CoveragePyLockfileSentinel", + "DebugPyLockfileSentinel", + "DocformatterLockfileSentinel", + "DockerfileParserLockfileSentinel", + "Flake8LockfileSentinel", + "GoogleJavaFormatToolLockfileSentinel", + "GrpcJavaToolLockfileSentinel", + "HelmKubeParserLockfileSentinel", + "HelmPostRendererLockfileSentinel", + "IPythonLockfileSentinel", + "IsortLockfileSentinel", + "JarJarGeneratorLockfileSentinel", + "JarToolGenerateLockfileSentinel", + "JavaParserToolLockfileSentinel", + "JunitToolLockfileSentinel", + "KotlinParserToolLockfileSentinel", + "KtlintToolLockfileSentinel", + "LambdexLockfileSentinel", + "MyPyExtraTypeStubsLockfileSentinel", + "MyPyLockfileSentinel", + "MypyProtobufLockfileSentinel", + "PyUpgradeLockfileSentinel", + "PydocstyleLockfileSentinel", + "PylintLockfileSentinel", + "PyoxidizerLockfileSentinel", + "PytestLockfileSentinel", + "RuffLockfileSentinel", + "ScalaParserToolLockfileSentinel", + "ScalafmtToolLockfileSentinel", + "ScalapbcToolLockfileSentinel", + "ScalatestToolLockfileSentinel", + "SetuptoolsLockfileSentinel", + "SetuptoolsSCMLockfileSentinel", + "StripJarToolLockfileSentinel", + "TerraformHcl2ParserLockfileSentinel", + "TwineLockfileSentinel", + "YamllintLockfileSentinel", + "YapfLockfileSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNames", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNamesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "documentation": "A hook for a language ecosystem to declare which resolves it has defined.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> KnownUserResolveNames, usually by simply reading the\n`resolves` option from the relevant subsystem.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "KnownJVMUserResolveNamesRequest", + "KnownPythonUserResolveNamesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.RequestedUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.java" + ], + "documentation": "The user resolves requested for a particular language ecosystem.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> UserGenerateLockfiles.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "RequestedUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RequestedJVMUserResolveNames", + "RequestedPythonUserResolveNames" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.UserGenerateLockfiles": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "UserGenerateLockfiles", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.WrappedGenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "dependents": [ + "pants.core" + ], + "documentation": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "WrappedGenerateLockfile", + "provider": "pants.backend.docker, pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.lint.Batch": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.run_pylint" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "Batch", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.lint.Lint": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "Lint", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.lint.lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": "Base class for plugin types wanting to be run as part of `lint`.\n\nPlugins should define a new type which subclasses either `LintTargetsRequest` (to lint targets)\nor `LintFilesRequest` (to lint arbitrary files), and set the appropriate class variables.\nE.g.\n class DryCleaningRequest(LintTargetsRequest):\n name = DryCleaningSubsystem.options_scope\n field_set_type = DryCleaningFieldSet\n\nThen, define 2 `@rule`s:\n 1. A rule which takes an instance of your request type's `PartitionRequest` class property,\n and returns a `Partitions` instance.\n E.g.\n @rule\n async def partition(\n request: DryCleaningRequest.PartitionRequest[DryCleaningFieldSet]\n # or `request: DryCleaningRequest.PartitionRequest` if file linter\n subsystem: DryCleaningSubsystem,\n ) -> Partitions[DryCleaningFieldSet, Any]:\n if subsystem.skip:\n return Partitions()\n\n # One possible implementation\n return Partitions.single_partition(request.field_sets)\n\n 2. A rule which takes an instance of your request type's `Batch` class property, and\n returns a `LintResult instance.\n E.g.\n @rule\n async def dry_clean(\n request: DryCleaningRequest.Batch,\n ) -> LintResult:\n ...\n\nLastly, register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules()\n ]", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "LintRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BanditRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BufLintRequest", + "BuildifierRequest", + "DocformatterRequest", + "Flake8Request", + "GofmtRequest", + "GoogleJavaFormatRequest", + "HadolintRequest", + "HelmLintRequest", + "IsortRequest", + "KtlintRequest", + "PreambleRequest", + "PyUpgradeRequest", + "PydocstyleRequest", + "PylintRequest", + "RegexLintRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "RuffLintRequest", + "ScalafmtRequest", + "ShellcheckRequest", + "ShfmtRequest", + "SpectralRequest", + "TffmtRequest", + "YamllintRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', linter_name: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), _render_message: 'bool' = True)", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.helm, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.shell.lint.shellcheck, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.lint.LintSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.lint.lint" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.PartitionRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.autoflake" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "PartitionRequest", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.package.AllPackageableTargets": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "AllPackageableTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.find_all_packageable_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.BuiltPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "is_union": false, + "module": "pants.core.goals.package", + "name": "BuiltPackage", + "provider": "pants.backend.awslambda.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.google_cloud_function.python, pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.package.environment_aware_package", + "pants.core.target_types.package_archive_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.core.goals.package.EnvironmentAwarePackageRequest": { + "consumed_by_rules": [ + "pants.core.goals.package.environment_aware_package" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request class to request a `BuiltPackage` in an environment-aware fashion.", + "is_union": false, + "module": "pants.core.goals.package", + "name": "EnvironmentAwarePackageRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.package.Package": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "Package", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.package_asset" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.PackageFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "documentation": "The fields necessary to build an asset from a target.", + "is_union": true, + "module": "pants.core.goals.package", + "name": "PackageFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ArchiveFieldSet", + "DeployJarFieldSet", + "DockerPackageFieldSet", + "GoBinaryFieldSet", + "HelmPackageFieldSet", + "PackageWarFileFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonAwsLambdaFieldSet", + "PythonDistributionFieldSet", + "PythonGoogleCloudFunctionFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package" + ] + }, + "pants.core.goals.package.PackageSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "PackageSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.Publish": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "Publish", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "FieldSet for PublishRequest.\n\nUnion members may list any fields required to fulfill the instantiation of the\n`PublishProcesses` result of the publish rule.", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "HelmPublishFieldSet", + "PublishDockerImageFieldSet", + "PublishPythonPackageFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishProcesses": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcesses", + "provider": "pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.core", + "returned_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.python.goals.publish.twine_upload", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.package_for_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishProcessesRequest": { + "consumed_by_rules": [ + "pants.core.goals.publish.package_for_publish" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Internal request taking all field sets for a target and turning it into a `PublishProcesses`\ncollection (via registered publish plugins).", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcessesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "Implement a union member subclass of this union class along with a PublishFieldSet subclass\nthat appoints that member subclass in order to receive publish requests for targets compatible\nwith the field set.\n\nThe `packages` hold all artifacts produced for a given target to be published.\n\nExample:\n\n PublishToMyRepoRequest(PublishRequest):\n pass\n\n PublishToMyRepoFieldSet(PublishFieldSet):\n publish_request_type = PublishToMyRepoRequest\n\n # Standard FieldSet semantics from here on:\n required_fields = (MyRepositories,)\n ...", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PublishDockerImageRequest", + "PublishHelmChartRequest", + "PublishPythonPackageRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.publish.package_for_publish" + ] + }, + "pants.core.goals.publish.PublishSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.Repl": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "Repl", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.ReplImplementation": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "A REPL implementation for a specific language or runtime.\n\nProxies from the top-level `repl` goal to an actual implementation.", + "is_union": true, + "module": "pants.core.goals.repl", + "name": "ReplImplementation", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "IPythonRepl", + "PythonRepl", + "ScalaRepl" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplRequest", + "provider": "pants.backend.experimental.scala, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.Run": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "Run", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.run.run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.RunDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Like RunRequest, but launches the process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunDebugAdapterRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary from a target to run a program/script.", + "is_union": true, + "module": "pants.core.goals.run", + "name": "RunFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployJarFieldSet", + "DockerRunFieldSet", + "GoBinaryFieldSet", + "JavaFieldSet", + "JvmArtifactFieldSet", + "KotlinFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonRequirementFieldSet", + "PythonSourceFieldSet", + "RunShellCommand", + "ScalaFieldSet", + "SystemBinaryFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run.run", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunInSandboxRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell" + ], + "documentation": "A run request that launches the process in the sandbox for use as part of a build rule.\n\nThe arguments and environment should only use values relative to the build root (or prefixed\nwith `{chroot}`), or refer to binaries that were fetched with `BinaryPathRequest`.\n\nPresently, implementors can opt to use the existing as not guaranteeing hermeticity, which will\ninternally mark the rule as uncacheable. In such a case, non-safe APIs can be used, however,\nthis behavior can result in poorer performance, and only exists as a stop-gap while\nimplementors work to make sure their `RunRequest`-generating rules can be used in a hermetic\ncontext, or writing new custom rules. (See the Plugin Upgrade Guide for details).", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunInSandboxRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.package.deploy_jar", + "pants.jvm.target_types" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.core" + ], + "documentation": "RunRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run.run", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ] + }, + "pants.core.goals.run.RunSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.run.run" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.AllOwnedSources": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "All files in the project already owned by targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "AllOwnedSources", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.determine_all_owned_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.DisjointSourcePutativeTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Putative target whose sources don't overlap with those of any existing targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "DisjointSourcePutativeTarget", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditBuildFilesRequest": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "EditBuildFilesRequest(putative_targets: 'PutativeTargets')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditBuildFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditedBuildFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": [ + "pants.core" + ], + "documentation": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditedBuildFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTarget": { + "consumed_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A potential target to add, detected by various heuristics.\n\nThis class uses the term \"target\" in the loose sense. It can also represent an invocation of a\ntarget-generating macro.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTarget", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargets": { + "consumed_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": [ + "builtins", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "PutativeTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": true, + "module": "pants.core.goals.tailor", + "name": "PutativeTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PutativeDockerTargetsRequest", + "PutativeGoTargetsRequest", + "PutativeHelmChartTargetsRequest", + "PutativeJavaTargetsRequest", + "PutativeKotlinTargetsRequest", + "PutativeOpenApiTargetsRequest", + "PutativeProtobufTargetsRequest", + "PutativePythonTargetsRequest", + "PutativeScalaTargetsRequest", + "PutativeShellTargetsRequest", + "PutativeTerraformTargetsRequest", + "PutativeThriftTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.TailorGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.TailorSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.tailor" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.UniquelyNamedPutativeTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Putative targets that have no name conflicts with existing targets (or each other).", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "UniquelyNamedPutativeTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.test.Batch": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "Batch", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "Batch", + "Batch", + "Batch", + "Batch", + "Batch", + "Batch", + "Batch" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.BuildPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "BuildPackageDependenciesRequest(field: 'RuntimePackageDependenciesField')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuildPackageDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.BuiltPackageDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuiltPackageDependencies", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.CoverageDataCollection": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.python" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "CoverageDataCollection", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCoverageDataCollection", + "PytestCoverageDataCollection" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.CoverageReports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": [ + "pants.core" + ], + "documentation": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "CoverageReports", + "provider": "pants.backend.experimental.go, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.PartitionRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.partition_python_tests" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "PartitionRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.test.Test": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.console", + "pants.engine.desktop", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.session", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "Test", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.run_tests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Like TestDebugRequest, but launches the test process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestDebugRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "TestDebugRequest(process: 'InteractiveProcess')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestExtraEnv": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "TestExtraEnv(env: 'EnvironmentVars')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestExtraEnv", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.get_filtered_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary to run tests on a target.", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestFieldSet", + "HelmUnitTestFieldSet", + "JunitTestFieldSet", + "PythonTestFieldSet", + "ScalatestTestFieldSet", + "Shunit2FieldSet", + "TestShellCommandFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "Base class for plugin types wanting to be run as part of `test`.\n\nPlugins should define a new type which subclasses this type, and set the\nappropriate class variables.\nE.g.\n class DryCleaningRequest(TestRequest):\n tool_subsystem = DryCleaningSubsystem\n field_set_type = DryCleaningFieldSet\n\nThen register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules(),\n ]", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestRequest", + "HelmUnitTestRequest", + "JunitTestRequest", + "PyTestRequest", + "ScalatestTestRequest", + "ShellTestRequest", + "Shunit2TestRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', addresses: 'tuple[Address, ...]', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', partition_description: 'str | None' = None, coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None, log_extra_output: 'bool' = False)", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestResult", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.jvm.test.junit.run_junit_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_test", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.test.run_tests", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithBlackRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithBlackRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithYapfRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithYapfRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedFieldsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedFieldsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedTargetsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RewrittenBuildFile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.core" + ], + "documentation": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.RewrittenBuildFileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "RewrittenBuildFileRequest(path: 'str', lines: 'tuple[str, ...]', colors_enabled: 'bool')", + "is_union": true, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFileRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "FormatWithBlackRequest", + "FormatWithYapfRequest", + "RenameDeprecatedFieldsRequest", + "RenameDeprecatedTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.debug_adapter.DebugAdapterSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.debug_adapter", + "name": "DebugAdapterSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_debug_adapter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrap": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.system_binaries.find_python" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "PythonBootstrap(interpreter_names: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrap", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrapSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_python_bootstrap", + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrapSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap._ExpandInterpreterSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_ExpandInterpreterSearchPathsRequest(interpreter_search_paths: 'Sequence[str]', env_tgt: 'EnvironmentTarget')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_ExpandInterpreterSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.subsystems.python_bootstrap._PyEnvPathsRequest": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap._get_pyenv_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_PyEnvPathsRequest(env_tgt: 'EnvironmentTarget', pyenv_local: 'bool' = False)", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_PyEnvPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.subsystems.python_bootstrap._SearchPaths": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": "_SearchPaths(paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_SearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.subsystems.python_bootstrap._get_pyenv_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.target_types.AllAssetTargets": { + "consumed_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.find_all_assets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ] + }, + "pants.core.target_types.AllAssetTargetsByPath": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsByPath", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ] + }, + "pants.core.target_types.AllAssetTargetsRequest": { + "consumed_by_rules": [ + "pants.core.target_types.find_all_assets" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "AllAssetTargetsRequest()", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ] + }, + "pants.core.target_types.ArchiveFieldSet": { + "consumed_by_rules": [ + "pants.core.target_types.package_archive_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ArchiveFieldSet(address: 'Address', packages: 'ArchivePackagesField', files: 'ArchiveFilesField', format_field: 'ArchiveFormatField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.core.target_types", + "name": "ArchiveFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateFileSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_file_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateFileSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateResourceSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_resource_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateResourceSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.RelocateFilesViaCodegenRequest": { + "consumed_by_rules": [ + "pants.core.target_types.relocate_files" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "RelocateFilesViaCodegenRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries.GunzipBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GunzipBinary(python_binary: 'PythonBuildStandaloneBinary')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "GunzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.adhoc_binaries.GunzipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GunzipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "GunzipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.adhoc_binaries.PythonBuildStandaloneBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "A Python interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nThis interpreter is provided by Python Build Standalone https://gregoryszorc.com/docs/python-build-standalone/main/,\nwhich has a few caveats. Namely it doesn't play nicely with third-party sdists. Meaning Pants'\nscripts being run by Python Build Standalone should avoid third-party sdists.", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries._DownloadPythonBuildStandaloneBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_DownloadPythonBuildStandaloneBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_binaries._PythonBuildStandaloneBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.env_vars", + "pants.engine.platform" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "AdhocProcessRequest(description: 'str', address: 'Address', working_directory: 'str', root_output_directory: 'str', argv: 'tuple[str, ...]', timeout: 'int | None', input_digest: 'Digest', immutable_input_digests: 'FrozenDict[str, Digest] | None', append_only_caches: 'FrozenDict[str, str] | None', output_files: 'tuple[str, ...]', output_directories: 'tuple[str, ...]', fetch_env_vars: 'tuple[str, ...]', supplied_env_var_values: 'FrozenDict[str, str] | None', log_on_process_errors: 'FrozenDict[int, str] | None', log_output: 'bool', capture_stdout_file: 'str | None', capture_stderr_file: 'str | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell" + ], + "documentation": "AdhocProcessResult(process_result: 'ProcessResult', adjusted_digest: 'Digest')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessResult", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.core.util_rules.adhoc_process_support.ExtraSandboxContents": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell" + ], + "documentation": "ExtraSandboxContents(digest: 'Digest', path: 'str | None', immutable_input_digests: 'Mapping[str, Digest]', append_only_caches: 'Mapping[str, str]', extra_env: 'Mapping[str, str]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ExtraSandboxContents", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.MergeExtraSandboxContents": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "MergeExtraSandboxContents(additions: 'tuple[ExtraSandboxContents, ...]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "MergeExtraSandboxContents", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolveExecutionDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "ResolveExecutionDependenciesRequest(address: 'Address', execution_dependencies: 'tuple[str, ...] | None', dependencies: 'tuple[str, ...] | None', runnable_dependencies: 'tuple[str, ...] | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolveExecutionDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolvedExecutionDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell" + ], + "documentation": "ResolvedExecutionDependencies(digest: 'Digest', runnable_dependencies: 'RunnableDependencies | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.archive.CreateArchive": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.create_archive" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A request to create an archive.\n\nAll files in the input snapshot will be included in the resulting archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "CreateArchive", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.package_archive_target" + ] + }, + "pants.core.util_rules.archive.ExtractedArchive": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.core" + ], + "documentation": "The result of extracting an archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "ExtractedArchive", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.core.util_rules.archive.MaybeExtractArchiveRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A request to extract a single archive file (otherwise returns the input digest).\n\n:param digest: The digest of the archive to maybe extract. If the archive contains a single file\n which matches a known suffix, the `ExtractedArchive` will contain the extracted digest.\n Otherwise the `ExtractedArchive` will contain this digest.\n:param use_suffix: If provided, extracts the single file archive as if it had this suffix.\n Useful in situations where the file is archived then renamed.\n (E.g. A Python `.whl` is a renamed `.zip`, so the client should provide `\".zip\"`)", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "MaybeExtractArchiveRequest", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.asdf.AsdfToolPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "AsdfToolPathsRequest(env_tgt: 'EnvironmentTarget', tool_name: 'str', tool_description: 'str', resolve_standard: 'bool', resolve_local: 'bool', paths_option_name: 'str', bin_relpath: 'str' = 'bin')", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.asdf.AsdfToolPathsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.base.build_root", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.core" + ], + "documentation": "AsdfToolPathsResult(tool_name: 'str', standard_tool_paths: 'tuple[str, ...]' = (), local_tool_paths: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.config_files.ConfigFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Config files used by a tool run by Pants.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.config_files.ConfigFilesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Resolve the specified config files if given, else look for candidate config files if\ndiscovery is enabled.\n\nFiles in `check_existence` only need to exist, whereas files in `check_content` both must exist\nand contain the bytes snippet in the file.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.distdir.DistDir": { + "consumed_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.lint.lint", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests" + ], + "dependencies": [ + "pants.base.build_root" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "The directory to which we write distributable files.", + "is_union": false, + "module": "pants.core.util_rules.distdir", + "name": "DistDir", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.distdir.get_distdir" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.environments.EnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "EnvironmentNameRequest(raw_value: 'str', description_of_origin: 'str')", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "EnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run" + ] + }, + "pants.core.util_rules.environments.OptionField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "OptionField", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.core.util_rules.environments.SingleEnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Asserts that all of the given environment strings resolve to the same EnvironmentName.", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "SingleEnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.util_rules.external_tool.DownloadedExternalTool": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "DownloadedExternalTool", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.setup_npx_process", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.external_tool.ExternalToolRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ExternalToolRequest(download_file_request: 'DownloadFile', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "ExternalToolRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.setup_npx_process", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.partitions.Partitions": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.kotlin", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A collection of (, ) pairs.\n\nWhen implementing a plugin, one of your rules will return this type, taking in a\n`PartitionRequest` specific to your plugin.\n\nThe return likely will fit into one of:\n - Returning empty partitions: E.g. if your tool is being skipped.\n - Returning one partition. The partition may contain all of the inputs\n (as will likely be the case for target-based plugins) or a subset (which will likely be the\n case for targetless plugins).\n - Returning >1 partition. This might be the case if you can't run\n the tool on all the inputs at once. E.g. having to run a Python tool on XYZ with Py3,\n and files ABC with Py2.", + "is_union": false, + "module": "pants.core.util_rules.partitions", + "name": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations, pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python, pants.backend.python.lint.autoflake, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell, pants.backend.shell.lint.shellcheck, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble", + "returned_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.project_info.regex_lint.partition_inputs", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.util_rules.source_files.SourceFiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A merged snapshot of the `sources` fields of multiple targets.", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.source_files.determine_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.source_files.SourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.core.util_rules.source_files.determine_source_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "SourceFilesRequest(sources_fields: Iterable[pants.engine.target.SourcesField], *, for_sources_types: Iterable[Type[pants.engine.target.SourcesField]] = (,), enable_codegen: bool = False)", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "StrippedFileName(value: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileName", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileNameRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "StrippedFileNameRequest(file_path: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFileNames": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [], + "documentation": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFileNames", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironment": { + "consumed_by_rules": [ + "construct_env_aware_scope_subprocess_environment" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironmentVars": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironmentVars", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.BashBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The `bash` binary.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.get_bash" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.system_binaries.get_bash" + ] + }, + "pants.core.util_rules.system_binaries.BashBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_bash" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "BashBinaryRequest(search_path: 'SearchPath' = SearchPath(['/usr/bin', '/bin', '/usr/local/bin']))", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.system_binaries.get_bash" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.cgo_binaries", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "BinaryPath(path: 'str', fingerprint: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPathRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request to find a binary of a given name.\n\nIf `check_file_entries` is `True` a BinaryPathRequest will consider any entries in the\n`search_path` that are file paths in addition to traditional directory paths.\n\nIf a `test` is specified all binaries that are found will be executed with the test args and\nonly those binaries whose test executions exit with return code 0 will be retained.\nAdditionally, if test execution includes stdout content, that will be used to fingerprint the\nbinary path so that upgrades and downgrades can be detected. A reasonable test for many programs\nmight be `BinaryPathTest(args=[\"--version\"])` since it will both ensure the program runs and\nalso produce stdout text that changes upon upgrade or downgrade of the binary at the discovered\npath.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPathRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPaths": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShims": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.shell" + ], + "documentation": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `immutable_input_digests`\nprovided to the `Process`, and `path_component` included in its `PATH` environment variable.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShims", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShimsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request to create shims for one or more system binaries.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShimsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.CatBinary": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.util_rules.system_binaries.find_cat_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CatBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_cat_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ChmodBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ChmodBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.CpBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CpBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_cp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.DiffBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format" + ] + }, + "pants.core.util_rules.system_binaries.DiffBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "DiffBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format" + ] + }, + "pants.core.util_rules.system_binaries.GitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.GunzipBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GunzipBinary(python: 'PythonBinary')", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GunzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip", + "pants.core.util_rules.system_binaries.find_gunzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.LnBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "LnBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_ln" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MaybeGitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "pants.vcs.git.get_git_worktree" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MaybeGitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git", + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MkdirBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MkdirBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MktempBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MktempBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mktemp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MvBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MvBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.OpenBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "OpenBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_open" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.PythonBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_gunzip" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A Python3 interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nPython is usable for `@rule` scripting independently of `pants.backend.python`, but currently\nthirdparty dependencies are not supported, because PEX lives in that backend.\n\nTODO: Consider extracting PEX out into the core in order to support thirdparty dependencies.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "PythonBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ReadlinkBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ] + }, + "pants.core.util_rules.system_binaries.TarBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "dependencies": [ + "pants.engine.platform" + ], + "dependents": [ + "pants.core" + ], + "documentation": "TarBinary(path: 'str', fingerprint: 'str', platform: 'Platform')", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TarBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TouchBinary": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TouchBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_touch" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.UnzipBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.run.create_run_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_unzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.UnzipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "UnzipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.ZipBinary": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.core.util_rules.system_binaries.find_zip_wrapper", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.find_zip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive" + ] + }, + "pants.core.util_rules.system_binaries.ZipBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ZipBinaryRequest()", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive" + ] + }, + "pants.core.util_rules.wrap_source.GenerateWrapSourceSourcesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.wrap_source", + "name": "GenerateWrapSourceSourcesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.engine.addresses.Addresses": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.filter_targets.filter_targets", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.engine.internals.graph.coarsened_targets_request", + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.build_graph.address", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.addresses", + "name": "Addresses", + "provider": "pants.backend.experimental.go, pants.engine.addresses", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.addresses.UnparsedAddressInputs": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.core" + ], + "documentation": "Raw addresses that have not been parsed yet.\n\nYou can convert these into fully normalized `Addresses` and `Targets` like this:\n\n await Get(Addresses, UnparsedAddressInputs([\"//:tgt1\", \"//:tgt2\"], owning_address=None)\n await Get(Targets, UnparsedAddressInputs([...], owning_address=Address(\"original\"))\n\nThis is intended for contexts where the user specifies addresses outside of the `dependencies`\nfield, such as through an option or a special field on a target that is not normal\n`dependencies`. You should not use this to resolve the `dependencies` field; use\n`await Get(Addresses, DependenciesRequest)` for that.\n\nIf the addresses are coming from a target's fields, set `owning_address` so that relative\nreferences like `:sibling` work properly.\n\nUnlike the `dependencies` field, this type does not work with `!` and `!!` ignores.\n\nSet `description_of_origin` to a value like \"CLI arguments\" or \"the `dependencies` field\nfrom {tgt.address}\". It is used for better error messages.", + "is_union": false, + "module": "pants.engine.addresses", + "name": "UnparsedAddressInputs", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.digest_complete_platforms", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.google_cloud_function.python.rules.digest_complete_platforms", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ] + }, + "pants.engine.desktop.OpenFilesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "OpenFilesRequest(files: Iterable[pathlib.PurePath], *, error_if_open_not_found: bool = True)", + "is_union": false, + "module": "pants.engine.desktop", + "name": "OpenFilesRequest", + "provider": "pants.engine.desktop", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.env_vars.EnvironmentVarsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Requests a subset of the variables set in the environment.\n\nRequesting only the relevant subset of the environment reduces invalidation caused by unrelated\nchanges.", + "is_union": false, + "module": "pants.engine.env_vars", + "name": "EnvironmentVarsRequest", + "provider": "pants.engine.env_vars", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_env_aware_scope_apache_thrift", + "construct_env_aware_scope_docker", + "construct_env_aware_scope_go_generate", + "construct_env_aware_scope_golang", + "construct_env_aware_scope_jvm", + "construct_env_aware_scope_pex", + "construct_env_aware_scope_python_bootstrap", + "construct_env_aware_scope_python_native_code", + "construct_env_aware_scope_shell_setup", + "construct_env_aware_scope_subprocess_environment", + "construct_env_aware_scope_test", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_binary.find_docker", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.goals.export.export", + "pants.core.goals.test.get_filtered_environment", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.subsystems.python_bootstrap._get_pyenv_paths", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.environment.EnvironmentName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The normalized name for an environment, from `[environments-preview].names`, after applying\nthings like the __local__ matcher.\n\nNote that we have this type, rather than only `EnvironmentTarget`, for a more efficient rule\ngraph. This node impacts the equality of many downstream nodes, so we want its identity to only\nbe a single string, rather than a Target instance.", + "is_union": false, + "module": "pants.engine.environment", + "name": "EnvironmentName", + "provider": "pants.engine.environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish", + "pants.core.goals.test.run_tests", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.fs.CreateDigest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to create a Digest with the input FileContent/FileEntry/SymlinkEntry/Directory\nvalues.\n\nThe engine will create any parent directories necessary, e.g. `FileContent('a/b/c.txt')` will\nresult in `a/`, `a/b`, and `a/b/c.txt` being created. You only need to use `Directory` to\ncreate an empty directory.\n\nThis does _not_ actually materialize the digest to the build root. You must use\n`engine.fs.Workspace` in a `@goal_rule` to save the resulting digest to disk.", + "is_union": false, + "module": "pants.engine.fs", + "name": "CreateDigest", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.setup_py.generate_setup_py", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors" + ] + }, + "pants.engine.fs.DigestSubset": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to get a subset of a digest.\n\nThe digest will be traversed symlink-oblivious to match the provided globs. If you require a\nsymlink-aware subset, you can access the digest's entries `Get(DigestEntries, Digest, digest)`,\nfilter them out, and create a new digest: `Get(Digest, CreateDigest(...))`.\n\nExample:\n\n result = await Get(Digest, DigestSubset(original_digest, PathGlobs([\"subdir1\", \"f.txt\"]))", + "is_union": false, + "module": "pants.engine.fs", + "name": "DigestSubset", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.util_rules.dists.find_build_system", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "pants.engine.fs.DownloadFile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Retrieve the contents of a file via an HTTP GET request or directly for local file:// URLs.\n\nTo compute the `expected_digest`, manually download the file, then run `shasum -a 256` to\ncompute the fingerprint and `wc -c` to compute the expected length of the downloaded file in\nbytes.", + "is_union": false, + "module": "pants.engine.fs", + "name": "DownloadFile", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.engine.fs.PathGlobs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "PathGlobs(globs: 'Iterable[str]', glob_match_error_behavior: 'GlobMatchErrorBehavior' = , conjunction: 'GlobExpansionConjunction' = , description_of_origin: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.fs", + "name": "PathGlobs", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.core.goals.fix.fix_batch", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.util_rules.config_files.find_config_file", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_source_paths", + "pants.engine.internals.graph.resolve_target_parametrizations", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ] + }, + "pants.engine.internals.build_files.AddressFamilyDir": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The directory to find addresses for.\n\nThis does _not_ recurse into subdirectories.", + "is_union": false, + "module": "pants.engine.internals.build_files", + "name": "AddressFamilyDir", + "provider": "pants.engine.internals.build_files", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.peek.get_target_data" + ] + }, + "pants.engine.internals.graph.GenerateFileTargets": { + "consumed_by_rules": [ + "pants.engine.internals.graph.generate_file_targets" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "GenerateFileTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.engine.internals.graph.Owners": { + "consumed_by_rules": [], + "dependencies": [ + "pants.build_graph.address", + "pants.core", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "Owners", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_owners" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.OwnersRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.find_owners" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A request for the owners of a set of file paths.\n\nTODO: This is widely used as an effectively-public API. It should probably move to\n`pants.engine.target`.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "OwnersRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.SubprojectRoots": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "SubprojectRoots", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_subproject_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph.WrappedTargetForBootstrap": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.internals.target_adaptor", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": "Used to avoid a rule graph cycle when evaluating bootstrap targets.\n\nThis does not work with target generation and parametrization. It also ignores any unrecognized\nfields in the target, to accommodate plugin fields which are not yet registered during\nbootstrapping.\n\nThis should only be used by bootstrapping code.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph._DependencyMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_DependencyMapping(mapping: 'FrozenDict[Address, tuple[Address, ...]]', visited: 'FrozenOrderedSet[Target]', roots_as_targets: 'Collection[Target]')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.graph._DependencyMappingRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_DependencyMappingRequest(tt_request: 'TransitiveTargetsRequest', expanded_targets: 'bool')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMappingRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizations": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.plugin_development", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.internals.parametrize", + "pants.engine.internals.target_adaptor", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "All parametrizations and generated targets for a single input Address.\n\nIf a Target has been parametrized, the original Target might _not_ be present, due to no Target\nbeing addressable at the un-parameterized Address.", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizations", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizationsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_TargetParametrizationsRequest(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizationsRequest", + "provider": "pants.engine.internals.parametrize", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.synthetic_targets.SyntheticAddressMaps": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "A collection of `SyntheticAddressMap` for all synthetic target adaptors.", + "is_union": false, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticAddressMaps", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.synthetic_targets.SyntheticTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "Union members of the `SyntheticTargetsRequest` should implement a rule returning an instance\nof a `SyntheticAddressMaps`.", + "is_union": true, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticTargetsRequest", + "provider": "pants.engine.internals.synthetic_targets", + "returned_by_rules": [], + "union_members": [ + "PythonSyntheticLockfileTargetsRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.target_adaptor.TargetAdaptorRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Lookup the TargetAdaptor for an Address.", + "is_union": false, + "module": "pants.engine.internals.target_adaptor", + "name": "TargetAdaptorRequest", + "provider": "pants.engine.internals.target_adaptor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.process.FallibleProcessResult": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "Result of executing a process which might fail.\n\nIf the process has a non-zero exit code, this will not raise an exception, unlike ProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "FallibleProcessResult", + "provider": "pants.backend.experimental.python.lint.ruff, pants.engine.process", + "returned_by_rules": [ + "pants.backend.python.lint.ruff.rules.run_ruff" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.engine.process.InteractiveProcess": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "InteractiveProcess(argv: 'Iterable[str]', *, env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), run_in_workspace: 'bool' = False, forward_signals_to_process: 'bool' = True, restartable: 'bool' = False, append_only_caches: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, keep_sandboxes: 'KeepSandboxes' = ) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "InteractiveProcess", + "provider": "pants.backend.experimental.helm, pants.engine.process", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.export.export", + "pants.core.goals.publish.run_publish", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.process.Process": { + "consumed_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.sdk", + "pants.backend.helm.util_rules.tool", + "pants.backend.javascript.subsystems.nodejs", + "pants.backend.python", + "pants.backend.terraform.dependency_inference", + "pants.backend.terraform.tool", + "pants.engine.env_vars", + "pants.engine.platform", + "pants.jvm.jdk_rules", + "pants.jvm.resolve.coursier_setup", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell" + ], + "documentation": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , remote_cache_speculation_delay_millis: 'int' = 0) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "Process", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.terraform, pants.backend.shell, pants.core, pants.engine.process", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.javascript.subsystems.nodejs.setup_npx_process", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.process.ProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Result of executing a process which should not fail.\n\nIf the process has a non-zero exit code, this will raise an exception, unlike\nFallibleProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessResult", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.engine.process.ProductDescription": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ProductDescription(value: 'str')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProductDescription", + "provider": "pants.backend.experimental.helm, pants.engine.process", + "returned_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactory": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "is_union": false, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactory", + "provider": "pants.core", + "returned_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback", + "pants.goal.stats_aggregator.construct_callback" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A request for a particular WorkunitsCallbackFactory.", + "is_union": true, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactoryRequest", + "provider": "pants.engine.streaming_workunit_handler", + "returned_by_rules": [], + "union_members": [ + "AnonymousTelemetryCallbackFactoryRequest", + "StatsAggregatorCallbackFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.AllTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "pants.backend.docker.target_types.all_docker_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.helm.target_types.all_helm_artifact_targets", + "pants.backend.helm.target_types.all_helm_chart_targets", + "pants.backend.helm.target_types.all_helm_deployment_targets", + "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "pants.backend.shell.dependency_inference.find_all_shell_targets", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.target_types.find_all_assets", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [ + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": "All targets in the project, but with target generators replaced by their generated targets,\nunlike `AllUnexpandedTargets`.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_all_targets_singleton" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.engine.internals.graph.find_all_targets_singleton" + ] + }, + "pants.engine.target.AllTargetsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_all_unexpanded_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Find all targets in the project.\n\nUse with either `AllUnexpandedTargets` or `AllTargets`.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.engine.internals.graph.find_all_targets_singleton", + "pants.engine.internals.graph.find_all_unexpanded_targets_singleton" + ] + }, + "pants.engine.target.AllUnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core" + ], + "documentation": "All targets in the project, including generated targets.\n\nThis should generally be avoided because it is relatively expensive to compute and is frequently\ninvalidated, but it can be necessary for things like dependency inference to build a global\nmapping of imports to targets.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_all_unexpanded_targets_singleton" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.find_all_unexpanded_targets_singleton" + ] + }, + "pants.engine.target.CoarsenedTargets": { + "consumed_by_rules": [ + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "dependencies": [ + "pants.engine.environment" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "The CoarsenedTarget roots of a transitive graph walk for some addresses.\n\nTo collect all reachable CoarsenedTarget members, use `def closure`.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.coarsened_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.jvm.classpath.classpath", + "pants.jvm.run.create_run_request" + ] + }, + "pants.engine.target.CoarsenedTargetsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.coarsened_targets" + ], + "dependencies": [ + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A request to get CoarsenedTargets for input roots.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.coarsened_targets_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ] + }, + "pants.engine.target.DependenciesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "DependenciesRequest(field: 'Dependencies', include_special_cased_deps: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.jvm.package.war.package_war" + ] + }, + "pants.engine.target.DependenciesRuleApplicationRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to return the applicable dependency rule action for each dependency of a target.", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRuleApplicationRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.peek.get_target_data" + ] + }, + "pants.engine.target.ExplicitlyProvidedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.build_graph.address", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The literal addresses from a BUILD file `dependencies` field.\n\nAlmost always, you should use `await Get(Addresses, DependenciesRequest)` instead, which will\nconsider dependency inference and apply ignores. However, this type can be\nuseful particularly within inference rules to see if a user already explicitly\nprovided a dependency.\n\nResolve using `await Get(ExplicitlyProvidedDependencies, DependenciesRequest)`.\n\nNote that the `includes` are not filtered based on the `ignores`: this type preserves exactly\nwhat was in the BUILD file.", + "is_union": false, + "module": "pants.engine.target", + "name": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.FieldDefaultFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.python" + ], + "documentation": "Registers a dynamic default for a Field.\n\nSee `FieldDefaults`.", + "is_union": true, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "JvmResolveFieldDefaultFactoryRequest", + "PythonResolveFieldDefaultFactoryRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.field_defaults" + ] + }, + "pants.engine.target.FieldDefaultFactoryResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A wrapper for a function which computes the default value of a Field.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.field_defaults" + ] + }, + "pants.engine.target.FieldDefaults": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.core" + ], + "documentation": "Generic Field default values. To install a default, see `FieldDefaultFactoryRequest`.\n\nTODO: This is to work around the fact that Field value defaulting cannot have arbitrary\nsubsystem requirements, and so e.g. `JvmResolveField` and `PythonResolveField` have methods\nwhich compute the true value of the field given a subsytem argument. Consumers need to\nbe type aware, and `@rules` cannot have dynamic requirements.\n\nAdditionally, `__defaults__` should mean that computed default Field values should become\nmore rare: i.e. `JvmResolveField` and `PythonResolveField` could potentially move to\nhardcoded default values which users override with `__defaults__` if they'd like to change\nthe default resolve names.\n\nSee https://github.com/pantsbuild/pants/issues/12934 about potentially allowing unions\n(including Field registrations) to have `@rule_helper` methods, which would allow the\ncomputation of an AsyncField to directly require a subsystem. Since\nhttps://github.com/pantsbuild/pants/pull/17947 rules may use any methods as rule helpers without\nspecial decoration so this should now be possible to implement.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaults", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.field_defaults" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldSetsPerTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.shell", + "pants.core" + ], + "documentation": "FieldSetsPerTarget(collection: 'Iterable[Iterable[_FS]]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.FieldSetsPerTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FieldSetsPerTargetRequest(field_set_superclass: 'Type[_FS]', targets: 'Iterable[Target]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.GenerateSourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A request to go from protocol sources -> a particular language.\n\nThis should be subclassed for each distinct codegen implementation. The subclasses must define\nthe class properties `input` and `output`. The subclass must also be registered via\n`UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest)`, for example.\n\nThe rule to actually implement the codegen should take the subclass as input, and it must\nreturn `GeneratedSources`.\n\nThe `exportable` attribute disables the use of this codegen by the `export-codegen` goal when\nset to False.\n\nFor example:\n\n class GenerateFortranFromAvroRequest:\n input = AvroSources\n output = FortranSources\n\n @rule\n def generate_fortran_from_avro(request: GenerateFortranFromAvroRequest) -> GeneratedSources:\n ...\n\n def rules():\n return [\n generate_fortran_from_avro,\n UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateDockerContextFiles", + "GenerateDockerfileRequest", + "GenerateFileSourceRequest", + "GenerateFilesFromAdhocToolRequest", + "GenerateFilesFromShellCommandRequest", + "GenerateGoFromProtobufRequest", + "GenerateJavaFromProtobufRequest", + "GeneratePythonFromProtobufRequest", + "GeneratePythonFromSetuptoolsSCMRequest", + "GeneratePythonFromThriftRequest", + "GenerateResourceSourceRequest", + "GenerateScalaFromProtobufRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "RelocateFilesViaCodegenRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.hydrate_sources" + ] + }, + "pants.engine.target.GenerateTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.plugin_development", + "pants.backend.python" + ], + "documentation": "GenerateTargetsRequest(generator: '_TargetGenerator', template_address: 'Address', template: 'dict[str, Any]', overrides: 'dict[str, dict[Address, dict[str, Any]]]')", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateFileTargets", + "GenerateFromPantsRequirementsRequest", + "GenerateFromPipenvRequirementsRequest", + "GenerateFromPoetryRequirementsRequest", + "GenerateFromPythonRequirementsRequest", + "GenerateTargetsFromGoModRequest", + "GenerateTargetsFromPexBinaries" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.GeneratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.build_graph.address", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GeneratedSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.hydrate_sources" + ] + }, + "pants.engine.target.GeneratedTargets": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.fs", + "pants.engine.internals.target_adaptor", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A mapping of the address of generated targets to the targets themselves.", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedTargets", + "provider": "pants.backend.experimental.go, pants.backend.plugin_development, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "pants.engine.internals.graph.generate_file_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.HydrateSourcesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.hydrate_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "HydrateSourcesRequest(field: 'SourcesField', *, for_sources_types: 'Iterable[type[SourcesField]]' = (,), enable_codegen: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "HydrateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.HydratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The result of hydrating a SourcesField.\n\nThe `sources_type` will indicate which of the `HydrateSourcesRequest.for_sources_type` the\nresult corresponds to, e.g. if the result comes from `FilesSources` vs. `PythonSources`. If this\nvalue is None, then the input `SourcesField` was not one of the expected types; or, when codegen\nwas enabled in the request, there was no valid code generator to generate the requested language\nfrom the original input. This property allows for switching on the result, e.g. handling\nhydrated files() sources differently than hydrated Python sources.", + "is_union": false, + "module": "pants.engine.target", + "name": "HydratedSources", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.hydrate_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.InferDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A request to infer dependencies by analyzing source files.\n\nTo set up a new inference implementation, subclass this class. Set the class property\n`infer_from` to the FieldSet subclass you are able to infer from. This will cause the FieldSet\nclass, and any subclass, to use your inference implementation.\n\nNote that there cannot be more than one implementation for a particular `FieldSet` class.\n\nRegister this subclass with `UnionRule(InferDependenciesRequest, InferFortranDependencies)`, for example.\n\nThen, create a rule that takes the subclass as a parameter and returns `InferredDependencies`.\n\nFor example:\n\n class InferFortranDependencies(InferDependenciesRequest):\n infer_from = FortranDependenciesInferenceFieldSet\n\n @rule\n def infer_fortran_dependencies(request: InferFortranDependencies) -> InferredDependencies:\n hydrated_sources = await Get(HydratedSources, HydrateSources(request.sources))\n ...\n return InferredDependencies(...)\n\n def rules():\n return [\n infer_fortran_dependencies,\n UnionRule(InferDependenciesRequest, InferFortranDependencies),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "InferDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "InferApacheThriftPythonDependencies", + "InferConftestDependencies", + "InferDockerDependencies", + "InferGoBinaryMainDependencyRequest", + "InferGoPackageDependenciesRequest", + "InferGoThirdPartyPackageDependenciesRequest", + "InferHelmChartDependenciesRequest", + "InferHelmDeploymentDependenciesRequest", + "InferHelmUnitTestChartDependencyRequest", + "InferInitDependencies", + "InferJavaSourceDependencies", + "InferKotlinJunitTestDependencyRequest", + "InferKotlinRuntimeDependencyRequest", + "InferKotlinSourceDependencies", + "InferOpenApiDocumentDependenciesRequest", + "InferOpenApiSourceDependenciesRequest", + "InferPexBinaryEntryPointDependency", + "InferProtobufDependencies", + "InferProtobufJavaRuntimeDependencyRequest", + "InferPythonCloudFunctionHandlerDependency", + "InferPythonDistributionDependencies", + "InferPythonImportDependencies", + "InferPythonLambdaHandlerDependency", + "InferPythonProtobufDependencies", + "InferScalaLibraryDependencyRequest", + "InferScalaPBRuntimeDependencyRequest", + "InferScalaPluginDependenciesRequest", + "InferScalaSourceDependencies", + "InferShellDependencies", + "InferStevedoreNamespacesDependencies", + "InferTerraformModuleDependenciesRequest", + "InferThriftDependencies" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.InferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.addresses", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "InferredDependencies(include: 'Iterable[Address]', *, exclude: 'Iterable[Address]' = ()) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "InferredDependencies", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.python.framework.stevedore, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.google_cloud_function.python, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.PluginField": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": true, + "module": "pants.engine.target", + "name": "PluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "SkipAddTrailingCommaField", + "SkipAutoflakeField", + "SkipBanditField", + "SkipBlackField", + "SkipDocformatterField", + "SkipFlake8Field", + "SkipIsortField", + "SkipMyPyField", + "SkipPyUpgradeField", + "SkipPydocstyleField", + "SkipPylintField", + "SkipRuffField", + "SkipYapfField" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.SourcesPaths": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "The resolved file names of the `source`/`sources` field.\n\nThis does not consider codegen, and only captures the files from the field.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPaths", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.SourcesPathsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A request to resolve the file names of the `source`/`sources` field.\n\nUse via `Get(SourcesPaths, SourcesPathRequest(tgt.get(SourcesField))`.\n\nThis is faster than `Get(HydratedSources, HydrateSourcesRequest)` because it does not snapshot\nthe files and it only resolves the file names.\n\nThis does not consider codegen, and only captures the files from the field. Use\n`HydrateSourcesRequest` to use codegen.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPathsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettings": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings", + "pants.backend.codegen.thrift.target_types.generator_settings", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.scala.target_types.scala_settings_request", + "pants.backend.shell.target_types.generator_settings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettingsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "An optional union to provide dynamic settings for a `TargetFilesGenerator`.\n\nSee `TargetFilesGenerator`.", + "is_union": true, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettingsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GeneratorSettingsRequest", + "GeneratorSettingsRequest", + "PythonFilesGeneratorSettingsRequest", + "ScalaSettingsRequest", + "ShellGeneratorSettingsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.TargetRootsToFieldSetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "TargetRootsToFieldSetsRequest(field_set_superclass: 'Type[_FS]', *, goal_description: 'str', no_applicable_targets_behavior: 'NoApplicableTargetsBehavior', shard: 'int' = 0, num_shards: 'int' = -1) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetRootsToFieldSetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.run_publish", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.target.TargetTypesToGenerateTargetsRequests": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_target_parametrizations", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.target", + "name": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.target_types_to_generate_targets_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.Targets": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.go_generate", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A heterogeneous collection of instances of Target subclasses.\n\nWhile every element will be a subclass of `Target`, there may be many different `Target` types\nin this collection, e.g. some `FileTarget` and some `PythonTestTarget`.\n\nOften, you will want to filter out the relevant targets by looking at what fields they have\nregistered, e.g.:\n\n valid_tgts = [tgt for tgt in tgts if tgt.has_fields([Compatibility, PythonSources])]\n\nYou should not check the Target's actual type because this breaks custom target types;\nfor example, prefer `tgt.has_field(PythonTestsSourcesField)` to\n`isinstance(tgt, PythonTestsTarget)`.", + "is_union": false, + "module": "pants.engine.target", + "name": "Targets", + "provider": "pants.backend.experimental.go, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.engine.target.TransitiveTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.environment", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A set of Target roots, and their transitive, flattened, de-duped dependencies.\n\nIf a target root is a dependency of another target root, then it will show up both in `roots`\nand in `dependencies`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.transitive_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.paths", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.TransitiveTargetsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.transitive_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A request to get the transitive dependencies of the input roots.\n\nResolve the transitive targets with `await Get(TransitiveTargets,\nTransitiveTargetsRequest([addr1, addr2])`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.paths", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.setup_py.generate_chroot", + "pants.backend.python.goals.setup_py.get_exporting_owner", + "pants.backend.python.goals.setup_py.get_owned_dependencies", + "pants.backend.python.goals.setup_py.get_requirements", + "pants.backend.python.goals.setup_py.get_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.UnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": [ + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.backend.python", + "pants.core" + ], + "documentation": "Like `Targets`, but will not replace target generators with their generated targets (e.g.\nreplace `python_sources` \"BUILD targets\" with generated `python_source` \"file targets\").", + "is_union": false, + "module": "pants.engine.target", + "name": "UnexpandedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.project_info.peek.peek", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping" + ] + }, + "pants.engine.target.ValidateDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to validate dependencies after they have been computed.\n\nAn implementing rule should raise an exception if dependencies are invalid.", + "is_union": true, + "module": "pants.engine.target", + "name": "ValidateDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "PythonValidateDependenciesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.ValidatedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ValidatedDependencies()", + "is_union": false, + "module": "pants.engine.target", + "name": "ValidatedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.WrappedTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.environment", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A light wrapper to encapsulate all the distinct `Target` subclasses into a single type.\n\nThis is necessary when using a single target in a rule because the engine expects exact types\nand does not work with subtypes.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.engine.target.WrappedTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Used with `WrappedTarget` to get the Target corresponding to an address.\n\n`description_of_origin` is used for error messages when the address does not actually exist. If\nyou are confident this cannot happen, set the string to something like ``.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetry": { + "consumed_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetry", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_anonymous_telemetry" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetryCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.goal.anonymous_telemetry.construct_callback" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetryCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorSubsystem": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_stats" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.bsp.compile.BSPClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A wrapper around a `ClasspathEntryRequest` which notifies the BSP client on completion.\n\nTODO: Because this struct contains a `task_id`, messages will re-render in every run, even\nthough the underlying computation does not re-run. See #15426 for an alternative.", + "is_union": false, + "module": "pants.jvm.bsp.compile", + "name": "BSPClasspathEntryRequest", + "provider": "pants.jvm.bsp.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.classpath.Classpath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "Classpath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.classpath" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.classpath.LooseClassfiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.scala", + "pants.core", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "The contents of a classpath entry as loose classfiles.\n\nNote that `ClasspathEntry` and `Classpath` both guarantee that they contain JAR files, and so\ncreating loose classfiles from them involves extracting their entry.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "LooseClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.compile.ClasspathDependenciesRequest": { + "consumed_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ClasspathDependenciesRequest(request: 'ClasspathEntryRequest', ignore_generated: 'bool' = False)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathDependenciesRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.ClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nIf `[jvm].reproducible_jars`, then all JARs in a classpath entry must have had timestamps\nstripped -- either natively, or via the `pants.jvm.strip_jar` rules.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.\n\nNote: Non-jar artifacts (e.g., executables with \"exe\" packaging) may end up on the classpath if\nthey are dependencies.\nTODO: Does there need to be a filtering mechanism to exclude non-jar artifacts in the default case?", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.jvm.compile", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.jvm.compile.required_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.classpath.classpath", + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.compile.ClasspathEntryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "A request for a ClasspathEntry for the given CoarsenedTarget and resolve.\n\nTODO: Move to `classpath.py`.", + "is_union": true, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [ + "CompileJavaSourceRequest", + "CompileKotlinSourceRequest", + "CompileScalaSourceRequest", + "CoursierFetchRequest", + "DeployJarClasspathEntryRequest", + "JvmResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.compile.ClasspathEntryRequestFactory": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.calculate_jvm_request_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.compile.ClasspathEntryRequests": { + "consumed_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java, pants.jvm.compile", + "returned_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.compile.required_classfiles" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.bsp.compile", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resources.assemble_resources_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmTypeProvidingTargets": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AvailableThirdPartyArtifacts": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.ThirdPartySymbolMapping": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "The third party symbols provided by all `jvm_artifact` targets.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.symbol_mapper.FirstPartyMappingRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "An entry point for a specific implementation of mapping JVM package names to owning targets.\n\nAll implementations will be merged together.\n\nThe addresses should all be file addresses, rather than BUILD addresses.", + "is_union": true, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "FirstPartyMappingRequest", + "provider": "pants.jvm.dependency_inference.symbol_mapper", + "returned_by_rules": [], + "union_members": [ + "FirstPartyJavaTargetsMappingRequest", + "FirstPartyKotlinTargetsMappingRequest", + "FirstPartyScalaTargetsMappingRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMap": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "The first party symbols provided by a single inference implementation.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMap", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMapping": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "The merged first and third party symbols provided by all inference implementations.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.GenerateJvmLockfile": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.unions", + "pants.jvm.goals.lockfile", + "pants.jvm.resolve.common" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', artifacts: 'ArtifactRequirements')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.goals.lockfile.KnownJVMUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "KnownJVMUserResolveNamesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.RequestedJVMUserResolveNames": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "RequestedJVMUserResolveNames", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "Hook for backends to validate the artifact requirements requested for a resolve.\n\nThe main user is the Scala backend which will ensure scala-library is present in the resolve.", + "is_union": true, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [ + "ValidateResolveHasScalaRuntimeRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile._ValidateJvmArtifactsRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "_ValidateJvmArtifactsRequest(artifacts: 'ArtifactRequirements', resolve_name: 'str')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "_ValidateJvmArtifactsRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.jar_tool.jar_tool.JarToolCompiledClassfiles": { + "consumed_by_rules": [ + "pants.jvm.jar_tool.jar_tool.run_jar_tool" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JarToolCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jar_tool.jar_tool.build_jar_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jar_tool.jar_tool.JarToolGenerateLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolGenerateLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool" + ] + }, + "pants.jvm.jar_tool.jar_tool.JarToolRequest": { + "consumed_by_rules": [ + "pants.jvm.jar_tool.jar_tool.run_jar_tool" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JarToolRequest(*, jar_name: 'str', digest: 'Digest', main_class: 'str | None' = None, classpath_entries: 'Iterable[str] | None' = None, manifest: 'str | None' = None, jars: 'Iterable[str] | None' = None, file_mappings: 'Mapping[str, str] | None' = None, default_action: 'JarDuplicateAction | None' = None, policies: 'Iterable[tuple[str, str | JarDuplicateAction]] | None' = None, skip: 'Iterable[str] | None' = None, compress: 'bool' = False, update: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolRequest", + "provider": "pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar" + ] + }, + "pants.jvm.jdk_rules.InternalJdk": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "InternalJdk", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.internal_jdk" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jdk_rules.JdkEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.jdk_rules" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int', global_jvm_options: 'tuple[str, ...]', java_home_command: 'str')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkEnvironment", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JdkRequest": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Request for a JDK with a specific major version, or a default (`--jvm-jdk` or System).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkRequest", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JvmProcess": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.jvm_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JvmProcess(jdk: 'JdkEnvironment', argv: 'Iterable[str]', classpath_entries: 'Iterable[str]', input_digest: 'Digest', description: 'str', level: 'LogLevel' = , extra_jvm_options: 'Iterable[str] | None' = None, extra_nailgun_keys: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_env: 'Mapping[str, str] | None' = None, timeout_seconds: 'int | float | None' = None, cache_scope: 'ProcessCacheScope | None' = None, use_nailgun: 'bool' = True, remote_cache_speculation_delay: 'int | None' = None)", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JvmProcess", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.jdk_rules.Nailgun": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Nailgun(classpath_entry: 'ClasspathEntry')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "Nailgun", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.deploy_jar_classpath" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarClasspathEntryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "DeployJarFieldSet(address: 'Address', main_class: pants.jvm.target_types.JvmMainClassNameField, output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmDependenciesField, jdk_version: pants.jvm.target_types.JvmJdkField, duplicate_policy: pants.jvm.target_types.DeployJarDuplicatePolicyField, shading_rules: pants.jvm.target_types.DeployJarShadingRulesField)", + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarFieldSet", + "provider": "pants.backend.experimental.java, pants.jvm.package.deploy_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.jvm.package.war.PackageWarFileFieldSet": { + "consumed_by_rules": [ + "pants.jvm.package.war.package_war" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "PackageWarFileFieldSet(address: 'Address', output_path: 'OutputPathField', dependencies: 'JvmWarDependenciesField', descriptor: 'JvmWarDescriptorAddressField', content: 'JvmWarContentField', shading_rules: 'JvmWarShadingRulesField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "PackageWarFileFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.jvm.package.war.RenderWarContentRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderWarContentRequest(content: 'JvmWarContentField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarContentRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderWarDeploymentDescriptorRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderWarDeploymentDescriptorRequest(descriptor: 'JvmWarDescriptorAddressField', owning_address: 'Address')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarDeploymentDescriptorRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarContent": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.addresses", + "pants.jvm.package.war" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderedWarContent(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarContent", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarDeploymentDescriptor": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.package.war" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderedWarDeploymentDescriptor(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.resolve.common.ArtifactRequirements": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.build_graph.address", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java" + ], + "documentation": "An ordered list of Coordinates used as requirements.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "ArtifactRequirements", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.common", + "returned_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.common.GatherJvmCoordinatesRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A request to turn strings of coordinates (`group:artifact:version`) and/or addresses to\n`jvm_artifact` targets into `ArtifactRequirements`.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "GatherJvmCoordinatesRequest", + "provider": "pants.jvm.resolve.common", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierFetchRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierFetchRequest", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierLockfileEntry": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A single artifact entry from a Coursier-resolved lockfile.\n\nThese fields are nearly identical to the JSON objects from the\n\"dependencies\" entries in Coursier's --json-output-file format.\nBut unlike Coursier's JSON report, a CoursierLockfileEntry\nincludes the content-address of the artifact fetched by Coursier\nand ingested by Pants.\n\nFor example, a Coursier JSON report dependency entry might look like this:\n\n```\n{\n \"coord\": \"com.chuusai:shapeless_2.13:2.3.3\",\n \"file\": \"/home/USER/.cache/coursier/v1/https/repo1.maven.org/maven2/com/chuusai/shapeless_2.13/2.3.3/shapeless_2.13-2.3.3.jar\",\n \"directDependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ],\n \"dependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ]\n}\n```\n\nThe equivalent CoursierLockfileEntry would look like this:\n\n```\nCoursierLockfileEntry(\n coord=\"com.chuusai:shapeless_2.13:2.3.3\", # identical\n file_name=\"shapeless_2.13-2.3.3.jar\" # PurePath(entry[\"file\"].name)\n direct_dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n file_digest=FileDigest(fingerprint=, ...),\n)\n```\n\nThe fields `remote_url` and `pants_address` are set by Pants if the `coord` field matches a\n`jvm_artifact` that had either the `url` or `jar` fields set.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierLockfileEntry", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.resolve.common" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolvedLockfile": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.common", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ResolvedClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A collection of resolved classpath entries.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspath": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.jvm.resolve.common", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "A fully fetched and merged classpath for running a JVM tool.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspathRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A request to set up the classpath for a JVM tool by fetching artifacts and merging the\nclasspath.\n\n:param prefix: if set, should be a relative directory that will\n be prepended to every classpath element. This is useful for\n keeping all classpath elements isolated under a single directory\n in a process invocation, where other inputs on the process's\n root directory might interfere with un-prefixed classpath\n entries (or vice versa).", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspathRequest", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_setup.Coursier": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "Coursier", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.coursier_setup.CoursierFetchProcess": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "CoursierFetchProcess(args: 'Tuple[str, ...]', input_digest: 'Digest', output_directories: 'Tuple[str, ...]', output_files: 'Tuple[str, ...]', description: 'str')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierFetchProcess", + "provider": "pants.jvm.resolve.coursier_setup", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_setup.CoursierSubsystem": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.jvm_tool.GenerateJvmLockfileFromTool": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.rules", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.java.dependency_inference.java_parser", + "pants.backend.java.lint.google_java_format.rules", + "pants.backend.kotlin.dependency_inference.kotlin_parser", + "pants.backend.kotlin.lint.ktlint.rules", + "pants.backend.scala.dependency_inference.scala_parser", + "pants.backend.scala.lint.scalafmt.rules", + "pants.backend.scala.test.scalatest", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.shading.jarjar", + "pants.jvm.strip_jar.strip_jar", + "pants.jvm.test.junit" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "is_union": false, + "module": "pants.jvm.resolve.jvm_tool", + "name": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.key.CoursierResolveKey": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.key", + "name": "CoursierResolveKey", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.key", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resources.JvmResourcesRequest": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resources", + "name": "JvmResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJar": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.shading.rules.shade_jar" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_jarjar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJarGeneratorLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJarGeneratorLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.shading.jarjar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.shading.rules.shade_jar" + ] + }, + "pants.jvm.shading.rules.ShadeJarRequest": { + "consumed_by_rules": [ + "pants.jvm.shading.rules.shade_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ShadeJarRequest(*, path: 'str | PurePath', digest: 'Digest', rules: 'Iterable[JvmShadingRule] | None' = None, skip_manifest: 'bool | None' = None, misplaced_class_strategy: 'MisplacedClassStrategy | None' = None) -> 'None'", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadeJarRequest", + "provider": "pants.jvm.shading.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.shading.rules.ShadedJar": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.jvm.shading.rules" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ShadedJar(path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadedJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.shading.rules.shade_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarCompiledClassfiles": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "StripJarCompiledClassfiles(digest: Digest)", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.strip_jar.strip_jar.StripJarRequest": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "StripJarRequest(digest: Digest, filenames: Tuple[str, ...])", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarRequest", + "provider": "pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.package_deploy_jar" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.jvm.subsystems.JvmSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_jvm", + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.target_types.jvm_resolve_field_default_factory", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.subsystems", + "name": "JvmSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_jvm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.target_types.GenericJvmRunRequest": { + "consumed_by_rules": [ + "pants.jvm.run.create_run_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Allows the use of a generic rule to return a `RunRequest` based on the field set.", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "GenericJvmRunRequest", + "provider": "pants.jvm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ] + }, + "pants.jvm.target_types.JvmArtifactFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JvmArtifactFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', group: 'JvmArtifactGroupField', artifact: 'JvmArtifactArtifactField', version: 'JvmArtifactVersionField', packages: 'JvmArtifactPackagesField', url: 'JvmArtifactUrlField')", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmArtifactFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.jvm.target_types.JvmResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmJdkField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmJdkField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmResolveField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "JunitTestFieldSet(address: 'Address', sources: 'JunitTestSourceField', timeout: 'JunitTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'TestExtraEnvVarsField')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.test.junit.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.env_vars", + "pants.jvm.test.junit" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetup", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.test.junit.TestSetupRequest": { + "consumed_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "TestSetupRequest(field_set: 'JunitTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetupRequest", + "provider": "pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.util_rules.ExtractFileDigest": { + "consumed_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ExtractFileDigest(digest: 'Digest', file_path: 'str')", + "is_union": false, + "module": "pants.jvm.util_rules", + "name": "ExtractFileDigest", + "provider": "pants.jvm.util_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.option.global_options.GlobalOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.run.run", + "pants.core.util_rules.distdir.get_distdir", + "pants.engine.internals.graph.extract_subproject_roots", + "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "pants.jvm.jdk_rules.jvm_process" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.option.global_options", + "name": "GlobalOptions", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.global_options.UnmatchedBuildFileGlobs": { + "consumed_by_rules": [ + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_source_paths", + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "What to do when globs do not match in BUILD files.", + "is_union": false, + "module": "pants.option.global_options", + "name": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_unmatched_build_file_globs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.scope.Scope": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "An options scope.", + "is_union": false, + "module": "pants.option.scope", + "name": "Scope", + "provider": "pants.option.scope", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_scope_", + "construct_scope_add_trailing_comma", + "construct_scope_anonymous_telemetry", + "construct_scope_apache_thrift", + "construct_scope_autoflake", + "construct_scope_bandit", + "construct_scope_black", + "construct_scope_buf", + "construct_scope_build_deprecations_fixer", + "construct_scope_buildifier", + "construct_scope_check", + "construct_scope_count_loc", + "construct_scope_coursier", + "construct_scope_coverage_py", + "construct_scope_debug_adapter", + "construct_scope_debugpy", + "construct_scope_dependencies", + "construct_scope_dependents", + "construct_scope_docformatter", + "construct_scope_docker", + "construct_scope_dockerfile_parser", + "construct_scope_download_terraform", + "construct_scope_experimental_bsp", + "construct_scope_experimental_deploy", + "construct_scope_export", + "construct_scope_export_codegen", + "construct_scope_filedeps", + "construct_scope_filter", + "construct_scope_fix", + "construct_scope_flake8", + "construct_scope_fmt", + "construct_scope_generate_lockfiles", + "construct_scope_go_generate", + "construct_scope_go_test", + "construct_scope_gofmt", + "construct_scope_golang", + "construct_scope_google_java_format", + "construct_scope_grpc_python_plugin", + "construct_scope_hadolint", + "construct_scope_helm", + "construct_scope_helm_k8s_parser", + "construct_scope_helm_post_renderer", + "construct_scope_helm_unittest", + "construct_scope_ipython", + "construct_scope_isort", + "construct_scope_jarjar", + "construct_scope_java_infer", + "construct_scope_javac", + "construct_scope_junit", + "construct_scope_jvm", + "construct_scope_kotlin", + "construct_scope_kotlin_infer", + "construct_scope_kotlinc", + "construct_scope_ktlint", + "construct_scope_lambdex", + "construct_scope_lint", + "construct_scope_list", + "construct_scope_mypy", + "construct_scope_mypy_protobuf", + "construct_scope_nodejs", + "construct_scope_openapi", + "construct_scope_package", + "construct_scope_paths", + "construct_scope_peek", + "construct_scope_pex", + "construct_scope_pex_binary_defaults", + "construct_scope_pex_cli", + "construct_scope_preamble", + "construct_scope_protobuf_java_grpc", + "construct_scope_protoc", + "construct_scope_publish", + "construct_scope_py_constraints", + "construct_scope_pydocstyle", + "construct_scope_pylint", + "construct_scope_pyoxidizer", + "construct_scope_pytest", + "construct_scope_python", + "construct_scope_python_bootstrap", + "construct_scope_python_dump_source_analysis", + "construct_scope_python_infer", + "construct_scope_python_native_code", + "construct_scope_python_protobuf", + "construct_scope_python_repos", + "construct_scope_python_thrift", + "construct_scope_pyupgrade", + "construct_scope_regex_lint", + "construct_scope_repl", + "construct_scope_roots", + "construct_scope_ruff", + "construct_scope_run", + "construct_scope_scala", + "construct_scope_scala_infer", + "construct_scope_scalac", + "construct_scope_scalafmt", + "construct_scope_scalapb", + "construct_scope_scalatest", + "construct_scope_scc", + "construct_scope_setup_py_generation", + "construct_scope_setuptools", + "construct_scope_setuptools_scm", + "construct_scope_shell_setup", + "construct_scope_shell_test", + "construct_scope_shellcheck", + "construct_scope_shfmt", + "construct_scope_shunit2", + "construct_scope_source", + "construct_scope_spectral", + "construct_scope_stats", + "construct_scope_subprocess_environment", + "construct_scope_tailor", + "construct_scope_terraform_fmt", + "construct_scope_terraform_hcl2_parser", + "construct_scope_terraform_validate", + "construct_scope_test", + "construct_scope_thrift", + "construct_scope_twine", + "construct_scope_update_build_files", + "construct_scope_yamllint", + "construct_scope_yapf" + ] + }, + "pants.option.subsystem.PluginOption": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": true, + "module": "pants.option.subsystem", + "name": "PluginOption", + "provider": "pants.option.subsystem", + "returned_by_rules": [], + "union_members": [ + "ExportPluginOptions" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.AllSourceRoots": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.project_info", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "AllSourceRoots", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.all_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.OptionalSourceRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.source.source_root" + ], + "dependents": [ + "pants.core" + ], + "documentation": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.OptionalSourceRootsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.source.source_root" + ], + "dependents": [ + "pants.core" + ], + "documentation": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.source.source_root" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRoot(path: 'str')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ] + }, + "pants.source.source_root.SourceRootConfig": { + "consumed_by_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootConfig", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.SourceRootRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_source_root" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Find the source root for the given path.\n\nIf you have multiple paths, particularly if many of them share parent directories, you'll get\nbetter performance with a `SourceRootsRequest` (see above) instead.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.SourceRootsRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_roots" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Find the source roots for the given files and/or dirs.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRootsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.source.source_root" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.setup_py.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ] + }, + "pants.vcs.git.GitWorktreeRequest": { + "consumed_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GitWorktreeRequest(gitdir: 'PathLike[str] | None' = None, subdir: 'PathLike[str] | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "GitWorktreeRequest", + "provider": "pants.vcs.git", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + }, + "pants.vcs.git.MaybeGitWorktree": { + "consumed_by_rules": [], + "dependencies": [ + "pants.vcs.git" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": "MaybeGitWorktree(git_worktree: 'GitWorktree | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "MaybeGitWorktree", + "provider": "pants.core", + "returned_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + } + }, + "name_to_backend_help_info": { + "pants.backend.awslambda.python": { + "description": "Create AWS Lambdas from Python code.\n\nSee https://www.pantsbuild.org/docs/awslambda-python.", + "enabled": true, + "name": "pants.backend.awslambda.python", + "provider": "pants" + }, + "pants.backend.build_files.fix.deprecations": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fix.deprecations", + "provider": "pants" + }, + "pants.backend.build_files.fmt.black": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.black", + "provider": "pants" + }, + "pants.backend.build_files.fmt.buildifier": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.buildifier", + "provider": "pants" + }, + "pants.backend.build_files.fmt.yapf": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.yapf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.lint.buf": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.protobuf.lint.buf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.python": { + "description": "Generate Python sources from Protocol Buffers (Protobufs).\n\nSee https://www.pantsbuild.org/docs/protobuf.", + "enabled": true, + "name": "pants.backend.codegen.protobuf.python", + "provider": "pants" + }, + "pants.backend.codegen.thrift.apache.python": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.thrift.apache.python", + "provider": "pants" + }, + "pants.backend.docker": { + "description": "", + "enabled": true, + "name": "pants.backend.docker", + "provider": "pants" + }, + "pants.backend.docker.lint.hadolint": { + "description": "", + "enabled": true, + "name": "pants.backend.docker.lint.hadolint", + "provider": "pants" + }, + "pants.backend.experimental.adhoc": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.adhoc", + "provider": "pants" + }, + "pants.backend.experimental.cc": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cc", + "provider": "pants" + }, + "pants.backend.experimental.cc.lint.clangformat": { + "description": "A formatter for C/C++ (and several other languages).\n\nSee https://clang.llvm.org/docs/ClangFormat.html for details.", + "enabled": false, + "name": "pants.backend.experimental.cc.lint.clangformat", + "provider": "pants" + }, + "pants.backend.experimental.codegen.avro.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.avro.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.go", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.scala", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.apache.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.apache.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.scala": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.scala", + "provider": "pants" + }, + "pants.backend.experimental.cue": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cue", + "provider": "pants" + }, + "pants.backend.experimental.debian": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.debian", + "provider": "pants" + }, + "pants.backend.experimental.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.go", + "provider": "pants" + }, + "pants.backend.experimental.go.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.golangci_lint": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.golangci_lint", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.vet": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.vet", + "provider": "pants" + }, + "pants.backend.experimental.helm": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.helm", + "provider": "pants" + }, + "pants.backend.experimental.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java", + "provider": "pants" + }, + "pants.backend.experimental.java.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.java.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.java.lint.google_java_format": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java.lint.google_java_format", + "provider": "pants" + }, + "pants.backend.experimental.javascript": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.javascript", + "provider": "pants" + }, + "pants.backend.experimental.javascript.lint.prettier": { + "description": "A formatter for JS/TS (and several other languages).\n\nSee https://prettier.io/ for details.", + "enabled": false, + "name": "pants.backend.experimental.javascript.lint.prettier", + "provider": "pants" + }, + "pants.backend.experimental.kotlin": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.kotlin.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.lint.ktlint": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin.lint.ktlint", + "provider": "pants" + }, + "pants.backend.experimental.openapi": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi", + "provider": "pants" + }, + "pants.backend.experimental.openapi.codegen.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.openapi.codegen.java", + "provider": "pants" + }, + "pants.backend.experimental.openapi.lint.spectral": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi.lint.spectral", + "provider": "pants" + }, + "pants.backend.experimental.python": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.django": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.framework.django", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.stevedore": { + "description": "A python \"framework\" for apps to dynamically load plugins.\n\nSee https://github.com/openstack/stevedore for details.", + "enabled": true, + "name": "pants.backend.experimental.python.framework.stevedore", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.add_trailing_comma": { + "description": "Autoformatter to automatically add trailing commas to calls and literals.\n\nSee https://github.com/asottile/add-trailing-comma for details.", + "enabled": true, + "name": "pants.backend.experimental.python.lint.add_trailing_comma", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.autoflake": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.pyupgrade": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.ruff": { + "description": "Linter & formatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://github.com/charliermarsh/ruff", + "enabled": true, + "name": "pants.backend.experimental.python.lint.ruff", + "provider": "pants" + }, + "pants.backend.experimental.python.packaging.pyoxidizer": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python.packaging.pyoxidizer", + "provider": "pants" + }, + "pants.backend.experimental.python.typecheck.pyright": { + "description": "Static type checker for Python, running on NodeJS.\n\nSee https://github.com/Microsoft/pyright for details.", + "enabled": false, + "name": "pants.backend.experimental.python.typecheck.pyright", + "provider": "pants" + }, + "pants.backend.experimental.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala", + "provider": "pants" + }, + "pants.backend.experimental.scala.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.scala.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.scala.lint.scalafmt": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala.lint.scalafmt", + "provider": "pants" + }, + "pants.backend.experimental.swift": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.swift", + "provider": "pants" + }, + "pants.backend.experimental.terraform": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.terraform", + "provider": "pants" + }, + "pants.backend.experimental.tools.yamllint": { + "description": "A configurable linter for YAML files.\n\nSee https://yamllint.readthedocs.io/ for details.", + "enabled": true, + "name": "pants.backend.experimental.tools.yamllint", + "provider": "pants" + }, + "pants.backend.experimental.visibility": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.visibility", + "provider": "pants" + }, + "pants.backend.google_cloud_function.python": { + "description": "Create Google Cloud Functions from Python code.\n\nSee https://www.pantsbuild.org/docs/google-cloud-function-python.", + "enabled": true, + "name": "pants.backend.google_cloud_function.python", + "provider": "pants" + }, + "pants.backend.plugin_development": { + "description": "", + "enabled": true, + "name": "pants.backend.plugin_development", + "provider": "pants" + }, + "pants.backend.project_info": { + "description": "Information on your project, such as listing the targets in your project.", + "enabled": true, + "name": "pants.backend.project_info", + "provider": "pants" + }, + "pants.backend.python": { + "description": "Support for Python.\n\nSee https://www.pantsbuild.org/docs/python-backend.", + "enabled": true, + "name": "pants.backend.python", + "provider": "pants" + }, + "pants.backend.python.lint.autoflake": { + "description": "Autoformatter for removing unused Python imports.\n\nSee https://github.com/myint/autoflake for details.", + "enabled": true, + "name": "pants.backend.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.python.lint.bandit": { + "description": "Security linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://bandit.readthedocs.io/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.bandit", + "provider": "pants" + }, + "pants.backend.python.lint.black": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://black.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.black", + "provider": "pants" + }, + "pants.backend.python.lint.docformatter": { + "description": "Python autoformatter for PEP257 docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/myint/docformatter.", + "enabled": true, + "name": "pants.backend.python.lint.docformatter", + "provider": "pants" + }, + "pants.backend.python.lint.flake8": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://flake8.pycqa.org/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.flake8", + "provider": "pants" + }, + "pants.backend.python.lint.isort": { + "description": "Autoformatter for Python import statements.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://pycqa.github.io/isort/.", + "enabled": true, + "name": "pants.backend.python.lint.isort", + "provider": "pants" + }, + "pants.backend.python.lint.pydocstyle": { + "description": "Static analysis tool for checking compliance with Python docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttp://www.pydocstyle.org/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.pydocstyle", + "provider": "pants" + }, + "pants.backend.python.lint.pylint": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://www.pylint.org.", + "enabled": true, + "name": "pants.backend.python.lint.pylint", + "provider": "pants" + }, + "pants.backend.python.lint.pyupgrade": { + "description": "https://github.com/asottile/pyupgrade.\n\nA tool to automatically upgrade syntax for newer versions of the language.", + "enabled": true, + "name": "pants.backend.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.python.lint.yapf": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/google/yapf .", + "enabled": true, + "name": "pants.backend.python.lint.yapf", + "provider": "pants" + }, + "pants.backend.python.mixed_interpreter_constraints": { + "description": "", + "enabled": true, + "name": "pants.backend.python.mixed_interpreter_constraints", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv.custom_install": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv.custom_install", + "provider": "pants" + }, + "pants.backend.python.typecheck.mypy": { + "description": "Type checker for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://mypy.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.typecheck.mypy", + "provider": "pants" + }, + "pants.backend.shell": { + "description": "", + "enabled": true, + "name": "pants.backend.shell", + "provider": "pants" + }, + "pants.backend.shell.lint.shellcheck": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shellcheck", + "provider": "pants" + }, + "pants.backend.shell.lint.shfmt": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shfmt", + "provider": "pants" + }, + "pants.backend.tools.preamble": { + "description": "", + "enabled": true, + "name": "pants.backend.tools.preamble", + "provider": "pants" + }, + "pants.backend.url_handlers.s3": { + "description": "", + "enabled": false, + "name": "pants.backend.url_handlers.s3", + "provider": "pants" + }, + "pants.core": { + "description": "Core rules for Pants to operate correctly.\n\nThese are always activated and cannot be disabled.", + "enabled": true, + "name": "pants.core", + "provider": "pants" + } + }, + "name_to_build_file_info": { + "__defaults__": { + "documentation": "Provide default field values.\n\nLearn more https://www.pantsbuild.org/v2.16/docs/targets#field-default-values", + "is_target": false, + "name": "__defaults__", + "signature": "(*args: 'SetDefaultsT', ignore_unknown_fields: 'bool' = False, ignore_unknown_targets: 'bool' = False, **kwargs) -> 'None'" + }, + "__dependencies_rules__": { + "documentation": "Declare dependencies rules.", + "is_target": false, + "name": "__dependencies_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "__dependents_rules__": { + "documentation": "Declare dependents rules.", + "is_target": false, + "name": "__dependents_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "_generator_sources_helper": { + "documentation": null, + "is_target": true, + "name": "_generator_sources_helper", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfile": { + "documentation": null, + "is_target": true, + "name": "_lockfile", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfiles": { + "documentation": null, + "is_target": true, + "name": "_lockfiles", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "adhoc_tool": { + "documentation": null, + "is_target": true, + "name": "adhoc_tool", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "archive": { + "documentation": null, + "is_target": true, + "name": "archive", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "build_file_dir": { + "documentation": "Returns the path to the directory of the current BUILD file.\n\nThe returned value is an instance of `PurePath` to make path name manipulations easy.\n\nSee: https://docs.python.org/3/library/pathlib.html#pathlib.PurePath", + "is_target": false, + "name": "build_file_dir", + "signature": "() -> 'PurePath'" + }, + "deploy_jar": { + "documentation": null, + "is_target": true, + "name": "deploy_jar", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_environment": { + "documentation": null, + "is_target": true, + "name": "docker_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_image": { + "documentation": null, + "is_target": true, + "name": "docker_image", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "duplicate_rule": { + "documentation": "DeployJarDuplicateRule(pattern: 'str', action: 'str')", + "is_target": false, + "name": "duplicate_rule", + "signature": "(pattern: 'str', action: 'str') -> None" + }, + "env": { + "documentation": "Reference environment variable.", + "is_target": false, + "name": "env", + "signature": "(name: 'str', *args, **kwargs) -> 'Any'" + }, + "experimental_run_in_sandbox": { + "documentation": null, + "is_target": true, + "name": "experimental_run_in_sandbox", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_run_shell_command": { + "documentation": null, + "is_target": true, + "name": "experimental_run_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_shell_command": { + "documentation": null, + "is_target": true, + "name": "experimental_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_test_shell_command": { + "documentation": null, + "is_target": true, + "name": "experimental_test_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_go_package_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_go_package_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_java_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_python_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_resources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_scala_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "file": { + "documentation": null, + "is_target": true, + "name": "file", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "files": { + "documentation": null, + "is_target": true, + "name": "files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_binary": { + "documentation": null, + "is_target": true, + "name": "go_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_mod": { + "documentation": null, + "is_target": true, + "name": "go_mod", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_package": { + "documentation": null, + "is_target": true, + "name": "go_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_third_party_package": { + "documentation": null, + "is_target": true, + "name": "go_third_party_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_artifact": { + "documentation": null, + "is_target": true, + "name": "helm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_chart": { + "documentation": null, + "is_target": true, + "name": "helm_chart", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_deployment": { + "documentation": null, + "is_target": true, + "name": "helm_deployment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_test": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_tests": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "http_source": { + "documentation": "http_source(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')", + "is_target": false, + "name": "http_source", + "signature": "(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')" + }, + "java_source": { + "documentation": null, + "is_target": true, + "name": "java_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "java_sources": { + "documentation": null, + "is_target": true, + "name": "java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_test": { + "documentation": null, + "is_target": true, + "name": "junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_tests": { + "documentation": null, + "is_target": true, + "name": "junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_artifact": { + "documentation": null, + "is_target": true, + "name": "jvm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_war": { + "documentation": null, + "is_target": true, + "name": "jvm_war", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_test": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_tests": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_source": { + "documentation": null, + "is_target": true, + "name": "kotlin_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlinc_plugin": { + "documentation": null, + "is_target": true, + "name": "kotlinc_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "local_environment": { + "documentation": null, + "is_target": true, + "name": "local_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_document": { + "documentation": null, + "is_target": true, + "name": "openapi_document", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_documents": { + "documentation": null, + "is_target": true, + "name": "openapi_documents", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_source": { + "documentation": null, + "is_target": true, + "name": "openapi_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_sources": { + "documentation": null, + "is_target": true, + "name": "openapi_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pants_requirements": { + "documentation": null, + "is_target": true, + "name": "pants_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "parametrize": { + "documentation": "A builtin function/dataclass that can be used to parametrize Targets.\n\nParametrization is applied between TargetAdaptor construction and Target instantiation, which\nmeans that individual Field instances need not be aware of it.", + "is_target": false, + "name": "parametrize", + "signature": "(*args: 'str', **kwargs: 'Any') -> 'None'" + }, + "per_platform": { + "documentation": "An object containing differing homogeneous platform-dependent values.\n\nThe values should be evaluated for the execution environment, and not the host environment\n(I.e. it should be evaluated in a `rule` which requests `Platform`).\n\nExpected usage is roughly:\n\n```python\nclass MyFieldType(...):\n value = str | per_platform[str]\n\n @classmethod\n def compute_value( # type: ignore[override]\n cls,\n raw_value: Optional[Union[str, per_platform[str]]],\n address: Address,\n ) -> Optional[Union[str, per_platform[str]]]:\n if isinstance(raw_value, per_platform):\n # NOTE: Ensure the values are homogenous\n raw_value.check_types(str)\n\n return raw_value\n\n...\n\n@rule\nasync def my_rule(..., platform: Platform) -> ...:\n field_value = target[MyFieldType].value\n\n if isinstance(field_value, per_platform):\n field_value = field_value.get_value_for_platform(platform)\n\n ...\n```\n\nNOTE: Support for this object should be heavily weighed, as it would be innaproriate to use in\ncertain contexts (such as the `source` field in a `foo_source` target, where the intent is to\nsupport differing source files based on platform. The result would be that dependency inference\n(and therefore the dependencies field) wouldn't be knowable on the host, which is not something\nthe engine can support yet).", + "is_target": false, + "name": "per_platform", + "signature": "(linux_arm64: '_T | None' = None, linux_x86_64: '_T | None' = None, macos_arm64: '_T | None' = None, macos_x86_64: '_T | None' = None) -> None" + }, + "pex_binaries": { + "documentation": null, + "is_target": true, + "name": "pex_binaries", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pex_binary": { + "documentation": null, + "is_target": true, + "name": "pex_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pipenv_requirements": { + "documentation": null, + "is_target": true, + "name": "pipenv_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "poetry_requirements": { + "documentation": null, + "is_target": true, + "name": "poetry_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_source": { + "documentation": null, + "is_target": true, + "name": "protobuf_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_sources": { + "documentation": null, + "is_target": true, + "name": "protobuf_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pyoxidizer_binary": { + "documentation": null, + "is_target": true, + "name": "pyoxidizer_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_artifact": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "python_artifact", + "signature": "(**kwargs) -> None" + }, + "python_awslambda": { + "documentation": null, + "is_target": true, + "name": "python_awslambda", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_distribution": { + "documentation": null, + "is_target": true, + "name": "python_distribution", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_google_cloud_function": { + "documentation": null, + "is_target": true, + "name": "python_google_cloud_function", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirement": { + "documentation": null, + "is_target": true, + "name": "python_requirement", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirements": { + "documentation": null, + "is_target": true, + "name": "python_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_source": { + "documentation": null, + "is_target": true, + "name": "python_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_sources": { + "documentation": null, + "is_target": true, + "name": "python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test": { + "documentation": null, + "is_target": true, + "name": "python_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test_utils": { + "documentation": null, + "is_target": true, + "name": "python_test_utils", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_tests": { + "documentation": null, + "is_target": true, + "name": "python_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "relocated_files": { + "documentation": null, + "is_target": true, + "name": "relocated_files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "remote_environment": { + "documentation": null, + "is_target": true, + "name": "remote_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resource": { + "documentation": null, + "is_target": true, + "name": "resource", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resources": { + "documentation": null, + "is_target": true, + "name": "resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "run_shell_command": { + "documentation": null, + "is_target": true, + "name": "run_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_junit_test": { + "documentation": null, + "is_target": true, + "name": "scala_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_junit_tests": { + "documentation": null, + "is_target": true, + "name": "scala_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_source": { + "documentation": null, + "is_target": true, + "name": "scala_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_sources": { + "documentation": null, + "is_target": true, + "name": "scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalac_plugin": { + "documentation": null, + "is_target": true, + "name": "scalac_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_test": { + "documentation": null, + "is_target": true, + "name": "scalatest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_tests": { + "documentation": null, + "is_target": true, + "name": "scalatest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "setup_py": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "setup_py", + "signature": "(**kwargs) -> None" + }, + "shading_keep": { + "documentation": "JvmShadingKeepRule(pattern: 'str')", + "is_target": false, + "name": "shading_keep", + "signature": "(pattern: 'str') -> None" + }, + "shading_relocate": { + "documentation": "JvmShadingRelocateRule(package: 'str', into: 'str | None' = None)", + "is_target": false, + "name": "shading_relocate", + "signature": "(package: 'str', into: 'str | None' = None) -> None" + }, + "shading_rename": { + "documentation": "JvmShadingRenameRule(pattern: 'str', replacement: 'str')", + "is_target": false, + "name": "shading_rename", + "signature": "(pattern: 'str', replacement: 'str') -> None" + }, + "shading_zap": { + "documentation": "JvmShadingZapRule(pattern: 'str')", + "is_target": false, + "name": "shading_zap", + "signature": "(pattern: 'str') -> None" + }, + "shell_command": { + "documentation": null, + "is_target": true, + "name": "shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_source": { + "documentation": null, + "is_target": true, + "name": "shell_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_sources": { + "documentation": null, + "is_target": true, + "name": "shell_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_test": { + "documentation": null, + "is_target": true, + "name": "shunit2_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_tests": { + "documentation": null, + "is_target": true, + "name": "shunit2_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "stevedore_namespace": { + "documentation": "str(object='') -> str\nstr(bytes_or_buffer[, encoding[, errors]]) -> str\n\nCreate a new string object from the given object. If encoding or\nerrors is specified, then the object must expose a data buffer\nthat will be decoded using the given encoding and error handler.\nOtherwise, returns the result of object.__str__() (if defined)\nor repr(object).\nencoding defaults to sys.getdefaultencoding().\nerrors defaults to 'strict'.", + "is_target": false, + "name": "stevedore_namespace", + "signature": null + }, + "system_binary": { + "documentation": null, + "is_target": true, + "name": "system_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "target": { + "documentation": null, + "is_target": true, + "name": "target", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "terraform_module": { + "documentation": null, + "is_target": true, + "name": "terraform_module", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_source": { + "documentation": null, + "is_target": true, + "name": "thrift_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_sources": { + "documentation": null, + "is_target": true, + "name": "thrift_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "vcs_version": { + "documentation": null, + "is_target": true, + "name": "vcs_version", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + } + }, + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "", + "check", + "environments-preview", + "filter" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependents", + "environments-preview", + "filter" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "environments-preview", + "filter" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "dependents": { + "consumed_scopes": [ + "", + "dependents", + "environments-preview", + "filter" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.core" + }, + "experimental-deploy": { + "consumed_scopes": [ + "", + "environments-preview", + "experimental-deploy", + "filter" + ], + "description": "Perform a deployment process.", + "is_implemented": true, + "name": "experimental-deploy", + "provider": "pants.core" + }, + "experimental-explorer": { + "consumed_scopes": [], + "description": "Run the Pants Explorer Web UI server.", + "is_implemented": true, + "name": "experimental-explorer", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": [ + "", + "environments-preview", + "export", + "filter" + ], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "environments-preview", + "filter" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.core" + }, + "filedeps": { + "consumed_scopes": [ + "", + "environments-preview", + "filedeps", + "filter" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "fix": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "fix" + ], + "description": "Autofix source code.", + "is_implemented": true, + "name": "fix", + "provider": "pants.core" + }, + "fmt": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "", + "environments-preview", + "generate-lockfiles" + ], + "description": "Generate lockfiles for third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "go-generate": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "go-generate", + "go-test", + "golang" + ], + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the //go:generate directives.\n\nSee https://go.dev/blog/generate for details.", + "is_implemented": true, + "name": "go-generate", + "provider": "pants.backend.experimental.go" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "lint" + ], + "description": "Run linters/formatters/fixers in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": [ + "", + "environments-preview", + "filter" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "paths" + ], + "description": "List the paths between two addresses.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "python-dump-source-analysis": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "pex", + "pex-cli", + "python", + "python-bootstrap", + "python-dump-source-analysis", + "python-infer", + "python-native-code", + "source", + "subprocess-environment" + ], + "description": "Dump source analysis for python_source targets.", + "is_implemented": true, + "name": "python-dump-source-analysis", + "provider": "pants.backend.experimental.python" + }, + "repl": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.16/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_rule_info": { + "construct_env_aware_scope_apache_thrift": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_apache_thrift", + "output_type": "EnvironmentAware", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_env_aware_scope_docker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "DockerOptions", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_docker", + "output_type": "EnvironmentAware", + "provider": "pants.backend.docker" + }, + "construct_env_aware_scope_go_generate": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GoGenerateGoalSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_go_generate", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_golang": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GolangSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_golang", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_jvm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "JvmSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_jvm", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.java" + }, + "construct_env_aware_scope_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PexSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_pex", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PythonBootstrapSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_python_bootstrap", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_native_code": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PythonNativeCodeSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_python_native_code", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_shell_setup": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "ShellSetup", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_shell_setup", + "output_type": "EnvironmentAware", + "provider": "pants.backend.shell" + }, + "construct_env_aware_scope_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "SubprocessEnvironment", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_subprocess_environment", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_test": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_test", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_scope_": { + "description": null, + "documentation": "Options to control the overall behavior of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_", + "output_type": "GlobalOptions", + "provider": "pants.core" + }, + "construct_scope_add_trailing_comma": { + "description": null, + "documentation": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_add_trailing_comma", + "output_type": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "construct_scope_anonymous_telemetry": { + "description": null, + "documentation": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + }, + "construct_scope_apache_thrift": { + "description": null, + "documentation": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_autoflake": { + "description": null, + "documentation": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_autoflake", + "output_type": "Autoflake", + "provider": "pants.backend.python.lint.autoflake" + }, + "construct_scope_bandit": { + "description": null, + "documentation": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_bandit", + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + }, + "construct_scope_black": { + "description": null, + "documentation": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_black", + "output_type": "Black", + "provider": "pants.core" + }, + "construct_scope_buf": { + "description": null, + "documentation": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buf", + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "construct_scope_build_deprecations_fixer": { + "description": null, + "documentation": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for: - Renamed targets - Renamed fields", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_build_deprecations_fixer", + "output_type": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "construct_scope_buildifier": { + "description": null, + "documentation": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buildifier", + "output_type": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "construct_scope_check": { + "description": null, + "documentation": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_check", + "output_type": "CheckSubsystem", + "provider": "pants.core" + }, + "construct_scope_count_loc": { + "description": null, + "documentation": "Count lines of code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_count_loc", + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_coursier": { + "description": null, + "documentation": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coursier", + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_coverage_py": { + "description": null, + "documentation": "Configuration for Python test coverage measurement.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_debug_adapter": { + "description": null, + "documentation": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debug_adapter", + "output_type": "DebugAdapterSubsystem", + "provider": "pants.core" + }, + "construct_scope_debugpy": { + "description": null, + "documentation": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debugpy", + "output_type": "DebugPy", + "provider": "pants.backend.python" + }, + "construct_scope_dependencies": { + "description": null, + "documentation": "List the dependencies of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependencies", + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_dependents": { + "description": null, + "documentation": "List all targets that depend on any of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependents", + "output_type": "DependentsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_docformatter": { + "description": null, + "documentation": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docformatter", + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + }, + "construct_scope_docker": { + "description": null, + "documentation": "Options for interacting with Docker.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docker", + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + }, + "construct_scope_dockerfile_parser": { + "description": null, + "documentation": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + }, + "construct_scope_download_terraform": { + "description": null, + "documentation": "Terraform (https://terraform.io)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_experimental_bsp": { + "description": null, + "documentation": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_bsp", + "output_type": "BSPGoal", + "provider": "pants.core" + }, + "construct_scope_experimental_deploy": { + "description": null, + "documentation": "Perform a deployment process.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_deploy", + "output_type": "DeploySubsystem", + "provider": "pants.core" + }, + "construct_scope_export": { + "description": null, + "documentation": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export", + "output_type": "ExportSubsystem", + "provider": "pants.core" + }, + "construct_scope_export_codegen": { + "description": null, + "documentation": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_type": "ExportCodegenSubsystem", + "provider": "pants.core" + }, + "construct_scope_filedeps": { + "description": null, + "documentation": "List all source and BUILD files a target depends on.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filedeps", + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_filter": { + "description": null, + "documentation": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filter", + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_fix": { + "description": null, + "documentation": "Autofix source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fix", + "output_type": "FixSubsystem", + "provider": "pants.core" + }, + "construct_scope_flake8": { + "description": null, + "documentation": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_flake8", + "output_type": "Flake8", + "provider": "pants.backend.python.lint.flake8" + }, + "construct_scope_fmt": { + "description": null, + "documentation": "Autoformat source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fmt", + "output_type": "FmtSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_lockfiles": { + "description": null, + "documentation": "Generate lockfiles for third-party dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_go_generate": { + "description": null, + "documentation": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the //go:generate directives.\n\nSee https://go.dev/blog/generate for details.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_generate", + "output_type": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_go_test": { + "description": null, + "documentation": "Options for Go tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_test", + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_gofmt": { + "description": null, + "documentation": "Gofmt-specific options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_gofmt", + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_golang": { + "description": null, + "documentation": "Options for Golang support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_golang", + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_google_java_format": { + "description": null, + "documentation": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "construct_scope_grpc_python_plugin": { + "description": null, + "documentation": "The gRPC Protobuf plugin for Python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_hadolint": { + "description": null, + "documentation": "A linter for Dockerfiles.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_hadolint", + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + }, + "construct_scope_helm": { + "description": null, + "documentation": "The Helm command line (https://helm.sh)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm", + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_k8s_parser": { + "description": null, + "documentation": "Analyses K8S manifests rendered by Helm.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_k8s_parser", + "output_type": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_post_renderer": { + "description": null, + "documentation": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_post_renderer", + "output_type": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_unittest": { + "description": null, + "documentation": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_unittest", + "output_type": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_ipython": { + "description": null, + "documentation": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ipython", + "output_type": "IPython", + "provider": "pants.backend.python" + }, + "construct_scope_isort": { + "description": null, + "documentation": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_isort", + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + }, + "construct_scope_jarjar": { + "description": null, + "documentation": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jarjar", + "output_type": "JarJar", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_java_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_java_infer", + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_javac": { + "description": null, + "documentation": "The javac Java source compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_javac", + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_junit": { + "description": null, + "documentation": "The JUnit test framework (https://junit.org)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_junit", + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_jvm": { + "description": null, + "documentation": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jvm", + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_kotlin": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin", + "output_type": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlin_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Kotlin targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin_infer", + "output_type": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlinc": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlinc", + "output_type": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_ktlint": { + "description": null, + "documentation": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ktlint", + "output_type": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "construct_scope_lambdex": { + "description": null, + "documentation": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lambdex", + "output_type": "Lambdex", + "provider": "pants.backend.awslambda.python" + }, + "construct_scope_lint": { + "description": null, + "documentation": "Run linters/formatters/fixers in check mode.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lint", + "output_type": "LintSubsystem", + "provider": "pants.core" + }, + "construct_scope_list": { + "description": null, + "documentation": "Lists all targets matching the file or target arguments.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_list", + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_mypy": { + "description": null, + "documentation": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy", + "output_type": "MyPy", + "provider": "pants.backend.python.typecheck.mypy" + }, + "construct_scope_mypy_protobuf": { + "description": null, + "documentation": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_nodejs": { + "description": null, + "documentation": "The NodeJS Javascript runtime (including npm and npx).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_nodejs", + "output_type": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_openapi": { + "description": null, + "documentation": "The OpenAPI Specification (https://swagger.io/specification/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_openapi", + "output_type": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi" + }, + "construct_scope_package": { + "description": null, + "documentation": "Create a distributable package.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_package", + "output_type": "PackageSubsystem", + "provider": "pants.core" + }, + "construct_scope_paths": { + "description": null, + "documentation": "List the paths between two addresses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_paths", + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_peek": { + "description": null, + "documentation": "Display BUILD target info", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_peek", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_pex": { + "description": null, + "documentation": "How Pants uses Pex to run Python subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex", + "output_type": "PexSubsystem", + "provider": "pants.core" + }, + "construct_scope_pex_binary_defaults": { + "description": null, + "documentation": "Default settings for creating PEX executables.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + }, + "construct_scope_pex_cli": { + "description": null, + "documentation": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_type": "PexCli", + "provider": "pants.core" + }, + "construct_scope_preamble": { + "description": null, + "documentation": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's string.Template substitutions): - $year: The current year (only used when actually writing the year to the file).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_preamble", + "output_type": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble" + }, + "construct_scope_protobuf_java_grpc": { + "description": null, + "documentation": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protobuf_java_grpc", + "output_type": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "construct_scope_protoc": { + "description": null, + "documentation": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protoc", + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_publish": { + "description": null, + "documentation": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_publish", + "output_type": "PublishSubsystem", + "provider": "pants.core" + }, + "construct_scope_py_constraints": { + "description": null, + "documentation": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "construct_scope_pydocstyle": { + "description": null, + "documentation": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pydocstyle", + "output_type": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "construct_scope_pylint": { + "description": null, + "documentation": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pylint", + "output_type": "Pylint", + "provider": "pants.backend.python.lint.pylint" + }, + "construct_scope_pyoxidizer": { + "description": null, + "documentation": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "construct_scope_pytest": { + "description": null, + "documentation": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pytest", + "output_type": "PyTest", + "provider": "pants.backend.python" + }, + "construct_scope_python": { + "description": null, + "documentation": "Options for Pants's Python backend.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python", + "output_type": "PythonSetup", + "provider": "pants.core" + }, + "construct_scope_python_bootstrap": { + "description": null, + "documentation": "Options used to locate Python interpreters\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_dump_source_analysis": { + "description": null, + "documentation": "Dump source analysis for python_source targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_dump_source_analysis", + "output_type": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_python_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_infer", + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_python_native_code": { + "description": null, + "documentation": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_type": "PythonNativeCodeSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_protobuf": { + "description": null, + "documentation": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.16/docs/protobuf-python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_python_repos": { + "description": null, + "documentation": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_repos", + "output_type": "PythonRepos", + "provider": "pants.core" + }, + "construct_scope_python_thrift": { + "description": null, + "documentation": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_pyupgrade": { + "description": null, + "documentation": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_type": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "construct_scope_regex_lint": { + "description": null, + "documentation": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_repl": { + "description": null, + "documentation": "Open a REPL with the specified code loadable.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_repl", + "output_type": "ReplSubsystem", + "provider": "pants.core" + }, + "construct_scope_roots": { + "description": null, + "documentation": "List the repo's registered source roots.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_roots", + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_ruff": { + "description": null, + "documentation": "The Ruff Python formatter (https://github.com/charliermarsh/ruff).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ruff", + "output_type": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "construct_scope_run": { + "description": null, + "documentation": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_run", + "output_type": "RunSubsystem", + "provider": "pants.core" + }, + "construct_scope_scala": { + "description": null, + "documentation": "Scala programming language", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala", + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scala_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalac": { + "description": null, + "documentation": "The Scala compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalac", + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalafmt": { + "description": null, + "documentation": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "construct_scope_scalapb": { + "description": null, + "documentation": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalapb", + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "construct_scope_scalatest": { + "description": null, + "documentation": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalatest", + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scc": { + "description": null, + "documentation": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scc", + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + }, + "construct_scope_setup_py_generation": { + "description": null, + "documentation": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools": { + "description": null, + "documentation": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools", + "output_type": "Setuptools", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools_scm": { + "description": null, + "documentation": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools_scm", + "output_type": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_shell_setup": { + "description": null, + "documentation": "Options for Pants's Shell support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + }, + "construct_scope_shell_test": { + "description": null, + "documentation": "Options for Pants' Shell test support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_test", + "output_type": "ShellTestSubsystem", + "provider": "pants.backend.shell" + }, + "construct_scope_shellcheck": { + "description": null, + "documentation": "A linter for shell scripts.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + }, + "construct_scope_shfmt": { + "description": null, + "documentation": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shfmt", + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + }, + "construct_scope_shunit2": { + "description": null, + "documentation": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shunit2", + "output_type": "Shunit2", + "provider": "pants.backend.shell" + }, + "construct_scope_source": { + "description": null, + "documentation": "Configuration for roots of source trees.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_source", + "output_type": "SourceRootConfig", + "provider": "pants.core" + }, + "construct_scope_spectral": { + "description": null, + "documentation": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_spectral", + "output_type": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_stats": { + "description": null, + "documentation": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_stats", + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + }, + "construct_scope_subprocess_environment": { + "description": null, + "documentation": "Environment settings for forked subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + }, + "construct_scope_tailor": { + "description": null, + "documentation": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_tailor", + "output_type": "TailorSubsystem", + "provider": "pants.core" + }, + "construct_scope_terraform_fmt": { + "description": null, + "documentation": "Terraform fmt options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_hcl2_parser": { + "description": null, + "documentation": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_validate": { + "description": null, + "documentation": "Terraform validate options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_test": { + "description": null, + "documentation": "Run tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_test", + "output_type": "TestSubsystem", + "provider": "pants.core" + }, + "construct_scope_thrift": { + "description": null, + "documentation": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_thrift", + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_twine": { + "description": null, + "documentation": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_twine", + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_update_build_files": { + "description": null, + "documentation": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.16/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_yamllint": { + "description": null, + "documentation": "A linter for YAML files (https://yamllint.readthedocs.io)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yamllint", + "output_type": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "construct_scope_yapf": { + "description": null, + "documentation": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yapf", + "output_type": "Yapf", + "provider": "pants.core" + }, + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request": { + "description": "Running run_in_sandbox target", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunInSandboxRequest, {EnvironmentName: .., RunFieldSet: ..})", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., AdhocProcessRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateFilesFromAdhocToolRequest" + ], + "name": "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "SystemBinaryFieldSet" + ], + "name": "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.awslambda.python.rules.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "PythonAwsLambdaCompletePlatforms" + ], + "name": "pants.backend.awslambda.python.rules.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.rules.package_python_awslambda": { + "description": "Create Python AWS Lambda", + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PythonAwsLambdaCompletePlatforms, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonAwsLambdaFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.awslambda.python.rules.package_python_awslambda", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency": { + "description": "Inferring dependency from the python_awslambda `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonAwsHandler, ResolvePythonAwsHandlerRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonLambdaHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.awslambda.python.target_types.infer_lambda_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.target_types.resolve_python_aws_handler": { + "description": "Determining the handler for a `python_awslambda` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonAwsHandlerRequest" + ], + "name": "pants.backend.awslambda.python.target_types.resolve_python_aws_handler", + "output_type": "ResolvedPythonAwsHandler", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix": { + "description": "Fix deprecated field names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameFieldsInFileRequest", + "RenamedFieldTypes" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix": { + "description": "Fix deprecated target type names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameTargetsInFileRequest", + "RenamedTargetTypes" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fmt.black.register.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Black" + ], + "name": "pants.backend.build_files.fmt.black.register.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.black" + }, + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt": { + "description": "Format with Buildifier", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Buildifier", + "Platform" + ], + "name": "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "pants.backend.build_files.fmt.yapf.register.yapf_fmt": { + "description": "Format with Yapf", + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Yapf" + ], + "name": "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Yapf", + "BuildFileOptions" + ], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.codegen.export_codegen_goal.export_codegen": { + "description": "`export-codegen` goal", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "FilteredTargets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_type": "ExportCodegen", + "provider": "pants.core" + }, + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf": { + "description": "Generate Go source files from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets": { + "description": "Map import paths for all Go Protobuf targets.", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "ProtobufGoModuleImportPathsMappingsHook", + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": [ + "GoCodegenBuildProtobufRequest" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "PackageAnalyzerSetup", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProtobufJavaRuntimeForResolve, ProtobufJavaRuntimeForResolveRequest, ..)", + "Get(ProtobufJavaGrpcRuntimeForResolve, ProtobufJavaGrpcRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferProtobufJavaRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaGrpcRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "output_type": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "output_type": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GrpcJavaToolLockfileSentinel", + "JavaProtobufGrpcSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf": { + "description": "Generate Java from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc", + "ProtobufJavaGrpcPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GrpcJavaToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "Platform" + ], + "name": "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "output_type": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format": { + "description": "Format with buf format", + "documentation": null, + "input_gets": [ + "Get(DiffBinary, DiffBinaryRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "BufSubsystem", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_type": "FixResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf": { + "description": "Lint with buf lint", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "BufSubsystem", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_type": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies": { + "description": "Inferring Protobuf dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "InferProtobufDependencies", + "ProtobufMapping", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files": { + "description": "Creating map of Protobuf file names to Protobuf targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules": { + "description": "Creating map of Protobuf targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MypyProtobufLockfileSentinel", + "PythonProtobufMypyPlugin" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.setup_mypy_protobuf_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf": { + "description": "Generate Python from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaPBRuntimeForResolve, ScalaPBRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferScalaPBRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPBRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "output_type": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf": { + "description": "Generate Scala from Protobuf", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalapbcToolLockfileSentinel", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "MaterializeJvmPluginRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "MaterializeJvmPluginsRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ScalaPBSubsystem", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.tailor.find_putative_targets": { + "description": "Determine candidate Protobuf targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets": { + "description": "Find all Protobuf targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules": { + "description": "Creating map of Thrift targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift": { + "description": "Generate Python from Thrift", + "documentation": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "GenerateThriftSourcesRequest", + "ApacheThriftSetup" + ], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem", + "EnvironmentAware", + "EnvironmentTarget" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies": { + "description": "Inferring Thrift dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files": { + "description": "Creating map of Thrift file names to Thrift targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllThriftTargets" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets": { + "description": "Determine candidate Thrift targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets": { + "description": "Find all Thrift targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParsedThriftRequest" + ], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.docker.goals.package_image.build_docker_image": { + "description": null, + "documentation": "Build a Docker image using `docker build`.", + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "DockerPackageFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "KeepSandboxes", + "UnionMembership" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.publish.push_docker_images": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerRunFieldSet", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.tailor.find_putative_targets": { + "description": "Determine candidate Docker targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.lint.hadolint.rules.run_hadolint": { + "description": "Lint with Hadolint", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "Hadolint", + "Platform" + ], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_type": "LintResult", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": [ + "DockerfileInfoRequest" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerfileParserLockfileSentinel", + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "DockerfileParseRequest", + "ParserSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.target_types.all_docker_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.docker.target_types.all_docker_targets", + "output_type": "AllDockerImageTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies": { + "description": null, + "documentation": "Inspects the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "InferDockerDependencies", + "AllPackageableTargets" + ], + "name": "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.find_docker": { + "description": "Finding the `docker` binary and related tooling", + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": [ + "DockerBinaryRequest", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.util_rules.docker_binary.find_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.get_docker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBinary, DockerBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_args.docker_build_args": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerBuildArgsRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "DockerBuildContextRequest" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateDockerContextFiles" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateDockerfileRequest" + ], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)" + ], + "input_types": [ + "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.go_sources.load_go_binary.setup_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "LoadedGoBinaryRequest", + "GoRoot" + ], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.check.check_go": { + "description": "Check Go compilation", + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": [ + "GoCheckRequest" + ], + "name": "pants.backend.go.goals.check.check_go", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.go_generate": { + "description": "`go-generate` goal", + "documentation": null, + "input_gets": [ + "Get(RunPackageGeneratorsResult, RunPackageGeneratorsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Targets", + "Workspace" + ], + "name": "pants.backend.go.goals.generate.go_generate", + "output_type": "GoGenerateGoal", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.merge_digests_with_overwrite": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "OverwriteMergeDigests" + ], + "name": "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "output_type": "Digest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.run_go_package_generators": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, OverwriteMergeDigests, ..)" + ], + "input_types": [ + "RunPackageGeneratorsRequest", + "GoRoot", + "EnvironmentAware" + ], + "name": "pants.backend.go.goals.generate.run_go_package_generators", + "output_type": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.package_binary.package_go_binary": { + "description": "Package Go binary", + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.create_go_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_package_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "FindPutativeGoPackageTargetRequest", + "AllOwnedSources" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_package_target", + "output_type": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_targets": { + "description": "Determine candidate Go targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FindPutativeGoPackageTargetResult, FindPutativeGoPackageTargetRequest, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources", + "GolangSubsystem" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.prepare_go_test_binary": { + "description": "Prepare Go test binary", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(GenerateCoverageSetupCodeResult, GenerateCoverageSetupCodeRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "PrepareGoTestBinaryRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.goals.test.prepare_go_test_binary", + "output_type": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.run_go_tests": { + "description": "Test with Go", + "documentation": null, + "input_gets": [ + "Get(FalliblePrepareGoTestBinaryResult, PrepareGoTestBinaryRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "GoTestSubsystem", + "TestExtraEnv", + "GoRoot" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.lint.gofmt.rules.gofmt_fmt": { + "description": "Format with gofmt", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "GofmtSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.generate_targets_from_go_mod": { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "documentation": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromGoModRequest", + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_map_import_paths_by_module": { + "description": "Analyze and map Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis": { + "description": "Analyze Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMappings, GoModuleImportPathsMappingsHook, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.go_merge_import_paths_analysis", + "output_type": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_dependencies": { + "description": "Infer dependencies for first-party Go packages", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": [ + "InferGoPackageDependenciesRequest" + ], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies": { + "description": "Infer dependencies for third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": [ + "InferGoThirdPartyPackageDependenciesRequest" + ], + "name": "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.map_import_paths_to_packages": { + "description": "Map Go targets owned by module to import paths", + "documentation": null, + "input_gets": [], + "input_types": [ + "GoImportPathMappingRequest", + "AllGoModuleImportPathsMappings" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_type": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssembleGoAssemblyFilesRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "output_type": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GenerateAssemblySymabisRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "output_type": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary": { + "description": "Determine first-party package used by `go_binary` target", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "GoBinaryMainPackageRequest" + ], + "name": "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "InferGoBinaryMainDependencyRequest" + ], + "name": "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "GoBuildOptionsFromTargetRequest", + "GoRoot", + "GolangSubsystem", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "output_type": "GoBuildOptions", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.build_go_package": { + "description": "Compile with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(ApplyCodeCoverageResult, ApplyCodeCoverageRequest, ..)", + "Get(CheckForGolangAssemblyResult, CheckForGolangAssemblyRequest, ..)", + "Get(CGoCompileResult, CGoCompileRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleGenerateAssemblySymabisResult, GenerateAssemblySymabisRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(FallibleAssembleGoAssemblyFilesResult, AssembleGoAssemblyFilesRequest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BuildGoPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly": { + "description": null, + "documentation": "Return true if any of the given `s_files` look like it could be a Golang-format assembly\nlanguage file.\n\nThis is used by the cgo rules as a heuristic to determine if the user is passing Golang assembly\nformat instead of gcc assembly format.", + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CheckForGolangAssemblyRequest", + "SetupAsmCheckBinary" + ], + "name": "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "output_type": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)" + ], + "input_types": [ + "GoCompileActionIdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.render_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.required_built_go_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuiltGoPackage" + ], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "output_type": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuildGoPackageRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "_ResolveStdlibEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "output_type": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request": { + "description": "Set up Go compilation request", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(_ResolveStdlibEmbedConfigResult, _ResolveStdlibEmbedConfigRequest, ..)" + ], + "input_types": [ + "BuildGoPackageRequestForStdlibRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.cgo_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CGoPkgConfigFlagsResult, CGoPkgConfigFlagsRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(CGoCompilerWrapperScript, CGoCompilerWrapperScriptRequest, ..)", + "Get(SetupCompilerCmdResult, SetupCompilerCmdRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "CGoCompileRequest", + "GoRoot", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.cgo.cgo_compile_request", + "output_type": "CGoCompileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "CheckCompilerSupportsFlagRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "output_type": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CGoCompilerWrapperScriptRequest" + ], + "name": "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "output_type": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.setup_compiler_cmd": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CheckCompilerSupportsOptionResult, CheckCompilerSupportsFlagRequest, ..)" + ], + "input_types": [ + "SetupCompilerCmdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "output_type": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "CGoBinaryPathRequest", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "output_type": "BinaryPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CGoPkgConfigFlagsRequest" + ], + "name": "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "output_type": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateCoverageSetupCodeRequest" + ], + "name": "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "output_type": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(ApplyCodeCoverageToFileResult, ApplyCodeCoverageToFileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ApplyCodeCoverageRequest" + ], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "output_type": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ApplyCodeCoverageToFileRequest" + ], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "output_type": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "RenderGoCoverageProfileToHtmlRequest" + ], + "name": "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "output_type": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports": { + "description": "Merge Go coverage data", + "documentation": null, + "input_gets": [ + "Get(RenderGoCoverageReportResult, RenderGoCoverageReportRequest, ..)" + ], + "input_types": [ + "GoCoverageDataCollection" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(RenderGoCoverageProfileToHtmlResult, RenderGoCoverageProfileToHtmlRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "RenderGoCoverageReportRequest", + "DistDir", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "output_type": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgAnalysisRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": [ + "FirstPartyPkgImportPathRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgDigestRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GolangSubsystem", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "output_type": "GoBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.determine_go_mod_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoModInfoRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets": { + "description": "Find all `go_mod` targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "output_type": "AllGoModTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, RawSpecs, ..)" + ], + "input_types": [ + "NearestAncestorGoModRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "output_type": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_owning_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(NearestAncestorGoModResult, NearestAncestorGoModRequest, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(Address, AddressInput, ..)" + ], + "input_types": [ + "OwningGoModRequest", + "AllGoModTargets" + ], + "name": "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.goroot.setup_goroot": { + "description": "Find Go binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GolangSubsystem", + "GoBootstrap", + "EnvironmentTarget" + ], + "name": "pants.backend.go.util_rules.goroot.setup_goroot", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltGoPackage, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SdkImplicitLinkerDependenciesHook" + ], + "name": "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "output_type": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages": { + "description": "Analyze Go standard library packages.", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoStdLibPackagesRequest" + ], + "name": "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "output_type": "GoStdLibPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_config.generate_import_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ImportConfigRequest" + ], + "name": "pants.backend.go.util_rules.import_config.generate_import_config", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.link_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ImplicitLinkerDependencies, ImplicitLinkerDependenciesHook, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "LinkGoBinaryRequest", + "LinkerSetup", + "UnionMembership" + ], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.setup_go_linker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "BashBinary", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.link.setup_go_linker", + "output_type": "LinkerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.compute_go_tool_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoSdkToolIDRequest" + ], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.setup_go_sdk_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "EnvironmentAware", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.tests_analysis.generate_testmain": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GenerateTestMainRequest" + ], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyModuleRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyPackageRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ModuleDescriptorsRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages": { + "description": "Download and analyze all third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": [ + "AllThirdPartyPackagesRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.extract_package_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "ThirdPartyPkgAnalysisRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.google_cloud_function.python.rules.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "PythonGoogleCloudFunctionCompletePlatforms" + ], + "name": "pants.backend.google_cloud_function.python.rules.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function": { + "description": "Create Python Google Cloud Function", + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PythonGoogleCloudFunctionCompletePlatforms, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PythonGoogleCloudFunctionFieldSet", + "Lambdex", + "Platform", + "UnionMembership" + ], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency": { + "description": "Inferring dependency from the python_google_cloud_function `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonGoogleHandler, ResolvePythonGoogleHandlerRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonCloudFunctionHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.google_cloud_function.python.target_types.infer_cloud_function_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler": { + "description": "Determining the handler for a `python_google_cloud_function` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonGoogleHandlerRequest" + ], + "name": "pants.backend.google_cloud_function.python.target_types.resolve_python_google_cloud_function_handler", + "output_type": "ResolvedPythonGoogleHandler", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "output_type": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata": { + "description": "Inferring Helm chart dependencies", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "InferHelmChartDependenciesRequest", + "FirstPartyHelmChartMapping", + "ThirdPartyHelmArtifactMapping", + "HelmSubsystem" + ], + "name": "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.analyse_deployment": { + "description": "Analyse Helm deployment", + "documentation": null, + "input_gets": [ + "Get(RenderedHelmFiles, HelmDeploymentRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ParsedKubeManifest, ParseKubeManifestRequest, ..)" + ], + "input_types": [ + "AnalyseHelmDeploymentRequest" + ], + "name": "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "output_type": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmDeploymentReport, AnalyseHelmDeploymentRequest, ..)" + ], + "input_types": [ + "FirstPartyHelmDeploymentMappingRequest", + "AllDockerImageTargets" + ], + "name": "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "output_type": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies": { + "description": "Find the dependencies needed by a Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)" + ], + "input_types": [ + "InferHelmDeploymentDependenciesRequest" + ], + "name": "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)" + ], + "input_types": [ + "InferHelmUnitTestChartDependencyRequest", + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.deploy.run_helm_deploy": { + "description": "Run Helm deploy process", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmPostRenderer, HelmDeploymentPostRendererRequest, ..)", + "Get(InteractiveProcess, HelmDeploymentRequest, ..)" + ], + "input_types": [ + "DeployHelmDeploymentFieldSet", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.deploy.run_helm_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.partition_helm_lint": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)" + ], + "input_types": [ + "PartitionRequest" + ], + "name": "pants.backend.helm.goals.lint.partition_helm_lint", + "output_type": "Partitions", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.run_helm_lint": { + "description": "Lint Helm charts", + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, HelmProcess, ..)" + ], + "input_types": [ + "Batch", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.package.run_helm_package": { + "description": "Package Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmPackageFieldSet" + ], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.publish.publish_helm_chart": { + "description": "Push Helm chart to OCI registries", + "documentation": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)" + ], + "input_types": [ + "PublishHelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.publish.publish_helm_chart", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.tailor.find_putative_helm_targets": { + "description": "Determine candidate Helm chart targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeHelmChartTargetsRequest", + "AllOwnedSources", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmArtifact", + "HelmSubsystem" + ], + "name": "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "output_type": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedHelmArtifact, HelmArtifact, ..)" + ], + "input_types": [ + "AllHelmArtifactTargets" + ], + "name": "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "output_type": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch.fetch_helm_artifact": { + "description": "Fetch Helm artifact", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ResolvedHelmArtifact, HelmArtifact, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "FetchHelmArtifactRequest" + ], + "name": "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "output_type": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "HelmKubeParserSubsystem" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "output_type": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest": { + "description": "Parse Kubernetes resource manifest", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseKubeManifestRequest", + "_HelmKubeParserTool" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "output_type": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmKubeParserLockfileSentinel", + "HelmKubeParserSubsystem" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.setup_k8s_parser_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher": { + "description": "Configure Helm post-renderer", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupHelmPostRenderer", + "_HelmPostRendererTool", + "CatBinary" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "output_type": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool": { + "description": "Setup Helm post renderer binaries", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "HelmPostRendererSubsystem" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "output_type": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmPostRendererLockfileSentinel", + "HelmPostRendererSubsystem" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_postrenderer_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestPluginBinding", + "HelmUnitTestSubsystem", + "Platform" + ], + "name": "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "output_type": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_artifact_targets", + "output_type": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_chart_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_chart_targets", + "output_type": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_deployment_targets", + "output_type": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_unittest_test_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "output_type": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.run_helm_unittest": { + "description": "Run Helm Unittest", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.test.unittest.run_helm_unittest", + "output_type": "TestResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.create_chart_from_artifact": { + "description": "Compile third parth Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "FetchedHelmArtifact" + ], + "name": "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.find_chart_for_deployment": { + "description": "Find Helm deployment's chart", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)" + ], + "input_types": [ + "FindHelmDeploymentChart" + ], + "name": "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.get_helm_chart": { + "description": "Compile Helm chart", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParseHelmChartMetadataDigest" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "HelmChartMetaSourceField" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "HelmChartMetadata" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment": { + "description": "Prepare Helm deployment post-renderer", + "documentation": null, + "input_gets": [ + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)", + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)" + ], + "input_types": [ + "HelmDeploymentPostRendererRequest", + "UnionMembership", + "DockerOptions" + ], + "name": "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "output_type": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)" + ], + "input_types": [ + "_HelmDeploymentProcessWrapper" + ], + "name": "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.run_renderer": { + "description": "Render Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "_HelmDeploymentProcessWrapper" + ], + "name": "pants.backend.helm.util_rules.renderer.run_renderer", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process": { + "description": "Prepare Helm deployment renderer", + "documentation": null, + "input_gets": [ + "Get(HelmChart, FindHelmDeploymentChart, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "HelmDeploymentRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "output_type": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.find_chart_source_root": { + "description": "Detect Helm chart source root", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "HelmChartRootRequest" + ], + "name": "pants.backend.helm.util_rules.sources.find_chart_source_root", + "output_type": "HelmChartRoot", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.get_helm_source_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartSourceFilesRequest" + ], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.all_helm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmPlugin, ExternalHelmPluginBinding, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.helm.util_rules.tool.all_helm_plugins", + "output_type": "HelmPlugins", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.download_external_helm_plugin": { + "description": "Download external Helm plugin", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ExternalHelmPluginRequest" + ], + "name": "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "output_type": "HelmPlugin", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.helm_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "HelmProcess", + "HelmBinary", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.setup_helm": { + "description": "Download and configure Helm", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "HelmSubsystem", + "HelmPlugins", + "Platform" + ], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.java.bsp.rules.bsp_java_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_java_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_javac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": [ + "JavacOptionsParams" + ], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaBSPBuildTargetsMetadataRequest" + ], + "name": "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.handle_bsp_java_options_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HandleJavacOptionsRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.compile.javac.compile_java_source": { + "description": "Compile with javac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "JvmSubsystem", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.java.dependency_inference.java_parser.build_processors", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaParserToolLockfileSentinel" + ], + "name": "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SourceFiles" + ], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis": { + "description": "Inferring Java dependencies and exports by source analysis", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis": { + "description": "Inferring Java dependencies by source analysis", + "documentation": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": [ + "InferJavaSourceDependencies" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets": { + "description": "Find all Java targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols": { + "description": "Map all first party Java targets to their packages", + "documentation": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.check.javac_check": { + "description": "Check javac compilation", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "JavacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.goals.check.javac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.tailor.find_putative_targets": { + "description": "Determine candidate Java targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources", + "JavacSubsystem" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt": { + "description": "Format with Google Java Format", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "GoogleJavaFormatSubsystem", + "InternalJdk" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.javascript.subsystems.nodejs.setup_npx_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "NpxProcess", + "NodeJS", + "NamedCachesDirOption", + "Platform" + ], + "name": "pants.backend.javascript.subsystems.nodejs.setup_npx_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source": { + "description": "Compile with kotlinc", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(KotlincPluginTargetsForTarget, KotlincPluginsForTargetRequest, ..)", + "Get(KotlincPlugins, KotlincPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinSubsystem", + "KotlincSubsystem", + "CompileKotlinSourceRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlincPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "output_type": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "output_type": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "KotlincPluginsRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "output_type": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "KotlincPluginsForTargetRequest", + "AllKotlincPluginTargets", + "JvmSubsystem", + "KotlincSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "output_type": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinParserCompiledClassfiles", + "SourceFiles" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "output_type": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinParserToolLockfileSentinel" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleKotlinSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "output_type": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "output_type": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis": { + "description": "Inferring Kotlin dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferKotlinSourceDependencies", + "KotlinInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency": { + "description": "Infer dependency on Kotlin runtime artifacts for Kotlin targets.", + "documentation": null, + "input_gets": [ + "Get(KotlinRuntimeForResolve, KotlinRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferKotlinRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "output_type": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets": { + "description": "Find all Kotlin targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "output_type": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols": { + "description": "Map all first party Kotlin targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyKotlinTargetsMappingRequest", + "AllKotlinTargets", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.check.kotlinc_check": { + "description": "Check compilation for Kotlin", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "KotlincCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.kotlin.goals.check.kotlinc_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.tailor.find_putative_targets": { + "description": "Determine candidate Kotlin targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeKotlinTargetsRequest", + "AllOwnedSources", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KtlintToolLockfileSentinel", + "KtlintSubsystem" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt": { + "description": "Format with Ktlint", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KtlintToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "KtlintSubsystem", + "InternalJdk" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency": { + "description": "Infer dependency on Kotlin Junit support artifact.", + "documentation": null, + "input_gets": [ + "Get(KotlinJunitLibrariesForResolve, KotlinJunitLibrariesForResolveRequest, ..)" + ], + "input_types": [ + "InferKotlinJunitTestDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinJunitLibrariesForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "output_type": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferOpenApiDocumentDependenciesRequest" + ], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferOpenApiSourceDependenciesRequest" + ], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.parse_openapi_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParseOpenApiSources" + ], + "name": "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "output_type": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.goals.tailor.find_putative_targets": { + "description": "Determine candidate OpenAPI targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)" + ], + "input_types": [ + "PutativeOpenApiTargetsRequest", + "AllOwnedSources", + "OpenApiSubsystem" + ], + "name": "pants.backend.openapi.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.lint.spectral.rules.run_spectral": { + "description": "Lint with Spectral", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, NpxProcess, ..)" + ], + "input_types": [ + "Batch", + "SpectralSubsystem" + ], + "name": "pants.backend.openapi.lint.spectral.rules.run_spectral", + "output_type": "LintResult", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + "pants.backend.project_info.count_loc.count_loc": { + "description": "`count-loc` goal", + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsPaths", + "Platform" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependencies.dependencies": { + "description": "`dependencies` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "Addresses", + "DependenciesSubsystem" + ], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.dependents_goal": { + "description": "`dependents` goal", + "documentation": null, + "input_gets": [ + "Get(Dependents, DependentsRequest, ..)" + ], + "input_types": [ + "Addresses", + "DependentsSubsystem", + "Console" + ], + "name": "pants.backend.project_info.dependents.dependents_goal", + "output_type": "DependentsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.find_dependents": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependentsRequest", + "AddressToDependents" + ], + "name": "pants.backend.project_info.dependents.find_dependents", + "output_type": "Dependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.map_addresses_to_dependents": { + "description": "Map all targets to their dependents", + "documentation": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.project_info.dependents.map_addresses_to_dependents", + "output_type": "AddressToDependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filedeps.file_deps": { + "description": "`filedeps` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "Console", + "FiledepsSubsystem", + "BuildRoot", + "Addresses" + ], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filter_targets.filter_targets": { + "description": "`filter` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Addresses", + "FilterSubsystem", + "Console" + ], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_roots.list_roots": { + "description": "`roots` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Console", + "RootsSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_type": "Roots", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_targets.list_targets": { + "description": "`list` goal", + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "Addresses", + "ListSubsystem", + "Console" + ], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_type": "List", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.paths": { + "description": "`paths` goal", + "documentation": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "PathsSubsystem" + ], + "name": "pants.backend.project_info.paths.paths", + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.get_target_data": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OptionalAddressFamily, AddressFamilyDir, ..)", + "Get(DependenciesRuleApplication, DependenciesRuleApplicationRequest, ..)" + ], + "input_types": [ + "UnexpandedTargets", + "PeekSubsystem" + ], + "name": "pants.backend.project_info.peek.get_target_data", + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.peek": { + "description": "`peek` goal", + "documentation": null, + "input_gets": [ + "Get(TargetDatas, UnexpandedTargets, ..)" + ], + "input_types": [ + "Console", + "PeekSubsystem", + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.peek", + "output_type": "Peek", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.lint_with_regex_patterns": { + "description": "Lint with regex patterns", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "Batch", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_type": "LintResult", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.project_info" + }, + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects": { + "description": "Find all Python targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules": { + "description": "Creating map of first party Python targets to Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses": { + "description": "Creating map of third party targets to Python modules", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "PythonInferSubsystem", + "GeneralPythonDependencyVisitorRequest" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "output_type": "PythonDependencyVisitor", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonDependencyVisitor, PythonDependencyVisitorRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "output_type": "ParserScript", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ParsePythonDependenciesRequest", + "ParserScript" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "UnownedImportPossibleOwnerRequest", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "output_type": "UnownedImportPossibleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies": { + "description": "Inferring dependencies on `conftest.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source": { + "description": "Inferring Python dependencies by analyzing source", + "documentation": null, + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies": { + "description": "Inferring dependencies on `__init__.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies": { + "description": null, + "documentation": "Find the owning targets for the parsed dependencies.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargets, AllAssetTargetsRequest, ..)", + "Get(AllAssetTargetsByPath, AllAssetTargets, ..)" + ], + "input_types": [ + "ResolvedParsedPythonDependenciesRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "output_type": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points": { + "description": "Find all `python_distribution` targets with `stevedore_namespace` entry_points", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "output_type": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces": { + "description": "Find `python_distribution` targets with entry_points in selected `stevedore_namespace`s", + "documentation": null, + "input_gets": [], + "input_types": [ + "StevedoreNamespacesProviderTargetsRequest", + "StevedoreExtensions" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces", + "output_type": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies": { + "description": "Infer dependencies based on `stevedore_namespaces` field.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferStevedoreNamespacesDependencies" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions": { + "description": "Create map of `stevedore_namespace` to `python_distribution` targets", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllStevedoreExtensionTargets" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions", + "output_type": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension": { + "description": "Generate entry_points.txt to imitate `python_distribution` installation.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(Paths, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateEntryPointsTxtFromStevedoreExtensionRequest" + ], + "name": "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.generate_coverage_reports": { + "description": "Generate Pytest coverage reports", + "documentation": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "KeepSandboxes", + "DistDir" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.merge_coverage_data": { + "description": "Merge Pytest coverage data", + "documentation": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "CoveragePyLockfileSentinel", + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis": { + "description": "`python-dump-source-analysis` goal", + "documentation": null, + "input_gets": [ + "Get(PythonSourceAnalysis, PythonImportDependenciesInferenceFieldSet, ..)" + ], + "input_types": [ + "DumpPythonSourceAnalysisSubsystem", + "Targets", + "Console" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis", + "output_type": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single": { + "description": null, + "documentation": "Infer the dependencies for a single python fieldset, keeping all the intermediate results.", + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "PythonImportDependenciesInferenceFieldSet", + "PythonSetup" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "output_type": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.export.do_export": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(ProcessResult, PexProcess, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "VenvExportRequest", + "PexPEX", + "PexEnvironment", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.do_export", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "ExportPythonTool" + ], + "name": "pants.backend.python.goals.export.export_tool", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportPythonTool, ExportPythonToolSentinel, ..)", + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "_ExportVenvForResolveRequest", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "output_type": "MaybeExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv_for_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequest, RequirementsPexRequest, ..)", + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "_ExportVenvRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.export.export_virtualenv_for_targets", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenvs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeExportResult, _ExportVenvForResolveRequest, ..)", + "Get(ExportResult, _ExportVenvRequest, ..)", + "Get(ExportPythonTool, ExportPythonToolSentinel, ..)", + "Get(ExportResult, ExportPythonTool, ..)" + ], + "input_types": [ + "ExportVenvsRequest", + "PythonSetup", + "DistDir", + "UnionMembership", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_type": "ExportResults", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.lockfile.determine_python_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownPythonUserResolveNamesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.generate_lockfile": { + "description": "Generate Python lockfile", + "documentation": null, + "input_gets": [ + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "GenerateLockfilesSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonSyntheticLockfileTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "output_type": "SyntheticAddressMaps", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratePythonLockfile" + ], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.docker" + }, + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexFromTargetsRequest, ..)" + ], + "input_types": [ + "PexFromTargetsRequestForBuiltPackage" + ], + "name": "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.package_pex_binary.package_pex_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_type": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.publish.twine_upload": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.pytest_runner.debug_python_test": { + "description": "Set up Pytest to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.debugpy_python_test": { + "description": "Set up debugpy to run an interactive Pytest session", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch", + "DebugPy", + "DebugAdapterSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.partition_python_tests": { + "description": "Partition Pytest", + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.pytest_runner.partition_python_tests", + "output_type": "Partitions", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": [ + "AllPytestPluginSetupsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_python_tests": { + "description": "Run Pytest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem" + ], + "name": "pants.backend.python.goals.pytest_runner.run_python_tests", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_runtime_packages": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "RuntimePackagesPluginRequest" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_ipython_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_python_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonRepl", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexFromTargetsRequestForBuiltPackage, PexBinaryFieldSet, ..)", + "Get(BuiltPackage, PexFromTargetsRequestForBuiltPackage, ..)", + "Get(PythonExecutable, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "PexBinaryFieldSet" + ], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)" + ], + "input_types": [ + "PythonRequirementFieldSet", + "PexEnvironment", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "DebugPy", + "DebugAdapterSubsystem", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SetupKwargs, SetupKwargsRequest, ..)" + ], + "input_types": [ + "ExportedTarget", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.determine_explicitly_provided_setup_kwargs", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.determine_finalized_setup_kwargs", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.generate_chroot": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.generate_chroot", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.generate_setup_py": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.goals.setup_py.generate_setup_py", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_exporting_owner": { + "description": "Get exporting owner for target", + "documentation": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "OwnedDependency" + ], + "name": "pants.backend.python.goals.setup_py.get_exporting_owner", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_owned_dependencies": { + "description": "Find all code to be published in the distribution", + "documentation": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_owned_dependencies", + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_requirements": { + "description": "Compute distribution's 3rd party requirements", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.goals.setup_py.get_requirements", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.get_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.get_sources", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.setup_py.package_python_dist": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.setup_py.package_python_dist", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.tailor.find_putative_targets": { + "description": "Determine candidate Python targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt": { + "description": "Format with add-trailing-comma", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "AddTrailingComma" + ], + "name": "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AddTrailingCommaExportSentinel", + "AddTrailingComma" + ], + "name": "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AddTrailingCommaLockfileSentinel", + "AddTrailingComma" + ], + "name": "pants.backend.python.lint.add_trailing_comma.subsystem.setup_add_trailing_comma_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.autoflake.rules.autoflake_fix": { + "description": "Fix with Autoflake", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.backend.python.lint.autoflake.subsystem.autoflake_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AutoflakeExportSentinel", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AutoflakeLockfileSentinel", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.subsystem.setup_autoflake_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint": { + "description": "Lint with Bandit", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Bandit" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.rules.partition_bandit": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.rules.partition_bandit", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.bandit_export": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditExportSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.bandit_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BanditLockfileSentinel", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.black.rules.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Black" + ], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.rules.partition_black": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.rules.partition_black", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.black_export": { + "description": "Determine Black interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackExportSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.black_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.setup_black_lockfile": { + "description": "Determine Black interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "BlackLockfileSentinel", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.docformatter.rules.docformatter_fmt": { + "description": "Format with docformatter", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.docformatter.subsystem.docformatter_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DocformatterExportSentinel", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DocformatterLockfileSentinel", + "Docformatter" + ], + "name": "pants.backend.python.lint.docformatter.subsystem.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.flake8.rules.partition_flake8": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.partition_flake8", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.rules.run_flake8": { + "description": "Lint with Flake8", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Flake8", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.run_flake8", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_export": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8ExportSentinel", + "Flake8", + "Flake8FirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Flake8" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "Flake8LockfileSentinel", + "Flake8FirstPartyPlugins", + "Flake8", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.isort.rules.isort_fmt": { + "description": "Format with isort", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Isort" + ], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.isort.subsystem.isort_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "IsortExportSentinel", + "Isort" + ], + "name": "pants.backend.python.lint.isort.subsystem.isort_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "IsortLockfileSentinel", + "Isort" + ], + "name": "pants.backend.python.lint.isort.subsystem.setup_isort_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint": { + "description": "Lint with Pydocstyle", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "Batch", + "Pydocstyle" + ], + "name": "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export": { + "description": "Determine all Python interpreter versions used by Pydocstyle in your project (for `export` goal)", + "documentation": null, + "input_gets": [], + "input_types": [ + "PydocstyleExportSentinel", + "Pydocstyle" + ], + "name": "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile": { + "description": "Determine all Python interpreter versions used by Pydocstyle in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PydocstyleLockfileSentinel", + "Pydocstyle", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.backend.python.lint.pylint.rules.partition_pylint": { + "description": "Determine if necessary to partition Pylint input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Pylint", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.partition_pylint", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.run_pylint": { + "description": "Lint using Pylint", + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PexResolveInfo, Pex, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Pylint", + "PylintFirstPartyPlugins", + "PexEnvironment" + ], + "name": "pants.backend.python.lint.pylint.rules.run_pylint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_export": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PylintExportSentinel", + "Pylint", + "PylintFirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PylintLockfileSentinel", + "PylintFirstPartyPlugins", + "Pylint", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix": { + "description": "Fix with pyupgrade", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyUpgradeExportSentinel", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyUpgradeLockfileSentinel", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.subsystem.setup_pyupgrade_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.backend.python.lint.ruff.rules.ruff_fix": { + "description": "Fix with ruff", + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, _RunRuffRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Ruff" + ], + "name": "pants.backend.python.lint.ruff.rules.ruff_fix", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.ruff_lint": { + "description": "Lint with ruff", + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, _RunRuffRequest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.python.lint.ruff.rules.ruff_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.run_ruff": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "_RunRuffRequest", + "Ruff" + ], + "name": "pants.backend.python.lint.ruff.rules.run_ruff", + "output_type": "FallibleProcessResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.subsystem.ruff_export": { + "description": "Determine all Python interpreter versions used by ruff in your project (for `export` goal)", + "documentation": null, + "input_gets": [], + "input_types": [ + "RuffExportSentinel", + "Ruff" + ], + "name": "pants.backend.python.lint.ruff.subsystem.ruff_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.subsystem.setup_ruff_lockfile": { + "description": "Determine all Python interpreter versions used by ruff in your project (for lockfile generation)", + "documentation": null, + "input_gets": [], + "input_types": [ + "RuffLockfileSentinel", + "Ruff" + ], + "name": "pants.backend.python.lint.ruff.subsystem.setup_ruff_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.yapf.rules.yapf_fmt": { + "description": "Format with yapf", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YapfLockfileSentinel", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.subsystem.setup_yapf_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.lint.yapf.subsystem.yapf_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YapfExportSentinel", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.subsystem.yapf_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements": { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.python_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from requirements.txt or PEP 621 compliant pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints": { + "description": "`py-constraints` goal", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependents, DependentsRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary", + "Platform" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyoxidizerLockfileSentinel", + "PyOxidizer" + ], + "name": "pants.backend.python.packaging.pyoxidizer.subsystem.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DebugPyLockfileSentinel", + "DebugPy" + ], + "name": "pants.backend.python.subsystems.debugpy.setup_debugpy_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile": { + "description": "Determine all Python interpreter versions used by iPython in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "IPythonLockfileSentinel", + "IPython", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "LambdexLockfileSentinel", + "Lambdex" + ], + "name": "pants.backend.python.subsystems.lambdex.setup_lambdex_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.subsystems.pytest.pytest_export": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PytestExportSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.pytest_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "PytestLockfileSentinel", + "PyTest", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile": { + "description": "Determine all Python interpreter versions used by setuptools in your project (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "SetuptoolsLockfileSentinel", + "Setuptools", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SetuptoolsSCMLockfileSentinel", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.subsystems.setuptools_scm.setup_setuptools_scm_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.subsystems.twine.setup_twine_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TwineLockfileSentinel", + "TwineSubsystem" + ], + "name": "pants.backend.python.subsystems.twine.setup_twine_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateTargetsFromPexBinaries", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency": { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies": { + "description": null, + "documentation": "Infer dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_files_generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonResolveFieldDefaultFactoryRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_pex_entry_point": { + "description": "Determining the entry point for a `pex_binary` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePexEntryPointRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points": { + "description": "Determining the entry points for a `python_distribution` target", + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "ResolvePythonDistributionEntryPointsRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.validate_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "PythonValidateDependenciesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.validate_python_dependencies", + "output_type": "ValidatedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment": { + "description": "Get mypyc build environment", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)" + ], + "input_types": [ + "MyPycDistBuildEnvironmentRequest", + "MyPyFirstPartyPlugins", + "MyPyConfigFile", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "output_type": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions": { + "description": "Determine if necessary to partition MyPy input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck": { + "description": "Typecheck using MyPy", + "documentation": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "BuildRoot", + "MyPy", + "PythonSetup", + "MkdirBinary", + "MktempBinary", + "CpBinary", + "MvBinary", + "LnBinary", + "GlobalOptions" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_export": { + "description": "Determine MyPy interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyExportSentinel", + "MyPy", + "PythonSetup", + "MyPyFirstPartyPlugins" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile": { + "description": "Set up lockfile request for [mypy].extra_type_stubs", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyExtraTypeStubsLockfileSentinel", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile": { + "description": "Determine MyPy interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [ + "MyPyLockfileSentinel", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "AncestorFilesRequest" + ], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.find_build_system": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "BuildSystemRequest", + "Setuptools" + ], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.run_pep517_build": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DistBuildRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.build_local_dists": { + "description": "Building local distributions", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "LocalDistsPexRequest" + ], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex.build_pex": { + "description": null, + "documentation": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(ReqStrings, PexRequirements, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "PexRequest", + "PythonSetup", + "PexSubsystem" + ], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_type": "BuildPexResult", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_optional_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)" + ], + "input_types": [ + "OptionalPexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_type": "OptionalPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)" + ], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_type": "Pex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_venv_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexRequest", + "BashBinary", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_type": "VenvPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, PexProcess, ..)" + ], + "input_types": [ + "PexPEX", + "Pex" + ], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "VenvPex" + ], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "UnparsedAddressInputs" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "PexCompletePlatformsField" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.find_interpreter": { + "description": "Find Python interpreter for constraints", + "documentation": null, + "input_gets": [ + "Get(PythonExecutable, PythonProvider, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexSubsystem", + "EnvironmentTarget", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_type": "PythonExecutable", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.get_req_strings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "PexRequirements" + ], + "name": "pants.backend.python.util_rules.pex.get_req_strings", + "output_type": "ReqStrings", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_venv_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.wrap_venv_prex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PexRequest", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_type": "VenvPexRequest", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.download_pex_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "PexCli", + "Platform" + ], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_type": "PexPEX", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonBuildStandaloneBinary", + "EnvironmentAware", + "GlobalOptions", + "PexSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_environment.find_pex_python": { + "description": "Prepare environment for running PEXes", + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBuildStandaloneBinary", + "PexSubsystem", + "EnvironmentAware", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_type": "PexEnvironment", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "ChosenPythonResolveRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_type": "PexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequirementsPexRequest" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_RepositoryPexRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "InterpreterConstraintsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ResolvePexConfigRequest", + "PythonSetup", + "PythonRepos", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "output_type": "ResolvePexConfig", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Resolve", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "output_type": "Lockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.load_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "LoadedLockfileRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_type": "LoadedLockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.python_sources.prepare_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "PythonSourceFilesRequest", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.python_sources.strip_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFiles, ..)" + ], + "input_types": [ + "PythonSourceFiles" + ], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets": { + "description": "Find all vcs_version targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "output_type": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeGitWorktree, GitWorktreeRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GeneratePythonFromSetuptoolsSCMRequest", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllVCSVersionTargets", + "PythonSetup", + "PythonVCSVersionMappingMarker" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ReadlinkBinary, ReadlinkBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsMetadataRequest", + "BashBinary", + "JvmSubsystem", + "ScalaSubsystem", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaMainClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request", + "output_type": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaTestClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request", + "output_type": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": [ + "ScalacOptionsParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.collect_thirdparty_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ThirdpartyModulesRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "output_type": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "HandleScalacOptionsRequest", + "BuildRoot", + "Workspace" + ], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPDependencyModulesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "output_type": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.compile_scala_source": { + "description": "Compile with scalac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.fetch_scala_library": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "ScalaLibraryRequest" + ], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.fetch_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaPluginsRequest" + ], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis": { + "description": "Inferring Scala dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency": { + "description": "Infer dependency on scala-library artifact for Scala target.", + "documentation": null, + "input_gets": [ + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferScalaLibraryDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies": { + "description": "Infer dependency on scala plugin artifacts for Scala target.", + "documentation": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": [ + "InferScalaPluginDependenciesRequest" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "AnalyzeScalaSourceRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "SourceFilesRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "output_type": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaParserToolLockfileSentinel" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleScalaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets": { + "description": "Find all Scala targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols": { + "description": "Map all first party Scala targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.check.scalac_check": { + "description": "Check compilation for Scala", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ScalacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.repl.create_scala_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaRepl", + "BashBinary", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.tailor.find_putative_targets": { + "description": "Determine candidate Scala targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files": { + "description": null, + "documentation": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "GatherScalafmtConfigFilesRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalafmtToolLockfileSentinel", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "PartitionRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt": { + "description": "Format with scalafmt", + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "InternalJdk", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.scala_settings_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaInferSubsystem", + "ScalaSettingsRequest" + ], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalatestToolLockfileSentinel", + "Scalatest" + ], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.run_scalatest_test": { + "description": "Run Scalatest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "Batch" + ], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaArtifactsForVersionRequest" + ], + "name": "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version", + "output_type": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.shell.dependency_inference.find_all_shell_targets": { + "description": "Find all Shell targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.infer_shell_dependencies": { + "description": "Inferring Shell dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": [ + "InferShellDependencies", + "ShellMapping", + "ShellSetup" + ], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.map_shell_files": { + "description": "Creating map of Shell file names to Shell targets", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllShellTargets" + ], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.parse_shell_imports": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ParseShellImportsRequest", + "Shellcheck", + "Platform" + ], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.tailor.find_putative_targets": { + "description": "Determine candidate shell targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources", + "ShellSetup" + ], + "name": "pants.backend.shell.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.test.test_shell_command": { + "description": "Test with shell command", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Process, ShellCommandProcessFromTargetRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.shell.goals.test.test_shell_command", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck": { + "description": "Lint with Shellcheck", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "Shellcheck", + "Platform" + ], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_type": "LintResult", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt": { + "description": "Format with shfmt", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Shfmt", + "Platform" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell": { + "description": "Determine shunit2 shell", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Shunit2RunnerRequest", + "EnvironmentAware" + ], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2": { + "description": "Run tests with Shunit2", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem" + ], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test": { + "description": "Setup Shunit2 to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target": { + "description": "Setup shunit2", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "EnvironmentAware", + "TestSubsystem", + "TestExtraEnv", + "GlobalOptions", + "Shunit2", + "Platform" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ShellGeneratorSettingsRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Process, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(AdhocProcessResult, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_shell_command_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)" + ], + "input_types": [ + "BashBinary", + "RunShellCommand" + ], + "name": "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox": { + "description": "Running shell command", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., ShellCommandProcessFromTargetRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateFilesFromShellCommandRequest" + ], + "name": "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + }, + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferTerraformModuleDependenciesRequest" + ], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TerraformHcl2ParserLockfileSentinel", + "TerraformHcl2Parser" + ], + "name": "pants.backend.terraform.dependency_inference.setup_lockfile_request", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "TerraformHcl2Parser" + ], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseTerraformModuleSources", + "ParserSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.check.terraform_check": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": [ + "TerraformCheckRequest", + "TerraformValidateSubsystem" + ], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets": { + "description": "Determine candidate Terraform targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeTerraformTargetsRequest", + "TerraformTool", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt": { + "description": "Format with `terraform fmt`", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.tool.setup_terraform_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "TerraformProcess", + "TerraformTool", + "Platform" + ], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.tools.preamble.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "PreambleSubsystem" + ], + "name": "pants.backend.tools.preamble.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.preamble.rules.preamble_fmt": { + "description": "Add preambles", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "Batch", + "PreambleSubsystem" + ], + "name": "pants.backend.tools.preamble.rules.preamble_fmt", + "output_type": "FixResult", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.yamllint.rules.gather_config_files": { + "description": null, + "documentation": "Gather yamllint configuration files.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "YamllintConfigFilesRequest", + "Yamllint" + ], + "name": "pants.backend.tools.yamllint.rules.gather_config_files", + "output_type": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(YamllintConfigFiles, YamllintConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "PartitionRequest", + "Yamllint" + ], + "name": "pants.backend.tools.yamllint.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.run_yamllint": { + "description": "Lint using yamllint", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, PexProcess, ..)" + ], + "input_types": [ + "Batch", + "Yamllint" + ], + "name": "pants.backend.tools.yamllint.rules.run_yamllint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.subsystem.setup_yamllint_lockfile": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YamllintLockfileSentinel", + "Yamllint" + ], + "name": "pants.backend.tools.yamllint.subsystem.setup_yamllint_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.subsystem.yamllint_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "YamllintExportSentinel", + "Yamllint" + ], + "name": "pants.backend.tools.yamllint.subsystem.yamllint_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.bsp.rules.bsp_context": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SessionValues" + ], + "name": "pants.bsp.rules.bsp_context", + "output_type": "BSPContext", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.bsp_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPCompileResult, CompileOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_type": "CompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.compile_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPCompileResult, BSPCompileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileOneBSPTargetRequest", + "BSPContext", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.compile.compile_bsp_target", + "output_type": "BSPCompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.lifecycle.bsp_build_initialize": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InitializeBuildParams", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.bsp_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPResourcesResult, ResourcesForOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.resources.bsp_resources_request", + "output_type": "ResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.resources_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPResourcesResult, BSPResourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesForOneBSPTargetRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.resources.resources_bsp_target", + "output_type": "BSPResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": [ + "SourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_type": "SourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DependencyModulesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependencySourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_workspace_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateOneBSPBuildTargetResult, GenerateOneBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "BSPBuildTargets", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPBuildTargetsMetadataResult, BSPBuildTargetsMetadataRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "GenerateOneBSPBuildTargetRequest", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "output_type": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "MaterializeBuildTargetSourcesRequest", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(BSPBuildTargetInternal, _ParseOneBSPMappingRequest, ..)" + ], + "input_types": [ + "BSPGoal" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "output_type": "BSPBuildTargets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.parse_one_bsp_mapping": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_ParseOneBSPMappingRequest" + ], + "name": "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecsWithoutFileOwners, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal", + "UnionMembership", + "FieldDefaults" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "output_type": "Targets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BuildTargetIdentifier", + "BSPBuildTargets" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "output_type": "BSPBuildTargetSourcesInfo", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_one_dependency_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(BSPDependencyModulesResult, BSPDependencyModulesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResolveOneDependencyModuleRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + }, + "pants.core.goals.check.check": { + "description": "`check` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(CheckResults, {CheckRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "Workspace", + "FilteredTargets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_type": "Check", + "provider": "pants.core" + }, + "pants.core.goals.deploy.publish_process_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)" + ], + "input_types": [ + "_PublishProcessesForTargetRequest" + ], + "name": "pants.core.goals.deploy.publish_process_for_target", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.deploy.run_deploy": { + "description": "`experimental-deploy` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(DeployProcess, DeployFieldSet, ..)", + "Get(PublishProcesses, _PublishProcessesForTargetRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "DeploySubsystem" + ], + "name": "pants.core.goals.deploy.run_deploy", + "output_type": "Deploy", + "provider": "pants.core" + }, + "pants.core.goals.export.export": { + "description": "`export` goal", + "documentation": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir", + "ExportSubsystem" + ], + "name": "pants.core.goals.export.export", + "output_type": "Export", + "provider": "pants.core" + }, + "pants.core.goals.fix.convert_fix_result_to_lint_result": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FixResult" + ], + "name": "pants.core.goals.fix.convert_fix_result_to_lint_result", + "output_type": "LintResult", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix": { + "description": "`fix` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FixSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fix.fix", + "output_type": "Fix", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix_batch": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(FixResult, Batch, ..)" + ], + "input_types": [ + "_FixBatchRequest" + ], + "name": "pants.core.goals.fix.fix_batch", + "output_type": "_FixBatchResult", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt": { + "description": "`fmt` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_type": "Fmt", + "provider": "pants.core" + }, + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal": { + "description": "`generate-lockfiles` goal", + "documentation": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, {RequestedUserResolveNames: .., EnvironmentName: ..})", + "Get(WrappedGenerateLockfile, {GenerateToolLockfileSentinel: .., EnvironmentName: ..})", + "Get(GenerateLockfileResult, {GenerateLockfile: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem", + "ChosenLocalEnvironmentName", + "Console", + "GlobalOptions" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + }, + "pants.core.goals.lint.lint": { + "description": "`lint` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(LintResult, Batch, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Specs", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_type": "Lint", + "provider": "pants.core" + }, + "pants.core.goals.package.environment_aware_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(BuiltPackage, {PackageFieldSet: .., EnvironmentName: ..})" + ], + "input_types": [ + "EnvironmentAwarePackageRequest" + ], + "name": "pants.core.goals.package.environment_aware_package", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.goals.package.find_all_packageable_targets": { + "description": "Find all packageable targets in project", + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)" + ], + "input_types": [ + "AllTargets" + ], + "name": "pants.core.goals.package.find_all_packageable_targets", + "output_type": "AllPackageableTargets", + "provider": "pants.core" + }, + "pants.core.goals.package.package_asset": { + "description": "`package` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "DistDir" + ], + "name": "pants.core.goals.package.package_asset", + "output_type": "Package", + "provider": "pants.core" + }, + "pants.core.goals.publish.package_for_publish": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(PublishProcesses, {PublishRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "PublishProcessesRequest", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.publish.package_for_publish", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.publish.run_publish": { + "description": "`publish` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "PublishSubsystem", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.publish.run_publish", + "output_type": "Publish", + "provider": "pants.core" + }, + "pants.core.goals.repl.run_repl": { + "description": "`repl` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "ReplSubsystem", + "FilteredTargets", + "UnionMembership", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.repl.run_repl", + "output_type": "Repl", + "provider": "pants.core" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "PythonRequirementFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run.run": { + "description": "`run` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(RunDebugAdapterRequest, RunFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "DebugAdapterSubsystem", + "GlobalOptions", + "Workspace", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.run.run", + "output_type": "Run", + "provider": "pants.core" + }, + "pants.core.goals.tailor.determine_all_owned_sources": { + "description": "Determine all files already owned by targets", + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_type": "AllOwnedSources", + "provider": "pants.core" + }, + "pants.core.goals.tailor.edit_build_files": { + "description": "Edit BUILD files with new targets", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "EditBuildFilesRequest", + "TailorSubsystem" + ], + "name": "pants.core.goals.tailor.edit_build_files", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + }, + "pants.core.goals.tailor.rename_conflicting_targets": { + "description": null, + "documentation": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": [ + "PutativeTargets", + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + }, + "pants.core.goals.tailor.restrict_conflicting_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PutativeTarget" + ], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + }, + "pants.core.goals.tailor.tailor": { + "description": "`tailor` goal", + "documentation": null, + "input_gets": [ + "Get(SpecsPaths, Specs, ..)", + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_type": "TailorGoal", + "provider": "pants.core" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test.build_runtime_package_dependencies": { + "description": "Build runtime package dependencies for tests", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)" + ], + "input_types": [ + "BuildPackageDependenciesRequest" + ], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + }, + "pants.core.goals.test.get_filtered_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.goals.test.get_filtered_environment", + "output_type": "TestExtraEnv", + "provider": "pants.core" + }, + "pants.core.goals.test.run_tests": { + "description": "`test` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(Partitions, {PartitionRequest: .., EnvironmentName: ..})", + "Get(EnvironmentName, SingleEnvironmentNameRequest, ..)", + "Get(TestDebugRequest, {Batch: .., EnvironmentName: ..})", + "Get(TestDebugAdapterRequest, {Batch: .., EnvironmentName: ..})", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})", + "Get(TestResult, {Batch: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, {CoverageDataCollection: .., EnvironmentName: ..})", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "DebugAdapterSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.test.run_tests", + "output_type": "Test", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_black": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithBlackRequest", + "Black" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_yapf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithYapfRequest", + "Yapf" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields": { + "description": "Check for deprecated field type names", + "documentation": null, + "input_gets": [ + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)" + ], + "input_types": [ + "RenameDeprecatedFieldsRequest" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets": { + "description": "Check for deprecated target type names", + "documentation": null, + "input_gets": [ + "Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)" + ], + "input_types": [ + "RenameDeprecatedTargetsRequest" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.update_build_files": { + "description": "Update all BUILD files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership", + "Specs" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(_SearchPaths, _PyEnvPathsRequest, ..)" + ], + "input_types": [ + "_ExpandInterpreterSearchPathsRequest" + ], + "name": "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "output_type": "_SearchPaths", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap._get_pyenv_paths": { + "description": null, + "documentation": "Returns a tuple of paths to Python interpreters managed by pyenv.\n\n:param `request.env_tgt`: The environment target -- if not referring to a local/no environment,\n this will return an empty path.\n:param bool pyenv_local: If True, only use the interpreter specified by\n '.python-version' file under `build_root`.", + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "_PyEnvPathsRequest" + ], + "name": "pants.core.subsystems.python_bootstrap._get_pyenv_paths", + "output_type": "_SearchPaths", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap.python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_SearchPaths, _ExpandInterpreterSearchPathsRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_type": "PythonBootstrap", + "provider": "pants.core" + }, + "pants.core.target_types.find_all_assets": { + "description": "Find all assets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets", + "AllAssetTargetsRequest" + ], + "name": "pants.core.target_types.find_all_assets", + "output_type": "AllAssetTargets", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_file_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateFileSourceRequest", + "Platform" + ], + "name": "pants.core.target_types.hydrate_file_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_resource_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateResourceSourceRequest", + "Platform" + ], + "name": "pants.core.target_types.hydrate_resource_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.map_assets_by_path": { + "description": "Mapping assets by path", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllAssetTargets" + ], + "name": "pants.core.target_types.map_assets_by_path", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + }, + "pants.core.target_types.package_archive_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": [ + "ArchiveFieldSet" + ], + "name": "pants.core.target_types.package_archive_target", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.target_types.relocate_files": { + "description": "Relocating loose files for `relocated_files` targets", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "RelocateFilesViaCodegenRequest" + ], + "name": "pants.core.target_types.relocate_files", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.download_python_binary": { + "description": "Downloading Python for scripts", + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ProcessResult, Process, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "_DownloadPythonBuildStandaloneBinaryRequest", + "Platform", + "TarBinary", + "PythonBootstrapSubsystem", + "BashBinary" + ], + "name": "pants.core.util_rules.adhoc_binaries.download_python_binary", + "output_type": "_PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBuildStandaloneBinary" + ], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GunzipBinaryRequest", + "GunzipBinary" + ], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_PythonBuildStandaloneBinary, _DownloadPythonBuildStandaloneBinaryRequest, ..)" + ], + "input_types": [ + "EnvironmentTarget" + ], + "name": "pants.core.util_rules.adhoc_binaries.get_python_for_scripts", + "output_type": "PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "AddExtraSandboxContentsToProcess" + ], + "name": "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "MergeExtraSandboxContents" + ], + "name": "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "output_type": "ExtraSandboxContents", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "AdhocProcessRequest", + "BashBinary" + ], + "name": "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(RunInSandboxRequest, RunFieldSet, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResolveExecutionDependenciesRequest", + "BashBinary" + ], + "name": "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "output_type": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.run_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, AdhocProcessRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, {FallibleProcessResult: .., ProductDescription: ..})", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "AdhocProcessRequest" + ], + "name": "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest": { + "description": null, + "documentation": "Backwards-compatibility helper.", + "input_gets": [], + "input_types": [ + "Digest" + ], + "name": "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest", + "output_type": "MaybeExtractArchiveRequest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.create_archive": { + "description": "Creating an archive file", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ZipBinary, ZipBinaryRequest, ..)", + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CreateArchive" + ], + "name": "pants.core.util_rules.archive.create_archive", + "output_type": "Digest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.maybe_extract_archive": { + "description": "Extracting an archive file", + "documentation": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary, UnzipBinaryRequest, ..)", + "Get(TarBinary, TarBinaryRequest, ..)", + "Get(GunzipBinary, GunzipBinaryRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MaybeExtractArchiveRequest" + ], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_type": "ExtractedArchive", + "provider": "pants.core" + }, + "pants.core.util_rules.asdf.resolve_asdf_tool_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "AsdfToolPathsRequest", + "BuildRoot" + ], + "name": "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "output_type": "AsdfToolPathsResult", + "provider": "pants.core" + }, + "pants.core.util_rules.config_files.find_config_file": { + "description": "Find config files", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ConfigFilesRequest" + ], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_type": "ConfigFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.distdir.get_distdir": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GlobalOptions", + "BuildRoot" + ], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_type": "DistDir", + "provider": "pants.core" + }, + "pants.core.util_rules.external_tool.download_external_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ExternalToolRequest" + ], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "ShellTestSubsystem" + ], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Shellcheck" + ], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Shfmt" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.core.util_rules.source_files.determine_source_files": { + "description": "Get all relevant source files", + "documentation": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFilesRequest" + ], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_type": "SourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_file_name": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "StrippedFileNameRequest" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_type": "StrippedFileName", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_source_roots": { + "description": null, + "documentation": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFiles" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_sources_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourcesPaths" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + }, + "pants.core.util_rules.subprocess_environment.get_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.create_binary_shims": { + "description": null, + "documentation": "Creates a bin directory with shims for all requested binaries.\n\nThis can be provided to a `Process` as an `immutable_input_digest`, or can be merged into the\ninput digest.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "BinaryShimsRequest", + "BashBinary" + ], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_type": "BinaryShims", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_bash": { + "description": "Finding the `bash` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "BashBinaryRequest" + ], + "name": "pants.core.util_rules.system_binaries.find_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryPathRequest", + "EnvironmentTarget" + ], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_type": "BinaryPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat": { + "description": "Finding the `cat` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cat", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "CatBinaryRequest", + "CatBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_cat_wrapper", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod": { + "description": "Finding the `chmod` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ChmodBinaryRequest", + "ChmodBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_chmod_wrapper", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cp": { + "description": "Finding the `cp` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cp", + "output_type": "CpBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff": { + "description": "Finding the `diff` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DiffBinaryRequest", + "DiffBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_diff_wrapper", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_git", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GitBinaryRequest", + "GitBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_git_wrapper", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_gunzip": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_gunzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GunzipBinaryRequest", + "GunzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_gunzip_wrapper", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_ln": { + "description": "Finding the `ln` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_ln", + "output_type": "LnBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir": { + "description": "Finding the `mkdir` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MkdirBinaryRequest", + "MkdirBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_mkdir_wrapper", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mktemp": { + "description": "Finding the `mktempt` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mktemp", + "output_type": "MktempBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mv": { + "description": "Finding the `mv` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mv", + "output_type": "MvBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_open": { + "description": "Finding the `open` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_open", + "output_type": "OpenBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_python": { + "description": "Finding a `python` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "PythonBootstrap" + ], + "name": "pants.core.util_rules.system_binaries.find_python", + "output_type": "PythonBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink": { + "description": "Finding the `readlink` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_readlink", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ReadlinkBinaryRequest", + "ReadlinkBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_readlink_wrapper", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar": { + "description": "Finding the `tar` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Platform" + ], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "TarBinaryRequest", + "TarBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_tar_wrapper", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_touch": { + "description": "Finding the `touch` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_touch", + "output_type": "TouchBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip": { + "description": "Finding the `unzip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnzipBinaryRequest", + "UnzipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip": { + "description": "Finding the `zip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ZipBinaryRequest", + "ZipBinary" + ], + "name": "pants.core.util_rules.system_binaries.find_zip_wrapper", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.get_bash": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary, BashBinaryRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.maybe_find_git", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MaybeGitBinaryRequest", + "MaybeGitBinary" + ], + "name": "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateWrapSourceSourcesRequest" + ], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "output_type": "GeneratedSources", + "provider": "pants.backend.python" + }, + "pants.engine.internals.graph.coarsened_targets": { + "description": "Resolve coarsened targets", + "documentation": null, + "input_gets": [ + "Get(_DependencyMapping, _DependencyMappingRequest, ..)" + ], + "input_types": [ + "CoarsenedTargetsRequest", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.coarsened_targets", + "output_type": "CoarsenedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.coarsened_targets_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Addresses" + ], + "name": "pants.engine.internals.graph.coarsened_targets_request", + "output_type": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.determine_explicitly_provided_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)" + ], + "input_types": [ + "DependenciesRequest", + "UnionMembership", + "RegisteredTargetTypes", + "SubprojectRoots" + ], + "name": "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "output_type": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_subproject_roots": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GlobalOptions" + ], + "name": "pants.engine.internals.graph.extract_subproject_roots", + "output_type": "SubprojectRoots", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_unmatched_build_file_globs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GlobalOptions" + ], + "name": "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "output_type": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.field_defaults": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldDefaultFactoryResult, FieldDefaultFactoryRequest, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.engine.internals.graph.field_defaults", + "output_type": "FieldDefaults", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_targets": { + "description": "Find all targets in the project", + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecsWithoutFileOwners, ..)" + ], + "input_types": [ + "AllTargetsRequest" + ], + "name": "pants.engine.internals.graph.find_all_targets", + "output_type": "AllTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_targets_singleton": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllTargets, AllTargetsRequest, ..)" + ], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_targets_singleton", + "output_type": "AllTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_unexpanded_targets": { + "description": "Find all targets in the project", + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)" + ], + "input_types": [ + "AllTargetsRequest" + ], + "name": "pants.engine.internals.graph.find_all_unexpanded_targets", + "output_type": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_unexpanded_targets_singleton": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllUnexpandedTargets, AllTargetsRequest, ..)" + ], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_unexpanded_targets_singleton", + "output_type": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_owners": { + "description": "Find which targets own certain files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FilteredTargets, RawSpecsWithoutFileOwners, ..)", + "Get(Targets, RawSpecsWithoutFileOwners, ..)", + "Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)" + ], + "input_types": [ + "OwnersRequest", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.find_owners", + "output_type": "Owners", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_valid_field_sets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FieldSetsPerTargetRequest", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.find_valid_field_sets", + "output_type": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.generate_file_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(TargetFilesGeneratorSettings, TargetFilesGeneratorSettingsRequest, ..)" + ], + "input_types": [ + "GenerateFileTargets", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.generate_file_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.hydrate_sources": { + "description": "Hydrate the `sources` field", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(GeneratedSources, GenerateSourcesRequest, ..)" + ], + "input_types": [ + "HydrateSourcesRequest", + "UnmatchedBuildFileGlobs", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.hydrate_sources", + "output_type": "HydratedSources", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_dependencies": { + "description": "Resolve direct dependencies of target", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(InferredDependencies, {InferDependenciesRequest: .., EnvironmentName: ..})", + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})", + "Get(Address, AddressInput, ..)", + "Get(ValidatedDependencies, {ValidateDependenciesRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "DependenciesRequest", + "TargetTypesToGenerateTargetsRequests", + "UnionMembership", + "SubprojectRoots", + "FieldDefaults", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_dependencies", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_source_paths": { + "description": "Resolve `sources` field file names", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "SourcesPathsRequest", + "UnmatchedBuildFileGlobs" + ], + "name": "pants.engine.internals.graph.resolve_source_paths", + "output_type": "SourcesPaths", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "WrappedTargetRequest", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_target", + "output_type": "WrappedTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_for_bootstrapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)" + ], + "input_types": [ + "WrappedTargetRequest", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "output_type": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_parametrizations": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(Paths, PathGlobs, ..)", + "Get(GeneratedTargets, GenerateTargetsRequest, ..)" + ], + "input_types": [ + "_TargetParametrizationsRequest", + "RegisteredTargetTypes", + "UnionMembership", + "TargetTypesToGenerateTargetsRequests", + "UnmatchedBuildFileGlobs" + ], + "name": "pants.engine.internals.graph.resolve_target_parametrizations", + "output_type": "_TargetParametrizations", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "UnexpandedTargets", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_targets", + "output_type": "Targets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unexpanded_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "Addresses" + ], + "name": "pants.engine.internals.graph.resolve_unexpanded_targets", + "output_type": "UnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unparsed_address_inputs": { + "description": "Resolve addresses", + "documentation": null, + "input_gets": [ + "Get(MaybeAddress, AddressInput, ..)", + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "UnparsedAddressInputs", + "SubprojectRoots" + ], + "name": "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.target_types_to_generate_targets_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnionMembership" + ], + "name": "pants.engine.internals.graph.target_types_to_generate_targets_requests", + "output_type": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_dependency_mapping": { + "description": null, + "documentation": "This uses iteration, rather than recursion, so that we can tolerate dependency cycles.\n\nUnlike a traditional BFS algorithm, we batch each round of traversals via `MultiGet` for\nimproved performance / concurrency.", + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(UnexpandedTargets, DependenciesRequest, ..)" + ], + "input_types": [ + "_DependencyMappingRequest" + ], + "name": "pants.engine.internals.graph.transitive_dependency_mapping", + "output_type": "_DependencyMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_targets": { + "description": "Resolve transitive targets", + "documentation": "Find all the targets transitively depended upon by the target roots.", + "input_gets": [ + "Get(_DependencyMapping, _DependencyMappingRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "TransitiveTargetsRequest", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.transitive_targets", + "output_type": "TransitiveTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.process.fallible_to_exec_result_or_raise": { + "description": null, + "documentation": "Converts a FallibleProcessResult to a ProcessResult or raises an error.", + "input_gets": [], + "input_types": [ + "FallibleProcessResult", + "ProductDescription", + "KeepSandboxes" + ], + "name": "pants.engine.process.fallible_to_exec_result_or_raise", + "output_type": "ProcessResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.get_multi_platform_request_description": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Process" + ], + "name": "pants.engine.process.get_multi_platform_request_description", + "output_type": "ProductDescription", + "provider": "pants.backend.experimental.helm" + }, + "pants.goal.anonymous_telemetry.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AnonymousTelemetryCallbackFactoryRequest", + "AnonymousTelemetry" + ], + "name": "pants.goal.anonymous_telemetry.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.goal.stats_aggregator.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.jvm.bsp.compile.notify_for_classpath_entry": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "BSPClasspathEntryRequest", + "BSPContext" + ], + "name": "pants.jvm.bsp.compile.notify_for_classpath_entry", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "ClasspathEntryRequestFactory" + ], + "name": "pants.jvm.classpath.classpath", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.loose_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ClasspathEntry", + "UnzipBinary" + ], + "name": "pants.jvm.classpath.loose_classfiles", + "output_type": "LooseClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.calculate_jvm_request_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnionMembership" + ], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.classpath_dependency_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.compile_classpath_entries": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ClasspathEntryRequests" + ], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.required_classfiles": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleClasspathEntry" + ], + "name": "pants.jvm.compile.required_classfiles", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping": { + "description": null, + "documentation": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "output_type": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets": { + "description": "Find all jvm_artifact targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields": { + "description": "Find all targets with experimental_provides fields in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SymbolMap, FirstPartyMappingRequest, ..)" + ], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem", + "ThirdPartySymbolMapping" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "output_type": "SymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.determine_jvm_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownJVMUserResolveNamesRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.generate_jvm_lockfile": { + "description": "Generate JVM lockfile", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.build_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "output_type": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JarToolGenerateLockfileSentinel" + ], + "name": "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.run_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "JarToolRequest", + "InternalJdk", + "JarToolCompiledClassfiles" + ], + "name": "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.fetch_nailgun": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.internal_jdk": { + "description": null, + "documentation": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)" + ], + "input_types": [ + "JvmSubsystem" + ], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.jvm_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess", + "JvmSubsystem", + "GlobalOptions" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.prepare_jdk_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "EnvironmentAware", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest", + "EnvironmentTarget" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.deploy_jar_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": [ + "DeployJarClasspathEntryRequest" + ], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.package_deploy_jar": { + "description": null, + "documentation": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Creating a deploy jar with a valid ZIP index and deduplicated entries\n3. (optionally) Stripping the jar of all metadata that may cause it to be non-reproducible (https://reproducible-builds.org)\n4. (optionally) Apply shading rules to the bytecode inside the jar file", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, JarToolRequest, ..)", + "Get(Digest, StripJarRequest, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JvmSubsystem", + "DeployJarFieldSet" + ], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.package_war": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PackageWarFileFieldSet", + "BashBinary", + "ZipBinary" + ], + "name": "pants.jvm.package.war.package_war", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_content": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "RenderWarContentRequest" + ], + "name": "pants.jvm.package.war.render_war_content", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_deployment_descriptor": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderWarDeploymentDescriptorRequest" + ], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile": { + "description": null, + "documentation": "Fetch every artifact in a lockfile.", + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [ + "CoursierResolvedLockfile" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord": { + "description": null, + "documentation": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "CoursierLockfileEntry" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile": { + "description": null, + "documentation": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier": { + "description": "Fetch with coursier", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierFetchRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "CoursierResolveKey" + ], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "ToolClasspathRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets": { + "description": null, + "documentation": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": [ + "Get(Digest, PathGlobs, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "Coursier", + "CoursierFetchProcess" + ], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.setup_coursier": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBuildStandaloneBinary", + "Platform" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "GatherJvmCoordinatesRequest" + ], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": [ + "GenerateJvmLockfileFromTool" + ], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resources.assemble_resources_jar": { + "description": "Assemble resources", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "BashBinary", + "TouchBinary", + "JvmSubsystem", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run.create_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(Classpath, CoarsenedTargets, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "GenericJvmRunRequest", + "UnzipBinary" + ], + "name": "pants.jvm.run.create_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JarJarGeneratorLockfileSentinel", + "JarJar" + ], + "name": "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.rules.shade_jar": { + "description": "Applies shading rules to a JAR file", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarJarGeneratorLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ShadeJarRequest", + "InternalJdk", + "JarJar" + ], + "name": "pants.jvm.shading.rules.shade_jar", + "output_type": "ShadedJar", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.jvm.strip_jar.strip_jar.build_processors", + "output_type": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StripJarToolLockfileSentinel" + ], + "name": "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.strip_jar": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "StripJarCompiledClassfiles", + "InternalJdk", + "StripJarRequest" + ], + "name": "pants.jvm.strip_jar.strip_jar.strip_jar", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, GenericJvmRunRequest, ..)" + ], + "input_types": [ + "KotlinFieldSet" + ], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.jvm.target_types.jvm_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JvmResolveFieldDefaultFactoryRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.target_types.jvm_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.generate_junit_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JunitToolLockfileSentinel", + "JUnit" + ], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.run_junit_test": { + "description": "Run JUnit", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "Batch" + ], + "name": "pants.jvm.test.junit.run_junit_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.util_rules.digest_to_file_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "ExtractFileDigest" + ], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + }, + "pants.source.source_root.all_roots": { + "description": "Compute all source roots", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootConfig" + ], + "name": "pants.source.source_root.all_roots", + "output_type": "AllSourceRoots", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_root": { + "description": null, + "documentation": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest", + "SourceRootConfig" + ], + "name": "pants.source.source_root.get_optional_source_root", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_roots": { + "description": null, + "documentation": "Rule to request source roots that may not exist.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_optional_source_roots", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_root": { + "description": null, + "documentation": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest" + ], + "name": "pants.source.source_root.get_source_root", + "output_type": "SourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_roots": { + "description": null, + "documentation": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_source_roots", + "output_type": "SourceRootsResult", + "provider": "pants.core" + }, + "pants.vcs.git.get_git_worktree": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GitWorktreeRequest", + "MaybeGitBinary" + ], + "name": "pants.vcs.git.get_git_worktree", + "output_type": "MaybeGitWorktree", + "provider": "pants.core" + } + }, + "name_to_target_type_info": { + "_generator_sources_helper": { + "alias": "_generator_sources_helper", + "description": "A private helper target type used by some target generators.\n\nThis tracks their `source` / `sources` field so that `--changed-since --changed-dependents` works properly for generated targets.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.python", + "summary": "A private helper target type used by some target generators." + }, + "_lockfile": { + "alias": "_lockfile", + "description": "A target for lockfiles in order to include them in the dependency graph of other targets.\n\nThis tracks them so that `--changed-since --changed-dependents` works properly for targets relying on a particular lockfile.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A target for lockfiles in order to include them in the dependency graph of other targets." + }, + "_lockfiles": { + "alias": "_lockfiles", + "description": "Generate a `_lockfile` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.lock']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `_lockfile` target for each file in the `sources` field." + }, + "adhoc_tool": { + "alias": "adhoc_tool", + "description": "Execute any runnable target for its side effects.\n\nExample BUILD file:\n\n adhoc_tool(\n runnable=\":python_source\",\n args=[\"\"],\n execution_dependencies=[\":scripts\"],\n output_directories=[\"results/\"],\n output_files=[\"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runnable", + "default": null, + "description": "Address to a target that can be invoked by the `run` goal (and does not set `run_in_sandbox_behavior=NOT_SUPPORTED`). This will be executed along with any arguments specified by `args`, in a sandbox with that target's transitive dependencies, along with the transitive dependencies specified by `execution_dependencies`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "args", + "default": "()", + "description": "Extra arguments to pass into the `runnable` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the output side-effects useful. Dependencies that are required to use the side-effects produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that the output artifacts require in order to be effectively consumed.\n\nTo enable legacy use cases, if `execution_dependencies` is `None`, these dependencies will be materialized in the execution sandbox. This behavior is deprecated, and will be removed in version 2.17.0.dev0.\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\n Values are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stdout", + "default": null, + "description": "A filename to capture the contents of `stdout` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stderr", + "default": null, + "description": "A filename to capture the contents of `stderr` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "Execute any runnable target for its side effects." + }, + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "duplicate_policy", + "default": "(duplicate_rule(pattern='^META-INF/services/', action='concat_text'), duplicate_rule(pattern='^META-INF/LICENSE', action='skip'))", + "description": "A list of the rules to apply when duplicate file entries are found in the final assembled JAR file.\n\nWhen defining a duplicate policy, just add `duplicate_rule` directives to this field as follows:\n\nExample:\n\n``` duplicate_policy=[\n duplicate_rule(pattern=\"^META-INF/services\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^reference\\.conf\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^org/apache/commons\", action=\"throw\"),\n] ```\n\nWhere:\n\n* The `pattern` field is treated as a regular expression\n* The `action` field must be one of ['skip', 'replace', 'concat', 'concat_text', 'throw'].\n\nNote that the order in which the rules are listed is relevant.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.DeployJarDuplicateRule] | None" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the final JAR artifact.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_environment": { + "alias": "docker_environment", + "description": "Configuration of a Docker environment used for building your code.\n\nEnvironment configuration includes both Docker-specific information (including the image and platform choice), as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this Docker environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image", + "default": null, + "description": "The docker image ID to use when this environment is loaded.\n\nThis value may be any image identifier that the local Docker installation can accept. This includes image names with or without tags (e.g. `centos6` or `centos6:latest`), or image names with an immutable digest (e.g. `centos@sha256:`).\n\nThe choice of image ID can affect the reproducibility of builds. Consider using an immutable digest if reproducibility is needed, but regularly ensure that the image is free of relevant bugs or security vulnerabilities.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "platform", + "default": null, + "description": "If set, Docker will always use the specified platform when pulling and running the image.\n\nIf unset, Pants will default to the CPU architecture of your local host machine. For example, if you are running on Apple Silicon, it will use `linux_arm64`, whereas running on Intel macOS will use `linux_x86_64`. This mirrors Docker's behavior when `--platform` is left off.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this Docker environment cannot be used because either the global option `--docker-execution` is false, or the field `platform` is not compatible with the local host's CPU architecture (this is only an issue when the local host is Linux; macOS is fine).\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific Docker environment cannot be used.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_path", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_path` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a Docker environment used for building your code." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, it will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "\nAny tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.16/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [docker].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. \"/\".\n\nIt uses the `[docker].default_repository` by default.\n\nrepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory`, `parent_directory`, and `default_repository`.\n\nRegistries may also configure the repository value for specific registries.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nlabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: default|[=|[,]])\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this image to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pull", + "default": "False", + "description": "If true, then docker will always attempt to pull a newer version of the image.\n\nNOTE: This option cannot be used on images that build off of \"transitive\" base images referenced by address (i.e. `FROM path/to/your/base/Dockerfile`).", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "squash", + "default": "False", + "description": "If true, then docker will squash newly built layers into a single new layer.\n\nNote that this option is only supported on a Docker daemon with experimental features enabled.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_test_shell_command": { + "alias": "experimental_test_shell_command", + "description": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot.\n\nExample BUILD file:\n\n experimental_test_shell_command(\n name=\"test\",\n tools=[\"test\"],\n command=\"test -r $CHROOT/some-data-file.txt\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `run_shell_command`, this target is intended to run shell commands as tests and will only run them via the `test` goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the output side-effects useful. Dependencies that are required to use the side-effects produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this tests for target.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot." + }, + "experimental_wrap_as_go_package_sources": { + "alias": "experimental_wrap_as_go_package_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .go, .s, .S, .sx, .c, .h, .hh, .hpp, .hxx, .cc, .cpp, .cxx, .m, .f, .F, .for, .f90, .syso\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`." + }, + "experimental_wrap_as_java_sources": { + "alias": "experimental_wrap_as_java_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .java\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`." + }, + "experimental_wrap_as_kotlin_sources": { + "alias": "experimental_wrap_as_kotlin_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .kt\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`." + }, + "experimental_wrap_as_python_sources": { + "alias": "experimental_wrap_as_python_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .py, .pyi\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`." + }, + "experimental_wrap_as_resources": { + "alias": "experimental_wrap_as_resources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files from `inputs` will be matched\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`." + }, + "experimental_wrap_as_scala_sources": { + "alias": "experimental_wrap_as_scala_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .scala\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an http_source is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (E.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n `curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null`\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (linux_arm64, linux_x86_64, macos_arm64, macos_x86_64) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.go', '*_test.go', '!test_ignore.go']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "test_race", + "default": null, + "description": "Enable compiling this package's test binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_artifact": { + "alias": "helm_artifact", + "description": "A third party Helm artifact.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registry", + "default": null, + "description": "Either registry alias (prefixed by `@`) configured in `[helm.registries]` for the Helm artifact or the full OCI registry URL.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repository", + "default": null, + "description": "Either a HTTP(S) URL to a classic repository, or a path inside an OCI registry (when `registry` is provided).", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "Artifact name of the chart, without version number.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The `version` part of a third party Helm chart.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A third party Helm artifact." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'values.yml', 'templates/*.yaml', 'templates/*.yml', 'templates/*.tpl', 'crds/*.yaml', 'crds/*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['values.yaml', 'templates/*.yaml', '!values_ignore.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "repository", + "default": null, + "description": "Repository to use in the Helm registry where this chart is going to be published.\n\nIf no value is given and `[helm].default-registry-repository` is undefined too, then the chart will be pushed to the root of the OCI registry.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any OCI registries to use for the built chart.\n\nThe address is an `oci://` prefixed domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [helm].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [helm.registries.my-registry-alias]\n address = \"oci://myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n helm_chart(\n registries = [\n \"@my-registry-alias\",\n \"oci://myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this Helm chart to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_lint", + "default": "False", + "description": "If set to true, do not run any linting in this Helm chart when running `scie-pants-linux-x86_64 lint`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart." + }, + "helm_deployment": { + "alias": "helm_deployment", + "description": "A Helm chart deployment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "release_name", + "default": null, + "description": "Name of the release used in the deployment. If not set, the target name will be used instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.yaml', '*.yml')", + "description": "Helm configuration files for a given deployment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "namespace", + "default": null, + "description": "Kubernetes namespace for the given deployment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_crds", + "default": "False", + "description": "If true, then does not deploy the Custom Resource Definitions that are defined in the chart.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "values", + "default": null, + "description": "Individual values to use when rendering a given deployment.\n\nValue names should be defined using dot-syntax as in the following example:\n\n``` helm_deployment(\n values={\n \"nameOverride\": \"my_custom_name\",\n \"image.pullPolicy\": \"Always\",\n },\n) ```\n\nValues can be dynamically calculated using interpolation as shown in the following example:\n\n``` helm_deployment(\n values={\n \"configmap.deployedAt\": \"{env.DEPLOY_TIME}\",\n },\n) ```\n\nCheck the Helm backend documentation on what are the options available and its caveats when making usage of dynamic values in your deployments.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "create_namespace", + "default": "False", + "description": "If true, the namespace will be created if it doesn't exist.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "no_hooks", + "default": "False", + "description": "If true, none of the lifecycle hooks of the given chart will be included in the deployment.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": null, + "description": "Timeout in seconds when running a Helm deployment.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "post_renderers", + "default": null, + "description": "List of runnable targets to be used to post-process the helm chart after being rendered by Helm.\n\nThis is equivalent to the same post-renderer feature already available in Helm with the difference that this supports a list of executables instead of a single one.\n\nWhen more than one post-renderer is given, they will be combined into a single one in which the input of each of them would be output of the previous one.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart deployment." + }, + "helm_unittest_test": { + "alias": "helm_unittest_test", + "description": "A single helm-unittest suite file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A single helm-unittest suite file." + }, + "helm_unittest_tests": { + "alias": "helm_unittest_tests", + "description": "Generates a `helm_unittest_test` target per each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.yaml',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*_test.yaml', '!ignore_test.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"configmap_test.yaml\": {\"timeout\": 120},\n (\"deployment_test.yaml\", \"pod_test.yaml\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `helm_unittest_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "Generates a `helm_unittest_test` target per each file in the `sources` field." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.java', 'New*.java', '!OldExample.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.java', '!TestIgnore.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "excludes", + "default": null, + "description": "A list of unversioned coordinates (i.e. `group:artifact`) that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nThese values are passed directly to Coursier, and if specified incorrectly will show a parse error from Coursier.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., web.xml) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the individual JAR artifacts embedded in the `WEB-INF/lib` folder.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "kotlin_junit_test": { + "alias": "kotlin_junit_test", + "description": "A single Kotlin test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin test, run with JUnit." + }, + "kotlin_junit_tests": { + "alias": "kotlin_junit_tests", + "description": "Generate a `kotlin_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.kt', '!TestIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_junit_test` target for each file in the `sources` field." + }, + "kotlin_source": { + "alias": "kotlin_source", + "description": "A single Kotlin source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin source file containing application or library code." + }, + "kotlin_sources": { + "alias": "kotlin_sources", + "description": "Generate a `kotlin_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.kt', 'New*.kt', '!OldIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_source` target for each file in the `sources` field." + }, + "kotlinc_plugin": { + "alias": "kotlinc_plugin", + "description": "A plugin for `kotlinc`.\n\nTo enable a `kotlinc` plugin, define a target with this target type, and set the `artifact` field to the address of a `jvm_artifact` target that provides the plugin. Set the `plugin_id` field to the ID of the plugin if that name cannot be inferred from the `name` of this target.\n\nThe standard `kotlinc` plugins are available via the following artifact coordinates and IDs: * All-open: `org.jetbrains.kotlin:kotlin-allopen:VERSION` (ID: `all-open`)\n* No-arg: `org.jetbrains.kotlin:kotlin-noarg:VERSION` (ID: `no-arg`)\n* SAM with receiver: `org.jetbrains.kotlin:kotlin-sam-with-receiver:VERSION` (ID: `sam-with-receiver`)\n* kapt (annotation processor): `org.jetbrains.kotlin:org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:VERSION` (ID: `kapt3`)\n* Seralization: `org.jetbrains.kotlin:kotlin-serialization:VERSION` (ID: `serialization`)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `kotlinc`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_id", + "default": null, + "description": "The ID for `kotlinc` to use when setting options for the plugin.\n\nIf not set, the plugin ID defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "plugin_args", + "default": null, + "description": "Optional list of argument to pass to the plugin.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A plugin for `kotlinc`." + }, + "local_environment": { + "alias": "local_environment", + "description": "Configuration of a local execution environment for specific platforms.\n\nEnvironment configuration includes the platforms the environment is compatible with, and optionally a fallback environment, along with environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOnly one `local_environment` may be defined in `[environments-preview].names` per platform, and when `__local__` is specified as the environment, the `local_environment` that matches the current platform (if defined) will be selected.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatible_platforms", + "default": "('linux_arm64', 'linux_x86_64', 'macos_arm64', 'macos_x86_64')", + "description": "Which platforms this environment can be used with.\n\nThis is used for Pants to automatically determine which environment target to use for the user's machine when the environment is set to the special value `__local__`. Currently, there cannot be more than one environment target registered in `[environments-preview].names` for a particular platform. If there is no environment target for a certain platform, Pants will use the options system instead to determine environment variables and executable search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this local environment cannot be used because the field `compatible_platforms` is not compatible with the local host.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific local environment cannot be used.\n\nTip: when targeting Linux, it can be particularly helpful to fallback to a `docker_environment` or `remote_environment` target. That allows you to prefer using the local host when possible, which often has less overhead (particularly compared to Docker). If the local host is not compatible, then Pants will use Docker or remote execution to still run in a similar environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_path", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_path` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a local execution environment for specific platforms." + }, + "openapi_document": { + "alias": "openapi_document", + "description": "A single OpenAPI document file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI document file." + }, + "openapi_documents": { + "alias": "openapi_documents", + "description": "Generate an `openapi_document` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('openapi.json', 'openapi.yaml', 'openapi.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['openapi.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_document` target for each file in the `sources` field." + }, + "openapi_source": { + "alias": "openapi_source", + "description": "A single OpenAPI source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI source file." + }, + "openapi_sources": { + "alias": "openapi_sources", + "description": "Generate an `openapi_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.json', '*.yaml', '*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_source` target for each file in the `sources` field." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants. The generated targets will have the correct version based on the `version` in your `pants.toml`, and they will work with dependency inference.\n\nBecause the Plugin API is not yet stable, the version is set automatically for you to improve stability. If you're currently using a dev release, the version will be set to that exact dev release. If you're using an alpha release, release candidate (rc), or stable release, the version will allow any non-dev-release release within the release series, e.g. `>=2.16.0rc0,<2.17`.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n ```\n overrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n }\n ```\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same entry_point in multiple keys, so long as you don't override the same field more than one time for the entry_point.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.16/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "args", + "default": null, + "description": "Freeze these command-line args into the PEX. Allows you to run generic entry points on specific arguments without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "env", + "default": null, + "description": "Freeze these environment variables into the PEX. Allows you to run generic entry points on a specific environment without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry pyproject.toml." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.16/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.16/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.proto', 'new_*.proto', '!old_ignore*.proto']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.proto\": {\"grpc\": True},\n \"bar.proto\": {\"description\": \"our user model\"},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.16/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the value of the `binary_name` field. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary that will be output by PyOxidizer. If not set, this will default to the name of this target.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by $ or surrounded with ${ }.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted entry_point passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or []).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets filesystem_resources.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.16/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.16/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: 'path.to.module'.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.16/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the Pex. This is most useful with Lambda Layers to make code uploads smaller when deps are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.\n\nIn general you'll want to define either a `runtime` or one `complete_platforms` but not both. Specifying a `runtime` is simpler, but less accurate. If you have issues either packaging the AWS Lambda PEX or running it as a deployed AWS Lambda function, you should try using `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nN.B.: If specifying `complete_platforms` to work around packaging failures encountered when using the `runtime` field, ensure you delete the `runtime` field from your `python_awslambda` target.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.16/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\n Example:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n scie-pants-linux-x86_64 dependencies ", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.16/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing setup.py, setup.cfg, pyproject.toml files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "env_vars", + "default": null, + "description": "Environment variables to set when running the PEP-517 build backend.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the long_description field in setup.py.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": "''", + "description": "The path to the directory to write the distribution file to, relative the dist directory.\n\nIf undefined, this defaults to the empty path, i.e. the output goes at the top level of the dist dir.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + }, + { + "alias": "uses_mypyc", + "default": "False", + "description": "If true, this distribution is built using mypyc.\n\nIn this case, Pants will build the distribution in an environment that includes mypy, as configured in the `[mypy]` subsystem, including plugins, config files, extra type stubs, and the distribution's own requirements (which normally would not be needed at build time, but in this case may provide necessary type annotations).\n\nYou will typically set this field on distributions whose setup.py uses mypyc.build.mypycify(). See https://mypyc.readthedocs.io/en/latest/index.html .", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.16/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'cloud_function.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.\n\nIn general you'll want to define either a `runtime` or one `complete_platforms` but not both. Specifying a `runtime` is simpler, but less accurate. If you have issues either packaging the Google Cloud Function PEX or running it as a deployed Google Cloud Function, you should try using `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "'python310' | 'python311' | 'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nN.B.: If specifying `complete_platforms` to work around packaging failures encountered when using the `runtime` field, ensure you delete the `runtime` field from your `python_google_cloud_function` target.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be 'event' or 'http'. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to --trigger-http.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant pyproject.toml file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser.\n\nFurther details about pip-style requirements files are available from the PyPA documentation: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.\n\nFurther details about PEP 621 and pyproject.toml files are available from the PEP itself: https://peps.python.org/pep-0621/. If the `project.optional-dependencies` table is included, pants will save the key/name of the optional dependency group as a tag on the generated `python_requirement`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n ```\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n ```\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant pyproject.toml file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'new_*.py', '!old_ignore.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.16/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single `pytest` process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same `pytest` process. Compatible tests may not end up in the same `pytest` batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all entry_points on python_distribution targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the entry_points only need to be defined on one `python_distribution` even if the test only needs some of the entry_points namespaces on it.\n\nPlus, an entry_points.txt file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The entry_points.txt file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools entry_points metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (my.stevedore.extension) is similar to a python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test_*.py', '*_test.py', 'tests.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo_test.py\": {\"timeout\": 120},\n \"bar_test.py\": {\"timeout\": 200},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all entry_points on python_distribution targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the entry_points only need to be defined on one `python_distribution` even if the test only needs some of the entry_points namespaces on it.\n\nPlus, an entry_points.txt file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The entry_points.txt file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools entry_points metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (my.stevedore.extension) is similar to a python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's makemigrations command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single `pytest` process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same `pytest` process. Compatible tests may not end up in the same `pytest` batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "remote_environment": { + "alias": "remote_environment", + "description": "Configuration of a remote execution environment used for building your code.\n\nEnvironment configuration includes platform properties and a fallback environment, as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this remote environment.\n\nNote that you must also configure remote execution with the global options like `remote_execution` and `remote_execution_address`.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOften, it is only necessary to have a single `remote_environment` target for your repository, but it can be useful to have >1 so that you can set different `extra_platform_properties`. For example, with some servers, you could use this to configure a different Docker image per environment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platform", + "default": "'linux_x86_64'", + "description": "The platform used by the remote execution environment.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "extra_platform_properties", + "default": "()", + "description": "Platform properties to set on remote execution requests.\n\nFormat: property=value. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when remote execution is disabled via the global option `--remote-execution`.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when remote execution is disabled.\n\nTip: if you are using a Docker image with your remote execution environment (usually enabled by setting the field extra_platform_properties`), then it can be useful to fallback to an equivalent `docker_image` target so that you have a consistent execution environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cache_binary_discovery", + "default": "False", + "description": "If true, will cache system binary discovery, e.g. finding Python interpreters.\n\nWhen safe to do, it is preferable to set this option to `True` for faster performance by avoiding wasted work. Otherwise, Pants will search for system binaries whenever the Pants daemon is restarted.\n\nHowever, it is only safe to set this to `True` if the remote execution environment has a stable environment, e.g. the server will not change versions of installed system binaries. Otherwise, you risk caching results that become stale when the server changes its environment, which may break your builds. With some remote execution servers, you can specify a Docker image to run with via the field `extra_platform_properties`; if you are able to specify what Docker image to use, and also use a pinned tag of the image, it is likely safe to set this field to true.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_path", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_path` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a remote execution environment used for building your code." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an http_source is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (E.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n `curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null`\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (linux_arm64, linux_x86_64, macos_arm64, macos_x86_64) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "run_shell_command": { + "alias": "run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `shell_command`, in addition to `workdir` you only have the `command` and `execution_dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful.\n\nSee also `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.scala', '!TestIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_junit_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.scala', 'New*.scala', '!OldIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_sources` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala')).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Spec.scala', '!SuiteIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scalatest_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala'))." + }, + "shell_command": { + "alias": "shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n execution_dependencies=[\":scripts\"],\n output_files=[\"logs/my-script.log\"],\n output_directories=[\"results\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that the output artifacts require in order to be effectively consumed.\n\nTo enable legacy use cases, if `execution_dependencies` is `None`, these dependencies will be materialized in the execution sandbox. This behavior is deprecated, and will be removed in version 2.17.0.dev0.\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the output side-effects useful. Dependencies that are required to use the side-effects produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\n Values are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.sh', 'new_*.sh', '!old_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test.sh', 'test_*.sh', '!test_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"foo_test.sh\": {\"timeout\": 120},\n \"bar_test.sh\": {\"timeout\": 200},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "system_binary": { + "alias": "system_binary", + "description": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`.\n\nPants will search for binaries with name `binary_name` in the search paths provided, as well as default search paths. If `fingerprint` is specified, each binary that is located will be executed with the arguments from `fingerprint_args`. Any binaries whose output does not match the pattern will be excluded.\n\nThe first non-excluded binary will be the one that is resolved.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary to find.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "extra_search_paths", + "default": "()", + "description": "Extra search paths to look for the binary. These take priority over Pants' default search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint", + "default": null, + "description": "A regular expression which will be used to match the fingerprint outputs from candidate binaries found during the search process.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "fingerprint_args", + "default": "()", + "description": "Specifies arguments that will be used to run the binary during the search process.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint_dependencies", + "default": null, + "description": "Specifies any runnable dependencies that need to be available on the `PATH` when the binary is run, so that the search process may complete successfully. The name of the target must be the name of the runnable dependency that is called by this binary.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.tf', 'new_*.tf', '!old_ignore.tf']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.16/docs/thrift-python", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.thrift', 'new_*.thrift', '!old_ignore.thrift']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `{generated_target_name}` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n overrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.16/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + }, + "vcs_version": { + "alias": "vcs_version", + "description": "Generates a version string from VCS state.\n\nUses a constrained but useful subset of the full functionality of setuptools_scm (https://github.com/pypa/setuptools_scm). These constraints avoid pitfalls in the interaction of setuptools_scm with Pants's hermetic environments.\n\nIn particular, we ignore any existing setuptools_scm config. Instead you must provide a subset of that config in this target's fields.\n\nIf you need functionality that is not currently exposed here, please reach out to us at https://www.pantsbuild.org/v2.16/docs/getting-help.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "tag_regex", + "default": "'^(?:[\\\\w-]+-)?(?P[vV]?\\\\d+(?:\\\\.\\\\d+){0,2}[^\\\\+]*)(?:\\\\+.*)?$'", + "description": "A Python regex string to extract the version string from a VCS tag.\n\nThe regex needs to contain either a single match group, or a group named version, that captures the actual version information.\n\nNote that this is unrelated to the tags field and Pants's own tags concept.\n\nSee https://github.com/pypa/setuptools_scm for implementation details.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "generate_to", + "default": null, + "description": "Generate the version data to this relative path, using the template field.\n\nNote that the generated output will not be written to disk in the source tree, but will be available as a generated dependency to code that depends on this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "template", + "default": null, + "description": "Generate the version data using this format string, which takes a version format kwarg.\n\nE.g., 'version = \"{version}\"'", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python", + "summary": "Generates a version string from VCS state." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "fromfile": false, + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "fromfile": false, + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "fromfile": false, + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "fromfile": false, + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "fromfile": false, + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "fromfile": false, + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "fromfile": false, + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "fromfile": false, + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.16/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.16.1rc4" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.16.1rc4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "fromfile": false, + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "fromfile": false, + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "fromfile": false, + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "fromfile": false, + "help": "Write end products, such as the results of `pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "fromfile": false, + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "fromfile": false, + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "fromfile": false, + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "fromfile": false, + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "fromfile": false, + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "fromfile": false, + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "fromfile": false, + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/", + "__pycache__" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "fromfile": false, + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/", + "__pycache__" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "fromfile": false, + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "fromfile": false, + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--logdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "fromfile": false, + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "4GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "fromfile": false, + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "fromfile": false, + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "target_field_name": null, + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "fromfile": false, + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "fromfile": false, + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "fromfile": false, + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "fromfile": false, + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "fromfile": false, + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "fromfile": false, + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "fromfile": false, + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "fromfile": false, + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": [ + "fetch", + "validate", + "defer" + ], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cache-content-behavior=" + ], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "fromfile": false, + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "target_field_name": null, + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.16/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-total-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-per-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "fromfile": false, + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "fromfile": false, + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "fromfile": false, + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "fromfile": false, + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use a Pants plugin which provides remote authentication to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "fromfile": false, + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "fromfile": false, + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "fromfile": false, + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.16.1rc4" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "fromfile": false, + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "fromfile": false, + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-timeout-millis=", + "config_key": "remote_store_rpc_timeout_millis", + "default": 30000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote store RPCs (not including streaming requests) in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-timeout-millis" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 30000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "fromfile": false, + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "fromfile": false, + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "target_field_name": null, + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-timeout-millis=", + "config_key": "remote_cache_rpc_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache RPCs in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-timeout-millis" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "fromfile": false, + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "fromfile": false, + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.16.1rc4" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "fromfile": false, + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-append-only-caches-base-path=", + "config_key": "remote_execution_append_only_caches_base_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-append-only-caches-base-path=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH", + "fromfile": false, + "help": "Sets the base path to use when setting up an append-only cache for a process running remotely. If this option is not set, then append-only caches will not be used with remote execution. The option should be set to the absolute path of a writable directory in the remote execution environment where Pants can create append-only caches for use with remotely executing processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "fromfile": false, + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-build-file-globs=" + ], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "fromfile": false, + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-cli-globs=" + ], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "fromfile": false, + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "fromfile": false, + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "fromfile": false, + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "fromfile": false, + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.16/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "fromfile": false, + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "fromfile": false, + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "fromfile": false, + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-level=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "fromfile": false, + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "fromfile": false, + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-execution", + "config_key": "docker_execution", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-execution" + ], + "env_var": "PANTS_DOCKER_EXECUTION", + "fromfile": false, + "help": "If true, `docker_environment` targets can be used to run builds inside a Docker container.\n\nIf false, anytime a `docker_environment` target is used, Pants will instead fallback to whatever the target's `fallback_environment` field is set to.\n\nThis can be useful, for example, if you want to always use Docker locally, but disable it in CI, or vice versa.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "fromfile": false, + "help": "Platform properties to set on remote execution requests.\n\nFormat: property=value. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.\n\nIf you are using the remote_environment target mechanism, set this value as a field on the target instead. This option will be ignored.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "fromfile": false, + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "fromfile": false, + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "fromfile": false, + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "fromfile": false, + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "fromfile": false, + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "always", + "on_failure", + "never" + ], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--keep-sandboxes=" + ], + "env_var": "PANTS_KEEP_SANDBOXES", + "fromfile": false, + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "target_field_name": null, + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--session-end-tasks-timeout=", + "config_key": "session_end_tasks_timeout", + "default": 3.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--session-end-tasks-timeout=" + ], + "env_var": "PANTS_SESSION_END_TASKS_TIMEOUT", + "fromfile": false, + "help": "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 invocation to a configured remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--session-end-tasks-timeout" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--session-end-tasks-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "fromfile": false, + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "fromfile": false, + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "fromfile": false, + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "fromfile": false, + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "fromfile": false, + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "indicatif-spinner", + "experimental-prodash" + ], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dynamic-ui-renderer=" + ], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "fromfile": false, + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "target_field_name": null, + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "fromfile": false, + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.16/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "fromfile": false, + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "fromfile": false, + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "fromfile": false, + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": "Unused: use the `remote_store_rpc_timeout_millis` option instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--remote-cache-read-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": "Use the `remote_cache_rpc_timeout_millis` option instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "add-trailing-comma": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-install-from-resolve=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `add-trailing-comma` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-console-script=", + "config_key": "console_script", + "default": "add-trailing-comma", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-console-script=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-entry-point=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]add-trailing-comma-skip" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_SKIP", + "fromfile": false, + "help": "If true, don't use add-trailing-comma when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-skip", + "--no-add-trailing-comma-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to add-trailing-comma, e.g. `--add-trailing-comma-args='--py36-plus'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-version=", + "config_key": "version", + "default": "add-trailing-comma>=2.2.3,<3", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--add-trailing-comma-version=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--add-trailing-comma-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma>=2.2.3,<3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--add-trailing-comma-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--add-trailing-comma-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--add-trailing-comma-lockfile=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/add_trailing_comma/add_trailing_comma.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=add-trailing-comma`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[add-trailing-comma].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced add-trailing-comma`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--add-trailing-comma-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]add-trailing-comma-export" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with add-trailing-comma when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--add-trailing-comma-export", + "--no-add-trailing-comma-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "scope": "add-trailing-comma" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "fromfile": false, + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.16/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "fromfile": false, + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.16/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-expected-version=" + ], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "fromfile": false, + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-expected-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-thrift-search-paths" + ], + "target_field_name": "apache_thrift_thrift_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--thrift-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-install-from-resolve=" + ], + "env_var": "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `autoflake` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "fromfile": false, + "help": "If true, don't use Autoflake when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [ + "--remove-all-unused-imports" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "--remove-all-unused-imports" + ] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake>=1.4,<3", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--autoflake-version=" + ], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--autoflake-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake>=1.4,<3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--autoflake-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--autoflake-lockfile=" + ], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/autoflake/autoflake.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=autoflake`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[autoflake].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced autoflake`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--autoflake-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]autoflake-export" + ], + "env_var": "PANTS_AUTOFLAKE_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Autoflake when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--autoflake-export", + "--no-autoflake-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-install-from-resolve=" + ], + "env_var": "PANTS_BANDIT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `bandit` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "fromfile": false, + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "fromfile": false, + "help": "If true, don't use Bandit when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython>=3.1.24" + ], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython>=3.1.24" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/bandit/bandit.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=bandit`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[bandit].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced bandit`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]bandit-export" + ], + "env_var": "PANTS_BANDIT_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Bandit when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--bandit-export", + "--no-bandit-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-install-from-resolve=" + ], + "env_var": "PANTS_BLACK_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `black` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "fromfile": false, + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "fromfile": false, + "help": "If true, don't use Black when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black>=22.6.0,<24", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--black-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black>=22.6.0,<24" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/black/black.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[black].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced black`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]black-export" + ], + "env_var": "PANTS_BLACK_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Black when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--black-export", + "--no-black-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-version=" + ], + "env_var": "PANTS_BUF_VERSION", + "fromfile": false, + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-template=" + ], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-config=" + ], + "env_var": "PANTS_BUF_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Buf (https://docs.buf.build/configuration/overview).\n\nSetting this option will disable `[buf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-config-discovery" + ], + "env_var": "PANTS_BUF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant root config files during runs (`buf.yaml`, `buf.lock`, `buf.gen.yaml` and `buf.work.yaml`).\n\nUse `[buf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config-discovery", + "--no-buf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-format-skip" + ], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-skip", + "--no-buf-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--format-skip", + "--no-format-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-lint-skip" + ], + "env_var": "PANTS_BUF_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-skip", + "--no-buf-lint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-skip", + "--no-lint-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--format-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--lint-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "build-deprecations-fixer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]build-deprecations-fixer-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]build-deprecations-fixer-skip" + ], + "env_var": "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP", + "fromfile": false, + "help": "If true, don't use BUILD Deprecations Fixer when running `scie-pants-linux-x86_64 fix`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-deprecations-fixer-skip", + "--no-build-deprecations-fixer-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for: - Renamed targets - Renamed fields", + "is_goal": false, + "provider": "pants.backend.build_files.fix.deprecations", + "scope": "build-deprecations-fixer" + }, + "buildifier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-version=" + ], + "env_var": "PANTS_BUILDIFIER_VERSION", + "fromfile": false, + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-template=" + ], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buildifier-skip" + ], + "env_var": "PANTS_BUILDIFIER_SKIP", + "fromfile": false, + "help": "If true, don't use Buildifier when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-skip", + "--no-buildifier-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "is_goal": false, + "provider": "pants.backend.build_files.fmt.buildifier", + "scope": "buildifier" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "fromfile": false, + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "fromfile": false, + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependents=", + "config_key": "dependents", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependents=" + ], + "env_var": "PANTS_CHANGED_DEPENDENTS", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependents" + ], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": [ + "--dependents" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [ + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": "Use --dependents instead", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.16/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--check-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_CHECK_ONLY", + "fromfile": false, + "help": "Only run these checkers and skip all others.\n\nThe checker names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkers.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--check-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "fromfile": false, + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependents=transitive\"\n\nThis would allow you to run `scie-pants-linux-x86_64 green all-changed`, which is shorthand for `scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependents=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.0-M5-18-gfebf9838c", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "fromfile": false, + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.0-M5-18-gfebf9838c" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "fromfile": false, + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-install-from-resolve=" + ], + "env_var": "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `coverage-py` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "fromfile": false, + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "fromfile": false, + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']`.\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json", + "lcov" + ], + "comma_separated_choices": "console, xml, html, raw, json, lcov", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "fromfile": false, + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "fromfile": false, + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "fromfile": false, + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=6.5,<8", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=6.5,<8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/subsystems/coverage_py.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=coverage-py`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[coverage-py].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced coverage-py`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "debug-adapter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-host=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "fromfile": false, + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-host" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--host" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-port=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "fromfile": false, + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "is_goal": false, + "provider": "pants.core", + "scope": "debug-adapter" + }, + "debugpy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-install-from-resolve=" + ], + "env_var": "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `debugpy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-console-script=" + ], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-entry-point=" + ], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DEBUGPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-version=", + "config_key": "version", + "default": "debugpy>=1.6.5,<1.7", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--debugpy-version=" + ], + "env_var": "PANTS_DEBUGPY_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--debugpy-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy>=1.6.5,<1.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--debugpy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--debugpy-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--debugpy-lockfile=" + ], + "env_var": "PANTS_DEBUGPY_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/subsystems/debugpy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=debugpy`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[debugpy].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced debugpy`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--debugpy-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "debugpy" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "dependents": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependents-output-file=" + ], + "env_var": "PANTS_DEPENDENTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependents-sep=" + ], + "env_var": "PANTS_DEPENDENTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependents-transitive" + ], + "env_var": "PANTS_DEPENDENTS_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-transitive", + "--no-dependents-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependents-closed" + ], + "env_var": "PANTS_DEPENDENTS_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-closed", + "--no-dependents-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependents" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-install-from-resolve=" + ], + "env_var": "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `docformatter` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "fromfile": false, + "help": "If true, don't use docformatter when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/docformatter/docformatter.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=docformatter`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[docformatter].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced docformatter`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]docformatter-export" + ], + "env_var": "PANTS_DOCFORMATTER_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with docformatter when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--docformatter-export", + "--no-docformatter-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-tools=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_TOOLS", + "fromfile": false, + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tools" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tools" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-tailor" + ], + "env_var": "PANTS_DOCKER_TAILOR", + "fromfile": false, + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tailor", + "--no-docker-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "target_field_name": "docker_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find the Docker client and any tools required.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-executable-search-paths" + ], + "target_field_name": "docker_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "fromfile": true, + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n \"use_local_alias\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.\n\nIf `use_local_alias` is true, a built image is additionally tagged locally using the registry alias as the value for repository (i.e. the additional image tag is not pushed) and will be used for any `pants run` requests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "fromfile": false, + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-context-root=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "fromfile": false, + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-context-root" + ], + "target_field_name": null, + "typ": "workspace_path", + "unscoped_cmd_line_args": [ + "--default-context-root" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "fromfile": false, + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "fromfile": false, + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-verbose" + ], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "fromfile": false, + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-verbose", + "--no-build-verbose" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "fromfile": false, + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-install-from-resolve=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `dockerfile-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--dockerfile-parser-version=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--dockerfile-parser-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--dockerfile-parser-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--dockerfile-parser-lockfile=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/docker/subsystems/dockerfile.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=dockerfile-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[dockerfile-parser].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced dockerfile-parser`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--dockerfile-parser-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.4.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "fromfile": false, + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.4.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]download-terraform-tailor" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "fromfile": false, + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "environments-preview": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "names", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_ENVIRONMENTS_PREVIEW_NAMES", + "fromfile": false, + "help": "A mapping of logical names to addresses to environment targets. For example:\n\n [environments-preview.names]\n linux_local = \"//:linux_env\"\n macos_local = \"//:macos_env\"\n centos6 = \"//:centos6_docker_env\"\n linux_ci = \"build-support:linux_ci_env\"\n macos_ci = \"build-support:macos_ci_env\"\n\nTo use an environment for a given target, specify the name in the `environment` field on that target. Pants will consume the environment target at the address mapped from that name.\n\nPants will ignore any environment targets that are not given a name via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--environments-preview-names" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A highly experimental subsystem to allow setting environment variables and executable search paths for different environments, e.g. macOS vs. Linux.", + "is_goal": false, + "provider": "", + "scope": "environments-preview" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]experimental-bsp-server" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "fromfile": false, + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--server", + "--no-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": [ + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-runner-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--runner-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "fromfile": false, + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-groups-config-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--groups-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-bsp" + }, + "experimental-deploy": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Perform a deployment process.", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-deploy" + }, + "experimental-explorer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-address=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "fromfile": false, + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-port=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "fromfile": false, + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run the Pants Explorer Web UI server.", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-explorer" + }, + "export": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_RESOLVE", + "fromfile": false, + "help": "Export the specified resolve(s). The export format is backend-specific, e.g., Python resolves are exported as virtualenvs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "mutable_virtualenv", + "symlinked_immutable_virtualenv" + ], + "comma_separated_choices": "mutable_virtualenv, symlinked_immutable_virtualenv", + "comma_separated_display_args": "--export-py-resolve-format=", + "config_key": "py_resolve_format", + "default": "mutable_virtualenv", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-resolve-format=" + ], + "env_var": "PANTS_EXPORT_PY_RESOLVE_FORMAT", + "fromfile": false, + "help": "Export Python resolves using this format. Options are:\n - mutable_virtualenv: Export a standalone mutable virtualenv that you can\n further modify.\n - symlinked_immutable_virtualenv: Export a symlink into a cached Python virtualenv.\n This virtualenv will have no pip binary, and will be immutable. Any attempt to\n modify it will corrupt the cache! It may, however, take significantly less time\n to export than a standalone, mutable virtualenv.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-py-resolve-format" + ], + "target_field_name": null, + "typ": "PythonResolveExportFormat", + "unscoped_cmd_line_args": [ + "--py-resolve-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mutable_virtualenv" + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]export-symlink-python-virtualenv", + "config_key": "symlink_python_virtualenv", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.20.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]export-symlink-python-virtualenv" + ], + "env_var": "PANTS_EXPORT_SYMLINK_PYTHON_VIRTUALENV", + "fromfile": false, + "help": "Export a symlink into a cached Python virtualenv. This virtualenv will have no pip binary, and will be immutable. Any attempt to modify it will corrupt the cache! It may, however, take significantly less time to export than a standalone, mutable virtualenv will.", + "removal_hint": "Set the `[export].py_resolve_format` option to 'symlinked_immutable_virtualenv'", + "removal_version": "2.20.0.dev0", + "scoped_cmd_line_args": [ + "--export-symlink-python-virtualenv", + "--no-export-symlink-python-virtualenv" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--symlink-python-virtualenv", + "--no-symlink-python-virtualenv" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.core", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "fromfile": false, + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "fromfile": false, + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "fromfile": false, + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "fromfile": false, + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "fromfile": false, + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "target_field_name": null, + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "fromfile": false, + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "fromfile": false, + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "fix": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fix-batch-size=" + ], + "env_var": "PANTS_FIX_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each fixer batch.\n\nFixer processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in fixer processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fix-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FIX_ONLY", + "fromfile": false, + "help": "Only run these fixers and skip all others.\n\nThe fixer names are outputted at the final summary of running this goal, e.g. `autoflake` and `pyupgrade`. You can also run `fix --only=fake` to get a list of all activated fixers.\n\nYou can repeat this option, e.g. `fix --only=autoflake --only=pyupgrade` or `fix --only=['autoflake', 'pyupgrade']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fix-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fix-skip-formatters" + ], + "env_var": "PANTS_FIX_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters.\n\nFYI: when running `scie-pants-linux-x86_64 fix fmt ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `fix` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-skip-formatters", + "--no-fix-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autofix source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fix" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-install-from-resolve=" + ], + "env_var": "PANTS_FLAKE8_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `flake8` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "fromfile": false, + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "fromfile": false, + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add 'build-support/flake8' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.16/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n ```\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n ```\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[flake8].extra_requirements`.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Flake8 plugins such as 'flake8-plugins' so that the third-party requirements used by your plugin, like `flake8`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "fromfile": false, + "help": "If true, don't use Flake8 when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=5.0.4,<7", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=5.0.4,<7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/flake8/flake8.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=flake8`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[flake8].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced flake8`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]flake8-export" + ], + "env_var": "PANTS_FLAKE8_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Flake8 when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--flake8-export", + "--no-flake8-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.flake8", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-batch-size=" + ], + "env_var": "PANTS_FMT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FMT_ONLY", + "fromfile": false, + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "fromfile": false, + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "fromfile": false, + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from backend-specific configuration such as `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff", + "config_key": "diff", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]generate-lockfiles-diff" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF", + "fromfile": false, + "help": "Print a summary of changed distributions after generating the lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff", + "--no-generate-lockfiles-diff" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff", + "--no-diff" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff-include-unchanged", + "config_key": "diff_include_unchanged", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]generate-lockfiles-diff-include-unchanged" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED", + "fromfile": false, + "help": "Include unchanged distributions in the diff summary output. Implies `diff=true`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff-include-unchanged", + "--no-generate-lockfiles-diff-include-unchanged" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff-include-unchanged", + "--no-diff-include-unchanged" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "go-generate": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-generate-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-generate-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_GENERATE_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking generator programs. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-generate-env-vars" + ], + "target_field_name": "go_generate_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the //go:generate directives.\n\nSee https://go.dev/blog/generate for details.", + "is_goal": true, + "provider": "pants.backend.experimental.go", + "scope": "go-generate" + }, + "go-test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{target_spec}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-output-dir=" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Go coverage reports to. Must be relative to the build root.\n\nReplacements:\n\n- `{distdir}` is replaced with the Pants `distdir`.\n\n- `{target_spec}` is replaced with the address of the applicable `go_package` target with `/` characters replaced with dots (`.`).\n\n- `{import_path}` is replaced with the applicable package's import path. Subdirectories will be made for any path components separated by `/` characters.\n\n- `{import_path_escaped}` is replaced with the applicable package's import path but with slashes converted to underscores. This is deprecated and only exists to support behavior from earlier versions.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-output-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--coverage-output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{target_spec}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-output-test-binary", + "config_key": "output_test_binary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-output-test-binary" + ], + "env_var": "PANTS_GO_TEST_OUTPUT_TEST_BINARY", + "fromfile": false, + "help": "Write the test binary to the test extra output directory.\n\nThis is similar to the `go test -c` option, but will still run the underlying test.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-output-test-binary", + "--no-go-test-output-test-binary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--output-test-binary", + "--no-output-test-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "set", + "count", + "atomic" + ], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-cover-mode=" + ], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "fromfile": false, + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via --test-use-coverage. Valid values are `set`, `count`, and `atomic`:\n\n* `set`: bool: does this statement run?\n\n* `count`: int: how many times does this statement run?\n\n* `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cover-mode" + ], + "target_field_name": null, + "typ": "GoCoverMode", + "unscoped_cmd_line_args": [ + "--cover-mode" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-coverage-html", + "config_key": "coverage_html", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-coverage-html" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_HTML", + "fromfile": false, + "help": "If true, then convert coverage reports to HTML format and write a `coverage.html` file next to the raw coverage data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-html", + "--no-go-test-coverage-html" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--coverage-html", + "--no-coverage-html" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-packages=\"['', '', ...]\"", + "config_key": "coverage_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_PACKAGES", + "fromfile": false, + "help": "A list of \"import path patterns\" for determining which import paths will be instrumented for code coverage.\n\nFrom `go help packages`:\n\nAn import path is a pattern if it includes one or more \"...\" wildcards, each of which can match any string, including the empty string and strings containing slashes. Such a pattern expands to all package directories found in the GOPATH trees with names matching the patterns.\n\nTo make common patterns more convenient, there are two special cases. First, /... at the end of the pattern can match an empty string, so that net/... matches both net and packages in its subdirectories, like net/http. Second, any slash-separated pattern element containing a wildcard never participates in a match of the \"vendor\" element in the path of a vendored package, so that ./... does not match packages in subdirectories of ./vendor or ./mycode/vendor, but ./vendor/... and ./mycode/vendor/... do. Note, however, that a directory named vendor that itself contains code is not a vendored package: cmd/vendor would be a command named vendor, and the pattern cmd/... matches it. See golang.org/s/go15vendor for more about vendoring.\n\nThis option is similar to the `go test -coverpkg` option, but without support currently for reserved import path patterns like `std` and `all`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-packages" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--coverage-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-skip" + ], + "env_var": "PANTS_GO_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Go test binary when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-skip", + "--no-go-test-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-race", + "config_key": "force_race", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-force-race" + ], + "env_var": "PANTS_GO_TEST_FORCE_RACE", + "fromfile": false, + "help": "If true, then always enable the Go data race detector when running tests regardless of the test-by-test `test_race` field on the relevant `go_package` target.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-race", + "--no-go-test-force-race" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-race", + "--no-force-race" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-msan", + "config_key": "force_msan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-force-msan" + ], + "env_var": "PANTS_GO_TEST_FORCE_MSAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"memory sanitizer\" when running tests regardless of the test-by-test `msan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-msan", + "--no-go-test-force-msan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-msan", + "--no-force-msan" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-asan", + "config_key": "force_asan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-force-asan" + ], + "env_var": "PANTS_GO_TEST_FORCE_ASAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"address sanitizer\" when running tests regardless of the test-by-test `asan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-asan", + "--no-go-test-force-asan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-asan", + "--no-force-asan" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-block-profile", + "config_key": "block_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-block-profile" + ], + "env_var": "PANTS_GO_TEST_BLOCK_PROFILE", + "fromfile": false, + "help": "Capture a goroutine blocking profile from the execution of the test runner. The profile will be written to the file `block.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-block-profile", + "--no-go-test-block-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--block-profile", + "--no-block-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-cpu-profile", + "config_key": "cpu_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-cpu-profile" + ], + "env_var": "PANTS_GO_TEST_CPU_PROFILE", + "fromfile": false, + "help": "Capture a CPU profile from the execution of the test runner. The profile will be written to the file `cpu.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cpu-profile", + "--no-go-test-cpu-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cpu-profile", + "--no-cpu-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mem-profile", + "config_key": "mem_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-mem-profile" + ], + "env_var": "PANTS_GO_TEST_MEM_PROFILE", + "fromfile": false, + "help": "Capture an allocation profile from the execution of the test runner after tests have passed. The profile will be written to the file `mem.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mem-profile", + "--no-go-test-mem-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mem-profile", + "--no-mem-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mutex-profile", + "config_key": "mutex_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-mutex-profile" + ], + "env_var": "PANTS_GO_TEST_MUTEX_PROFILE", + "fromfile": false, + "help": "Capture a mutex contention profile from the execution of the test runner when all tests are complete. The profile will be written to the file `mutex.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mutex-profile", + "--no-go-test-mutex-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mutex-profile", + "--no-mutex-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-trace", + "config_key": "trace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-trace" + ], + "env_var": "PANTS_GO_TEST_TRACE", + "fromfile": false, + "help": "Capture an execution trace from the execution of the test runner. The trace will be written to the file `trace.out` in the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-trace", + "--no-go-test-trace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--trace", + "--no-trace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "fromfile": false, + "help": "If true, don't use gofmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--gofmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--gofmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_GOFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to gofmt, e.g. `--gofmt-args='-s -e'`.\n\nOnly the following style related options are supported: `-e`, `-r`, `-s`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-go-mod-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "fromfile": false, + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-package-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "fromfile": false, + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-binary-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-tool-name=" + ], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "fromfile": false, + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-tool-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-tool-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-bin-relpath=" + ], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "fromfile": false, + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-bin-relpath" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-bin-relpath" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "target_field_name": "golang_subprocess_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gcc-binary-name=", + "config_key": "cgo_gcc_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-gcc-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_GCC_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-gcc-binary-name" + ], + "target_field_name": "golang_cgo_gcc_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-gcc-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gxx-binary-name=", + "config_key": "cgo_gxx_binary_name", + "default": "g++", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-gxx-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_GXX_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C++ code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-gxx-binary-name" + ], + "target_field_name": "golang_cgo_gxx_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-gxx-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "g++" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-binary-name=", + "config_key": "cgo_fortran_binary_name", + "default": "gfortran", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile fortran code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-fortran-binary-name" + ], + "target_field_name": "golang_cgo_fortran_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-fortran-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gfortran" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-external-linker-binary-name=", + "config_key": "external_linker_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-external-linker-binary-name=" + ], + "env_var": "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use as the \"external linker\" when invoking `go tool link`. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-external-linker-binary-name" + ], + "target_field_name": "golang_external_linker_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--external-linker-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-c-flags=\"['', '', ...]\"", + "config_key": "cgo_c_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-c-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_C_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C code when Cgo is enabled. Equivalent to setting the CGO_CFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-c-flags" + ], + "target_field_name": "golang_cgo_c_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-c-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-cxx-flags=\"['', '', ...]\"", + "config_key": "cgo_cxx_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-cxx-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_CXX_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C++ code when Cgo is enabled. Equivalent to setting the CGO_CXXFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-cxx-flags" + ], + "target_field_name": "golang_cgo_cxx_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-cxx-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-flags=\"['', '', ...]\"", + "config_key": "cgo_fortran_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling Fortran code when Cgo is enabled. Equivalent to setting the CGO_FFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-fortran-flags" + ], + "target_field_name": "golang_cgo_fortran_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-fortran-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-linker-flags=\"['', '', ...]\"", + "config_key": "cgo_linker_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-linker-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_LINKER_FLAGS", + "fromfile": false, + "help": "Compiler options used when linking native code when Cgo is enabled. Equivalent to setting the CGO_LDFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-linker-flags" + ], + "target_field_name": "golang_cgo_linker_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-linker-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-minimum-expected-version=" + ], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "fromfile": false, + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-minimum-expected-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--minimum-expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-cgo-enabled", + "config_key": "cgo_enabled", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-cgo-enabled" + ], + "env_var": "PANTS_GOLANG_CGO_ENABLED", + "fromfile": false, + "help": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-enabled", + "--no-golang-cgo-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cgo-enabled", + "--no-cgo-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable\n* ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "target_field_name": "golang_go_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-tool-search-paths=\"['', '', ...]\"", + "config_key": "cgo_tool_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-tool-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for tools needed by CGo (e.g., gcc, g++).\n\nSpecify absolute paths to directories with tools needed by CGo , e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-tool-search-paths" + ], + "target_field_name": "golang_cgo_tool_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-tool-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Google Java Format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "fromfile": false, + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "fromfile": false, + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "fromfile": false, + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "fromfile": false, + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Hadolint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-version=" + ], + "env_var": "PANTS_HELM_VERSION", + "fromfile": false, + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-template=" + ], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-extra-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-tailor" + ], + "env_var": "PANTS_HELM_TAILOR", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor", + "--no-helm-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "fromfile": true, + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-registries" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-lint-strict" + ], + "env_var": "PANTS_HELM_LINT_STRICT", + "fromfile": false, + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-strict", + "--no-lint-strict" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-default-registry-repository=" + ], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "fromfile": false, + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-default-registry-repository" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-registry-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as folows:\n\n * --atomic\n * --cleanup-on-fail\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n\nBefore attempting to use passthrough arguments, check the refence of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "helm-k8s-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-install-from-resolve=" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-k8s-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-version=", + "config_key": "version", + "default": "hikaru==0.11.0b", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--helm-k8s-parser-version=" + ], + "env_var": "PANTS_HELM_K8S_PARSER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--helm-k8s-parser-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "hikaru==0.11.0b" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--helm-k8s-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--helm-k8s-parser-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--helm-k8s-parser-lockfile=" + ], + "env_var": "PANTS_HELM_K8S_PARSER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/helm/subsystems/k8s_parser.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=helm-k8s-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[helm-k8s-parser].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced helm-k8s-parser`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--helm-k8s-parser-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Analyses K8S manifests rendered by Helm.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-k8s-parser" + }, + "helm-post-renderer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-install-from-resolve=" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-post-renderer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-version=", + "config_key": "version", + "default": "yamlpath>=3.7.0,<4", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--helm-post-renderer-version=" + ], + "env_var": "PANTS_HELM_POST_RENDERER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--helm-post-renderer-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamlpath>=3.7.0,<4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "ruamel.yaml>=0.15.96,!=0.17.0,!=0.17.1,!=0.17.2,!=0.17.5,<=0.17.21" + ], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--helm-post-renderer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--helm-post-renderer-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "ruamel.yaml>=0.15.96,!=0.17.0,!=0.17.1,!=0.17.2,!=0.17.5,<=0.17.21" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--helm-post-renderer-lockfile=" + ], + "env_var": "PANTS_HELM_POST_RENDERER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/helm/subsystems/post_renderer.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=helm-post-renderer`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[helm-post-renderer].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced helm-post-renderer`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--helm-post-renderer-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-post-renderer" + }, + "helm-unittest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.2.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "fromfile": false, + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.2.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-template=" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-unittest-color" + ], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "fromfile": false, + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--color", + "--no-color" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "XUnit", + "NUnit", + "JUnit" + ], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "fromfile": false, + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-output-type" + ], + "target_field_name": null, + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": [ + "--output-type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-unittest-skip" + ], + "env_var": "PANTS_HELM_UNITTEST_SKIP", + "fromfile": false, + "help": "If true, don't use helmunittestsubsystem when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-skip", + "--no-helm-unittest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-unittest" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-install-from-resolve=" + ], + "env_var": "PANTS_IPYTHON_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ipython` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "fromfile": false, + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython>=7.34,<8", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython>=7.34,<8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/subsystems/ipython.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=ipython`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[ipython].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced ipython`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-install-from-resolve=" + ], + "env_var": "PANTS_ISORT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `isort` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "fromfile": false, + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "fromfile": false, + "help": "If true, don't use isort when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--isort-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/isort/isort.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=isort`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[isort].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced isort`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]isort-export" + ], + "env_var": "PANTS_ISORT_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with isort when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--isort-export", + "--no-isort-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "jarjar": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-version=", + "config_key": "version", + "default": "1.8.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-version=" + ], + "env_var": "PANTS_JARJAR_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[jarjar].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.8.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.eed3si9n.jarjar:jarjar-assembly:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JARJAR_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[jarjar].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.eed3si9n.jarjar:jarjar-assembly:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-lockfile=" + ], + "env_var": "PANTS_JARJAR_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/jvm/shading/jarjar.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=jarjar`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JARJAR_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `jarjar` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jarjar-skip-manifest", + "config_key": "skip_manifest", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]jarjar-skip-manifest" + ], + "env_var": "PANTS_JARJAR_SKIP_MANIFEST", + "fromfile": false, + "help": "Skip the processing of the JAR manifest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-skip-manifest", + "--no-jarjar-skip-manifest" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-manifest", + "--no-skip-manifest" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "fatal", + "skip", + "omit", + "move" + ], + "comma_separated_choices": "fatal, skip, omit, move", + "comma_separated_display_args": "--jarjar-misplaced-class-strategy=", + "config_key": "misplaced_class_strategy", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-misplaced-class-strategy=" + ], + "env_var": "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY", + "fromfile": false, + "help": "The strategy to use when processing class files that are in the wrong package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-misplaced-class-strategy" + ], + "target_field_name": null, + "typ": "MisplacedClassStrategy", + "unscoped_cmd_line_args": [ + "--misplaced-class-strategy" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jarjar" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "fromfile": false, + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]javac-tailor-source-targets" + ], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]junit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]junit-skip" + ], + "env_var": "PANTS_JUNIT_SKIP", + "fromfile": false, + "help": "If true, don't use JUnit when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-skip", + "--no-junit-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-tool-jdk=" + ], + "env_var": "PANTS_JVM_TOOL_JDK", + "fromfile": false, + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-tool-jdk" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--tool-jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "fromfile": false, + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]jvm-reproducible-jars" + ], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "fromfile": false, + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-nailgun-remote-cache-speculation-delay=" + ], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "fromfile": false, + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-nailgun-remote-cache-speculation-delay" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--nailgun-remote-cache-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-global-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-global-options" + ], + "target_field_name": "jvm_global_options", + "typ": "list", + "unscoped_cmd_line_args": [ + "--global-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "fromfile": false, + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "fromfile": false, + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like ['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "kotlin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-tailor-source-targets" + ], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-version-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin" + }, + "kotlin-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-imports" + ], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-consumed-types" + ], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Kotlin targets.", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin-infer" + }, + "kotlinc": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-plugins-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlinc" + }, + "ktlint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-version=" + ], + "env_var": "PANTS_KTLINT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.pinterest:ktlint:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.pinterest:ktlint:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-lockfile=" + ], + "env_var": "PANTS_KTLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ktlint-skip" + ], + "env_var": "PANTS_KTLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Ktlint when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-skip", + "--no-ktlint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "scope": "ktlint" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-install-from-resolve=" + ], + "env_var": "PANTS_LAMBDEX_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `lambdex` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.12" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex>=0.1.9", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex>=0.1.9" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/subsystems/lambdex.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=lambdex`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[lambdex].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced lambdex`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "provider": "pants.backend.awslambda.python", + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-batch-size=" + ], + "env_var": "PANTS_LINT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_LINT_ONLY", + "fromfile": false, + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-formatters" + ], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fmt lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-fixers", + "config_key": "skip_fixers", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-fixers" + ], + "env_var": "PANTS_LINT_SKIP_FIXERS", + "fromfile": false, + "help": "If true, skip running all fixers in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fix lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fix` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-fixers", + "--no-lint-skip-fixers" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-fixers", + "--no-skip-fixers" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run linters/formatters/fixers in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "fromfile": false, + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-install-from-resolve=" + ], + "env_var": "PANTS_MYPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`. Tip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your MyPy plugins such as 'mypy-plugins' so that the third-party requirements used by your plugin, like `mypy`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "fromfile": false, + "help": "If true, don't use MyPy when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==1.1.1", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==1.1.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/typecheck/mypy/mypy.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[mypy].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced mypy`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]mypy-export" + ], + "env_var": "PANTS_MYPY_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with MyPy when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--mypy-export", + "--no-mypy-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0dev0.", + "deprecation_active": true, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "fromfile": false, + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement` target. Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nNOTE: Dependencies specified in this way are not visible to dependency inference, and cannot be referenced as explicit dependencies. See https://www.pantsbuild.org/v2.16/docs/python-check-goal for more information about problems this can cause, and how to work around them.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.\n\nWe recommend also enabling `[mypy].extra_type_stubs_lockfile` for a more reproducible build and less supply-chain security risk.", + "removal_hint": "Extra type stubs are now installed from a named resolve, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0dev0", + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs-lockfile=", + "config_key": "extra_type_stubs_lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0dev0.", + "deprecation_active": true, + "display_args": [ + "--mypy-extra-type-stubs-lockfile=" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile for the option `[mypy].extra_type_stubs`.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this if you use `[mypy].extra_type_stubs`, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-extra-type-stubs`.", + "removal_hint": "Extra type stubs are now installed from a named resolve, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0dev0", + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--extra-type-stubs-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python.typecheck.mypy", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-install-from-resolve=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy-protobuf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==3.4.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==3.4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-protobuf`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[mypy-protobuf].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced mypy-protobuf`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "nodejs": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-version=", + "config_key": "version", + "default": "v16.15.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-version=" + ], + "env_var": "PANTS_NODEJS_VERSION", + "fromfile": false, + "help": "Use this version of nodejs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v16.15.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_NODEJS_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--nodejs-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-use-unsupported-version=" + ], + "env_var": "PANTS_NODEJS_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of nodejs is not supported.\n\nSupported nodejs versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-template=", + "config_key": "url_template", + "default": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-template=" + ], + "env_var": "PANTS_NODEJS_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The NodeJS Javascript runtime (including npm and npx).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "nodejs" + }, + "openapi": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-tailor-targets", + "config_key": "tailor_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]openapi-tailor-targets" + ], + "env_var": "PANTS_OPENAPI_TAILOR_TARGETS", + "fromfile": false, + "help": "If true, add `openapi_documents` and `openapi_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-tailor-targets", + "--no-openapi-tailor-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-targets", + "--no-tailor-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The OpenAPI Specification (https://swagger.io/specification/).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi", + "scope": "openapi" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FROM", + "fromfile": false, + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "fromfile": false, + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "fromfile": false, + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-include-dep-rules", + "config_key": "include_dep_rules", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-include-dep-rules" + ], + "env_var": "PANTS_PEEK_INCLUDE_DEP_RULES", + "fromfile": false, + "help": "Whether to include `_dependencies_rules`, `_dependents_rules` and `_applicable_dep_rules` that apply to the target and its dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-include-dep-rules", + "--no-peek-include-dep-rules" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--include-dep-rules", + "--no-include-dep-rules" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "fromfile": false, + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "fromfile": false, + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "target_field_name": "pex_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "fromfile": false, + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "fromfile": false, + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.134", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-version=" + ], + "env_var": "PANTS_PEX_CLI_VERSION", + "fromfile": false, + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.134,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.134" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.134|macos_arm64|82b24645769c19483c1306c1ba7a888471a5e1df3a2b538788bc7e0d1b20dbf0|4085867", + "v2.1.134|macos_x86_64|82b24645769c19483c1306c1ba7a888471a5e1df3a2b538788bc7e0d1b20dbf0|4085867", + "v2.1.134|linux_x86_64|82b24645769c19483c1306c1ba7a888471a5e1df3a2b538788bc7e0d1b20dbf0|4085867", + "v2.1.134|linux_arm64|82b24645769c19483c1306c1ba7a888471a5e1df3a2b538788bc7e0d1b20dbf0|4085867" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.134|macos_arm64|82b24645769c19483c1306c1ba7a888471a5e1df3a2b538788bc7e0d1b20dbf0|4085867", + "v2.1.134|macos_x86_64|82b24645769c19483c1306c1ba7a888471a5e1df3a2b538788bc7e0d1b20dbf0|4085867", + "v2.1.134|linux_x86_64|82b24645769c19483c1306c1ba7a888471a5e1df3a2b538788bc7e0d1b20dbf0|4085867", + "v2.1.134|linux_arm64|82b24645769c19483c1306c1ba7a888471a5e1df3a2b538788bc7e0d1b20dbf0|4085867" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.134,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-template=" + ], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "preamble": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]preamble-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]preamble-skip" + ], + "env_var": "PANTS_PREAMBLE_SKIP", + "fromfile": false, + "help": "If true, don't use preamble when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--preamble-skip", + "--no-preamble-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "template_by_globs", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS", + "fromfile": true, + "help": "Which preamble template to use based on the path globs (relative to the build root).\n\nExample:\n\n {\n '*.rs': '// Copyright (c) $year\\n// Line 2\\n'\n '*.py:!__init__.py': '# Copyright (c) $year\\n# Line 2\\n',\n }\n\nIt might be helpful to load this config from a JSON or YAML file. To do that, set `[preamble].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--preamble-template-by-globs" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--template-by-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's string.Template substitutions): - $year: The current year (only used when actually writing the year to the file).", + "is_goal": false, + "provider": "pants.backend.tools.preamble", + "scope": "preamble" + }, + "protobuf-java-grpc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-version=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-lockfile=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.java", + "scope": "protobuf-java-grpc" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "fromfile": false, + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-tailor" + ], + "env_var": "PANTS_PROTOC_TAILOR", + "fromfile": false, + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-tailor", + "--no-protoc-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "fromfile": false, + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "fromfile": false, + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependents` (or `# Dependees`, if summary_use_new_header is False).\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependents` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependents).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary-use-new-header", + "config_key": "summary_use_new_header", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary-use-new-header" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY_USE_NEW_HEADER", + "fromfile": false, + "help": "If False, use the legacy, misleading `#Dependees` header name in the summary CSV table. If True, will use the new, more accurate, `# Dependents` name for the same column.\n\nThis is a temporary option to ease migration to the new header name. Set this option to True to start working with the new header.\n\nThis option's default value will change to True in 2.16.x, and it will be deprecated in that version.\n\nThis option, and the ability to use the old name, will be removed entirely in 2.17.x.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary-use-new-header", + "--no-py-constraints-summary-use-new-header" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary-use-new-header", + "--no-summary-use-new-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pydocstyle": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-install-from-resolve=" + ], + "env_var": "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pydocstyle` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-console-script=", + "config_key": "console_script", + "default": "pydocstyle", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-console-script=" + ], + "env_var": "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-entry-point=" + ], + "env_var": "PANTS_PYDOCSTYLE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-config=" + ], + "env_var": "PANTS_PYDOCSTYLE_CONFIG", + "fromfile": false, + "help": "Path to a Pydocstyle config file (http://www.pydocstyle.org/en/stable/usage.html#configuration-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pydocstyle-config-discovery" + ], + "env_var": "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`setup.cfg`, `tox.ini`, `.pydocstyle`, `.pydocstyle.ini`, `.pydocstylerc`, `.pydocstylerc.ini`, and `pyproject.toml`) searching for the configuration file in this particular order.\n\nPlease note that even though `pydocstyle` keeps looking for a configuration file up the directory tree until one is found, Pants will only search for the config files in the repository root (from where you would normally run the `` command).\n\nUse `[pydocstyle].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config-discovery", + "--no-pydocstyle-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pydocstyle-skip" + ], + "env_var": "PANTS_PYDOCSTYLE_SKIP", + "fromfile": false, + "help": "If true, don't use Pydocstyle when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-skip", + "--no-pydocstyle-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pydocstyle, e.g. `--pydocstyle-args='--select=D101,D102'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-version=", + "config_key": "version", + "default": "pydocstyle[toml]>=6.1.1,<7.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pydocstyle-version=" + ], + "env_var": "PANTS_PYDOCSTYLE_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pydocstyle-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle[toml]>=6.1.1,<7.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pydocstyle-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pydocstyle-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pydocstyle-lockfile=" + ], + "env_var": "PANTS_PYDOCSTYLE_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/pydocstyle/pydocstyle.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pydocstyle`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pydocstyle].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pydocstyle`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pydocstyle-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]pydocstyle-export" + ], + "env_var": "PANTS_PYDOCSTYLE_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Pydocstyle when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pydocstyle-export", + "--no-pydocstyle-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pydocstyle", + "scope": "pydocstyle" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-install-from-resolve=" + ], + "env_var": "PANTS_PYLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pylint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.16/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Pylint plugins such as 'pylint-plugins' so that the third-party requirements used by your plugin, like `pylint`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Pylint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.13.0,<3", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.13.0,<3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/pylint/pylint.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pylint`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pylint].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pylint`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]pylint-export" + ], + "env_var": "PANTS_PYLINT_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Pylint when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pylint-export", + "--no-pylint-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pylint", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-install-from-resolve=" + ], + "env_var": "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyoxidizer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.8,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.8,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-console-script=" + ], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-entry-point=" + ], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-version=", + "config_key": "version", + "default": "pyoxidizer>=0.18.0,<1", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pyoxidizer-version=" + ], + "env_var": "PANTS_PYOXIDIZER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pyoxidizer-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer>=0.18.0,<1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pyoxidizer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pyoxidizer-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pyoxidizer-lockfile=" + ], + "env_var": "PANTS_PYOXIDIZER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/packaging/pyoxidizer/pyoxidizer.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pyoxidizer`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pyoxidizer].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pyoxidizer`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pyoxidizer-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-install-from-resolve=" + ], + "env_var": "PANTS_PYTEST_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytest` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "fromfile": false, + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "fromfile": false, + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-config=" + ], + "env_var": "PANTS_PYTEST_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-xdist-enabled" + ], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "fromfile": false, + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--xdist-enabled", + "--no-xdist-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-skip" + ], + "env_var": "PANTS_PYTEST_SKIP", + "fromfile": false, + "help": "If true, don't use Pytest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-skip", + "--no-pytest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest==7.0.1", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest==7.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1", + "pytest-xdist>=2.5,<3" + ], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1", + "pytest-xdist>=2.5,<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/subsystems/pytest.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pytest`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pytest].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pytest`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]pytest-export" + ], + "env_var": "PANTS_PYTEST_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Pytest when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pytest-export", + "--no-pytest-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "fromfile": false, + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.16/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-resolves" + ], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "fromfile": false, + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "fromfile": false, + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.16/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-default-resolve=" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": [ + "20.3.4-patched", + "22.2.2", + "22.3", + "22.3.1", + "23.0", + "23.0.1" + ], + "comma_separated_choices": "20.3.4-patched, 22.2.2, 22.3, 22.3.1, 23.0, 23.0.1", + "comma_separated_display_args": "--python-pip-version=", + "config_key": "pip_version", + "default": "20.3.4-patched", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-pip-version=" + ], + "env_var": "PANTS_PYTHON_PIP_VERSION", + "fromfile": false, + "help": "Use this version of Pip for resolving requirements and generating lockfiles.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-pip-version" + ], + "target_field_name": null, + "typ": "PipVersion", + "unscoped_cmd_line_args": [ + "--pip-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "20.3.4-patched" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python].interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use ['==3.9.*'] via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to ['==3.7.*'], then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "fromfile": false, + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-constraints-file" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-constraints-file" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve, you can also use the value `:all:` to disable all binary packages: `{'data-science': [':all:']}`.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-no-binary" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-no-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve you can use the value `:all:` to disable all source packages: `{'data-science': [':all:']}`.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-only-binary" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-only-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "fromfile": false, + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "target_field_name": null, + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolves-generate-lockfiles" + ], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "fromfile": false, + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "fromfile": false, + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile\n changes, rather than just those that depend on the changed requirement.\n2) Requirements unneeded by a test/run/repl will be present on the sys.path, which\n might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "fromfile": false, + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-source-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-empty-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "fromfile": false, + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "fromfile": false, + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-py-typed-targets", + "config_key": "tailor_py_typed_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-py-typed-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS", + "fromfile": false, + "help": "If true, add `resource` targets for marker files named `py.typed` with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-py-typed-targets", + "--no-python-tailor-py-typed-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-py-typed-targets", + "--no-tailor-py-typed-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "fromfile": false, + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-lockfile-targets", + "config_key": "enable_lockfile_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-lockfile-targets" + ], + "env_var": "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS", + "fromfile": false, + "help": "Create targets for all Python lockfiles defined in `[python].resolves`.\n\nThe lockfile targets will then be used as dependencies to the `python_requirement` targets that use them, invalidating source targets per resolve when the lockfile changes.\n\nIf another targets address is in conflict with the created lockfile target, it will shadow the lockfile target and it will not be available as a dependency for any `python_requirement` targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-lockfile-targets", + "--no-python-enable-lockfile-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-lockfile-targets", + "--no-enable-lockfile-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-default-run-goal-use-sandbox" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "fromfile": false, + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-repl-history", + "config_key": "repl_history", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-repl-history" + ], + "env_var": "PANTS_PYTHON_REPL_HISTORY", + "fromfile": false, + "help": "Whether to use the standard Python command history file when running a repl.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repl-history", + "--no-python-repl-history" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--repl-history", + "--no-repl-history" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "fromfile": false, + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "fromfile": false, + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "internal_python_build_standalone_info", + "default": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO", + "fromfile": false, + "help": "A map from platform to the information needed to download Python Build Standalone.\n\nPython Build Standalone is used to run Python-implemented Pants tools/scripts in docker environments (so that Python doesn't need to be installed).\n\nThe version of Python provided should match the default value's version, which is the highest Python Major/Minor version compatible with the Pants package's interpreter constraints. Additionally, the downloaded file should be extractable by `tar` using `-xvf` (most likely a `.tar.gz` file).\n\nThe schema is : (, , ) for each possible platform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-internal-python-build-standalone-info" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--internal-python-build-standalone-info" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Python interpreters.\n\nWhich interpeters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "target_field_name": "python_bootstrap_search_path", + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "fromfile": false, + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "target_field_name": "python_bootstrap_names", + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-dump-source-analysis": { + "advanced": [], + "basic": [ + { + "choices": [ + "raw_dependency_inference", + "dependency_inference" + ], + "comma_separated_choices": "raw_dependency_inference, dependency_inference", + "comma_separated_display_args": "--python-dump-source-analysis-analysis-flavor=", + "config_key": "analysis_flavor", + "default": "dependency_inference", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-dump-source-analysis-analysis-flavor=" + ], + "env_var": "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR", + "fromfile": false, + "help": "The type of information that should be returned.\n\n* `dependency_inference`: The results of dependency inference, for every detected import in every file.\n\n* `raw_dependency_inference`: The raw intermediate results of the dependency inference process,\nat every stage they're available. Potentially useful for debugging the dependency inference process.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-dump-source-analysis-analysis-flavor" + ], + "target_field_name": null, + "typ": "AnalysisFlavor", + "unscoped_cmd_line_args": [ + "--analysis-flavor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dependency_inference" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Dump source analysis for python_source targets.", + "is_goal": true, + "provider": "pants.backend.experimental.python", + "scope": "python-dump-source-analysis" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "fromfile": false, + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-assets" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "fromfile": false, + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--assets", + "--no-assets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-assets-min-slashes=" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "fromfile": false, + "help": "If --assets is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets-min-slashes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--assets-min-slashes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": [ + "always", + "content_only", + "never" + ], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-init-files=" + ], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "fromfile": false, + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-init-files" + ], + "target_field_name": null, + "typ": "InitFilesInference", + "unscoped_cmd_line_args": [ + "--init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "fromfile": false, + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "fromfile": false, + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "fromfile": false, + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "target_field_name": null, + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + }, + { + "choices": [ + "none", + "by_source_root" + ], + "comma_separated_choices": "none, by_source_root", + "comma_separated_display_args": "--python-infer-ambiguity-resolution=", + "config_key": "ambiguity_resolution", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ambiguity-resolution=" + ], + "env_var": "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION", + "fromfile": false, + "help": "When multiple sources provide the same symbol, how to choose the provider to use.\n\n`none`: Do not attempt to resolve this ambiguity. No dependency will be inferred, and warnings will be logged.\n\n`by_source_root`: Choose the provider with the closest common ancestor to the consumer's source root. If the provider is under the same source root then this will be the source root itself. This is useful when multiple projects in different source roots provide the same symbols (because of repeated first-party module paths or overlapping requirements.txt) and you want to resolve the ambiguity locally in each project.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-ambiguity-resolution" + ], + "target_field_name": null, + "typ": "AmbiguityResolution", + "unscoped_cmd_line_args": [ + "--ambiguity-resolution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-ignored-unowned-imports=\"['', '', ...]\"", + "config_key": "ignored_unowned_imports", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ignored-unowned-imports=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS", + "fromfile": false, + "help": "Unowned imports that should be ignored.\n\n If there are any unowned import statements and adding the `# pants: no-infer-dep`\n to the lines of the import is impractical, you can instead provide a list of imports\n that Pants should ignore. You can declare a specific import or a path to a package\n if you would like any of the package imports to be ignored.\n\n For example, you could ignore all the following imports of the code\n\n ```\n import src.generated.app\n from src.generated.app import load\n from src.generated.app import start\n from src.generated.client import connect\n ```\n\n by setting `ignored-unowned-imports=[\"src.generated.app\", \"src.generated.client.connect\"]`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-ignored-unowned-imports" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignored-unowned-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "fromfile": false, + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `CPPFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "target_field_name": "python_native_code_cpp_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "fromfile": false, + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `LDFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "target_field_name": "python_native_code_ld_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "fromfile": false, + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.16/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "fromfile": false, + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "fromfile": false, + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what WHEELS_DIR points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.16/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.16/docs/options#pantsrc-file.\n\nNote: Only takes effect if using Pex lockfiles, i.e. using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-path-mappings" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--path-mappings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-find-links=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "fromfile": false, + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-find-links" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--find-links" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "fromfile": false, + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-thrift-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "fromfile": false, + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-install-from-resolve=" + ], + "env_var": "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyupgrade` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "fromfile": false, + "help": "If true, don't use pyupgrade when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.33.0,<4", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pyupgrade-version=" + ], + "env_var": "PANTS_PYUPGRADE_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pyupgrade-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.33.0,<4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--pyupgrade-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pyupgrade-lockfile=" + ], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/pyupgrade/pyupgrade.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pyupgrade`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pyupgrade].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pyupgrade`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pyupgrade-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]pyupgrade-export" + ], + "env_var": "PANTS_PYUPGRADE_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with pyupgrade when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pyupgrade-export", + "--no-pyupgrade-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]regex-lint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]regex-lint-skip" + ], + "env_var": "PANTS_REGEX_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use regex-lint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-skip", + "--no-regex-lint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "fromfile": true, + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-config" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-detail-level=" + ], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "fromfile": false, + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-detail-level" + ], + "target_field_name": null, + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "fromfile": false, + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "fromfile": false, + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "ruff": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-install-from-resolve=" + ], + "env_var": "PANTS_RUFF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ruff` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-console-script=", + "config_key": "console_script", + "default": "ruff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-console-script=" + ], + "env_var": "PANTS_RUFF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-entry-point=" + ], + "env_var": "PANTS_RUFF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-config=" + ], + "env_var": "PANTS_RUFF_CONFIG", + "fromfile": false, + "help": "Path to the `pyproject.toml` or `ruff.toml` file to use for configuration (https://github.com/charliermarsh/ruff#configuration).\n\nSetting this option will disable `[ruff].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ruff-config-discovery" + ], + "env_var": "PANTS_RUFF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`pyproject.toml`, and `ruff.toml`).\n\nUse `[ruff].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config-discovery", + "--no-ruff-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ruff-skip" + ], + "env_var": "PANTS_RUFF_SKIP", + "fromfile": false, + "help": "If true, don't use Ruff when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-skip", + "--no-ruff-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-args=\"[, , ...]\"" + ], + "env_var": "PANTS_RUFF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Ruff, e.g. `--ruff-args='--exclude=foo --ignore=E501'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-version=", + "config_key": "version", + "default": "ruff==0.0.254", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--ruff-version=" + ], + "env_var": "PANTS_RUFF_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--ruff-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff==0.0.254" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--ruff-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--ruff-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--ruff-lockfile=" + ], + "env_var": "PANTS_RUFF_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/ruff/ruff.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=ruff`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[ruff].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced ruff`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--ruff-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]ruff-export" + ], + "env_var": "PANTS_RUFF_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Ruff when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--ruff-export", + "--no-ruff-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Ruff Python formatter (https://github.com/charliermarsh/ruff).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.ruff", + "scope": "ruff" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-debug-adapter" + ], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-debug-adapter", + "--no-run-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-tailor-source-targets" + ], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-package-objects" + ], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "fromfile": false, + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-objects", + "--no-package-objects" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-force-add-siblings-as-dependencies" + ], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "fromfile": false, + "help": "If true, add a dependency on all scala_source targets generated by the same scala_sources target generator. If false, the dependencies will only be added if [scala-infer].imports is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "fromfile": false, + "help": "If true, don't use scalafmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-version=" + ], + "env_var": "PANTS_SCALAPB_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-lockfile=" + ], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "fromfile": false, + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set --scalapb-runtime-dependencies appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalatest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalatest-skip" + ], + "env_var": "PANTS_SCALATEST_SKIP", + "fromfile": false, + "help": "If true, don't use Scalatest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-skip", + "--no-scalatest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "fromfile": false, + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "fromfile": false, + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "fromfile": false, + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "target_field_name": null, + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-install-from-resolve=" + ], + "env_var": "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=63.1.0,<64.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=63.1.0,<64.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/subsystems/setuptools.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[setuptools].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced setuptools`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "setuptools-scm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-install-from-resolve=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools-scm` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-console-script=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-version=", + "config_key": "version", + "default": "setuptools-scm==7.1.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--setuptools-scm-version=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--setuptools-scm-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools-scm==7.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--setuptools-scm-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--setuptools-scm-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--setuptools-scm-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/subsystems/setuptools_scm.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools-scm`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[setuptools-scm].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced setuptools-scm`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--setuptools-scm-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "setuptools-scm" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-tailor" + ], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "fromfile": false, + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-path=\"[, , ...]\"", + "config_key": "executable_search_path", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATH", + "fromfile": false, + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-path" + ], + "target_field_name": "shell_setup_executable_search_path", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shell-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-test-skip" + ], + "env_var": "PANTS_SHELL_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Test with shell scripts when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-test-skip", + "--no-shell-test-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants' Shell test support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-test" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "fromfile": false, + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|macos_x86_64|e065d4afb2620cc8c1d420a9b3e6243c84ff1a693c1ff0e38f279c8f31e86634|4049756", + "v0.8.0|linux_arm64 |9f47bbff5624babfa712eb9d64ece14c6c46327122d0c54983f627ae3a30a4ac|2996468", + "v0.8.0|linux_x86_64|ab6ee1b178f014d1b86d1e24da20d1139656c8b0ed34d2867fbb834dad02bf0a|1403852" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "fromfile": false, + "help": "If true, don't use Shellcheck when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "fromfile": false, + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "fromfile": false, + "help": "If true, don't use shfmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "shunit2": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-version=", + "config_key": "version", + "default": "b9102bb763cc603b3115ed30a5648bf950548097", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-version=" + ], + "env_var": "PANTS_SHUNIT2_VERSION", + "fromfile": false, + "help": "Use this version of shunit2.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "b9102bb763cc603b3115ed30a5648bf950548097" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHUNIT2_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shunit2-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-use-unsupported-version=" + ], + "env_var": "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shunit2 is not supported.\n\nSupported shunit2 versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-template=", + "config_key": "url_template", + "default": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-template=" + ], + "env_var": "PANTS_SHUNIT2_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.16/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHUNIT2_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shunit2-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shunit2-skip" + ], + "env_var": "PANTS_SHUNIT2_SKIP", + "fromfile": false, + "help": "If true, don't use shunit2 when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-skip", + "--no-shunit2-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shunit2" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "fromfile": false, + "help": "A list of source root suffixes.\n\nA directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc.\n\nPrepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`.\n\nA `*` wildcard will match a single path segment, E.g., `src/*` will match `/src/python` and `/src/rust`.\n\nUse `/` to signify that the buildroot itself is a source root.\n\nSee https://www.pantsbuild.org/v2.16/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "fromfile": false, + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "spectral": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-version=", + "config_key": "version", + "default": "@stoplight/spectral-cli@6.5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-version=" + ], + "env_var": "PANTS_SPECTRAL_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "@stoplight/spectral-cli@6.5.1" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]spectral-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]spectral-skip" + ], + "env_var": "PANTS_SPECTRAL_SKIP", + "fromfile": false, + "help": "If true, don't use Spectral when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-skip", + "--no-spectral-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SPECTRAL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Spectral, e.g. `--spectral-args='--fail-severity=warn'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "spectral" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "fromfile": false, + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-memory-summary" + ], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "fromfile": false, + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--memory-summary", + "--no-memory-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.16/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "target_field_name": "subprocess_environment_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "fromfile": false, + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "fromfile": false, + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "fromfile": false, + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "fromfile": false, + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.16/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "fromfile": false, + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "fromfile": false, + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-fmt-skip" + ], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform fmt` when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-install-from-resolve=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `terraform-hcl2-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-version=", + "config_key": "version", + "default": "python-hcl2==4.3.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--terraform-hcl2-parser-version=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-hcl2==4.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--terraform-hcl2-parser-lockfile=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/terraform/hcl2.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=terraform-hcl2-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[terraform-hcl2-parser].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced terraform-hcl2-parser`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-validate-skip" + ], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform validate` when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-report" + ], + "env_var": "PANTS_TEST_REPORT", + "fromfile": false, + "help": "Write test reports to --report-dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report", + "--no-test-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--report", + "--no-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-report-dir=" + ], + "env_var": "PANTS_TEST_REPORT_DIR", + "fromfile": false, + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--report-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-default=" + ], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "fromfile": false, + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-default" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-maximum=" + ], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "fromfile": false, + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-maximum" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-batch-size=" + ], + "env_var": "PANTS_TEST_BATCH_SIZE", + "fromfile": false, + "help": "The target maximum number of files to be included in each run of batch-enabled test runners.\n\nSome test runners can execute tests from multiple files in a single run. Test implementations will return all tests that _can_ run together as a single group - and then this may be further divided into smaller batches, based on this option. This is done:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch\n 3. to allow for parallelism in test runners which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" max batch size (rather than an exact value).\n\nNOTE: This parameter has no effect on test runners/plugins that do not implement support for batched testing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "fromfile": false, + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug-adapter" + ], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies --debug.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "fromfile": false, + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "fromfile": false, + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "target_field_name": null, + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "fromfile": false, + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "fromfile": false, + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-shard=" + ], + "env_var": "PANTS_TEST_SHARD", + "fromfile": false, + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with --shard=0/3, --shard=1/3, --shard=2/3.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-shard" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--shard" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-timeouts" + ], + "env_var": "PANTS_TEST_TIMEOUTS", + "fromfile": false, + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeouts", + "--no-test-timeouts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "target_field_name": "test_extra_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-tailor" + ], + "env_var": "PANTS_THRIFT_TAILOR", + "fromfile": false, + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-tailor", + "--no-thrift-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-dependency-inference" + ], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-install-from-resolve=" + ], + "env_var": "PANTS_TWINE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `twine` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "fromfile": false, + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use any certificates.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.16/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "fromfile": false, + "help": "If true, don't use Twine when running `scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine>=4,<5", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--twine-version=" + ], + "env_var": "PANTS_TWINE_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--twine-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine>=4,<5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "colorama>=0.4.3" + ], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--twine-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "colorama>=0.4.3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--twine-lockfile=" + ], + "env_var": "PANTS_TWINE_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/subsystems/twine.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=twine`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[twine].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced twine`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--twine-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "fromfile": false, + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "yapf", + "black" + ], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--update-build-files-formatter=" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "fromfile": false, + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-formatter" + ], + "target_field_name": null, + "typ": "Formatter", + "unscoped_cmd_line_args": [ + "--formatter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "fromfile": false, + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.16/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "yamllint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-install-from-resolve=" + ], + "env_var": "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yamllint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-console-script=", + "config_key": "console_script", + "default": "yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-console-script=" + ], + "env_var": "PANTS_YAMLLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-entry-point=" + ], + "env_var": "PANTS_YAMLLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-config-file-name=", + "config_key": "config_file_name", + "default": ".yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-config-file-name=" + ], + "env_var": "PANTS_YAMLLINT_CONFIG_FILE_NAME", + "fromfile": false, + "help": "Name of a config file understood by yamllint (https://yamllint.readthedocs.io/en/stable/configuration.html). The plugin will search the ancestors of each directory in which YAML files are found for a config file of this name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-config-file-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--config-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".yamllint" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-include=\"['', '', ...]\"", + "config_key": "include", + "default": [ + "**/*.yml", + "**/*.yaml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-include=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to lint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-include" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--include" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "**/*.yml", + "**/*.yaml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-exclude=\"['', '', ...]\"", + "config_key": "exclude", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-exclude=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_EXCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to exclude from linting.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-exclude" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAMLLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Yamllint, e.g. `--yamllint-args='-d relaxed'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yamllint-skip" + ], + "env_var": "PANTS_YAMLLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Yamllint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-skip", + "--no-yamllint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-version=", + "config_key": "version", + "default": "yamllint==1.29.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--yamllint-version=" + ], + "env_var": "PANTS_YAMLLINT_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--yamllint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint==1.29.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--yamllint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--yamllint-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--yamllint-lockfile=" + ], + "env_var": "PANTS_YAMLLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/tools/yamllint/yamllint.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=yamllint`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[yamllint].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced yamllint`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--yamllint-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]yamllint-export" + ], + "env_var": "PANTS_YAMLLINT_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Yamllint when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--yamllint-export", + "--no-yamllint-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A linter for YAML files (https://yamllint.readthedocs.io)", + "is_goal": false, + "provider": "pants.backend.experimental.tools.yamllint", + "scope": "yamllint" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-install-from-resolve=" + ], + "env_var": "PANTS_YAPF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.16/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yapf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "fromfile": false, + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "fromfile": false, + "help": "If true, don't use yapf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf>=0.32.0,<1", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf>=0.32.0,<1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.16.1rc4/src/python/pants/backend/python/lint/yapf/yapf.lock for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=yapf`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.16/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[yapf].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced yapf`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]yapf-export" + ], + "env_var": "PANTS_YAPF_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with yapf when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--yapf-export", + "--no-yapf-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--export", + "--no-export" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.17.x/reference/help-all.json b/versioned_docs/version-2.17.x/reference/help-all.json new file mode 100644 index 000000000..8aedddcc9 --- /dev/null +++ b/versioned_docs/version-2.17.x/reference/help-all.json @@ -0,0 +1,74656 @@ +{ + "name_to_api_type_info": { + "abc.EnvironmentAware": { + "consumed_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "abc", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_env_aware_scope_jvm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "builtins.AddPrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "AddPrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.core.goals.export.export", + "pants.core.target_types.relocate_files", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "builtins.AddressInput": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "AddressInput", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "builtins.Digest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.go.goals.generate", + "pants.backend.helm.util_rules.chart_metadata", + "pants.engine.fs", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.strip_jar.strip_jar" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "Digest", + "provider": "builtins, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.core.util_rules.archive.create_archive", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.generate_setup_py", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "builtins.FileDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.util_rules" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "FileDigest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.util_rules.digest_to_file_digest"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "builtins.MergeDigests": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "MergeDigests", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.source_files.determine_source_files", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "builtins.RemovePrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "RemovePrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.backend.adhoc.adhoc_tool.GenerateFilesFromAdhocToolRequest": { + "consumed_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.adhoc"], + "documentation": null, + "is_union": false, + "module": "pants.backend.adhoc.adhoc_tool", + "name": "GenerateFilesFromAdhocToolRequest", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.adhoc.run_system_binary.SystemBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.adhoc"], + "documentation": "SystemBinaryFieldSet(address: 'Address', name: 'SystemBinaryNameField', extra_search_paths: 'SystemBinaryExtraSearchPathsField', fingerprint_pattern: 'SystemBinaryFingerprintPattern', fingerprint_argv: 'SystemBinaryFingerprintArgsField', fingerprint_dependencies: 'SystemBinaryFingerprintDependenciesField')", + "is_union": false, + "module": "pants.backend.adhoc.run_system_binary", + "name": "SystemBinaryFieldSet", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PythonAwsLambdaFieldSet(address: 'Address', handler: 'PythonAwsLambdaHandlerField', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.base.FixedBUILDFile": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.build_files.fix.deprecations"], + "dependents": ["pants.core"], + "documentation": "FixedBUILDFile(path: 'str', content: 'bytes')", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.base", + "name": "FixedBUILDFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenamedFieldTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": ["pants.engine.target", "pants.engine.unions"], + "dependents": ["pants.core"], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenamedFieldTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Deprecated target type names to new names.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenamedTargetTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenamedTargetTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.subsystem.BUILDDeprecationsFixer": { + "consumed_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.build_files.fix.deprecations"], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.subsystem", + "name": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": ["construct_scope_build_deprecations_fixer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.black.register.BlackRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.black.register", + "name": "BlackRequest", + "provider": "pants.backend.build_files.fmt.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.rules.BuildifierRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.rules", + "name": "BuildifierRequest", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.subsystem.Buildifier": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.build_files.fmt.buildifier"], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.subsystem", + "name": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": ["construct_scope_buildifier"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.yapf.register.YapfRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.yapf.register", + "name": "YapfRequest", + "provider": "pants.backend.build_files.fmt.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegen": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegen", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegenSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegenSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_export_codegen"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GenerateGoFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GenerateGoFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GoCodegenBuildProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ], + "dependencies": ["pants.backend.go.util_rules.build_pkg_target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GoCodegenBuildProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoCodegenBuildRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.ProtobufGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets" + ], + "dependencies": ["pants.backend.go.dependency_inference"], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "ProtobufGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtobufPackageBuildRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": "Request type used to trigger setup of a BuildGoPackageRequest for entire generated Go\nProtobuf package.\n\nThis type is separate so that a build of the full package can be cached no matter which one of\nits component source files was requested. This occurs because a request to build any one of the\nsource files will be converted into this type and then built.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtobufPackageBuildRequest", + "provider": "pants.backend.codegen.protobuf.go.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtocPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": "_SetupGoProtocPlugin(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.InferProtobufJavaRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "InferProtobufJavaRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaGrpcRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaGrpcRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.rules.GenerateJavaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GenerateJavaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.rules.GrpcJavaToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GrpcJavaToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.java.rules, pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ] + }, + "pants.backend.codegen.protobuf.java.rules.ProtobufJavaGrpcPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaGrpcPlugin(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.subsystem.JavaProtobufGrpcSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.subsystem", + "name": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": ["construct_scope_protobuf_java_grpc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.BufFormatRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.format_rules", + "name": "BufFormatRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.BufLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.lint_rules", + "name": "BufLintRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufFormatField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufFormatField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufLintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufLintField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.subsystem.BufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.lint.buf"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.subsystem", + "name": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": ["construct_scope_buf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.InferProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "InferProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.ProtobufMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": "A mapping of stripped .proto file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protoc.Protoc": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protoc", + "name": "Protoc", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_protoc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonInterpreterConstraintsField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonInterpreterConstraintsField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonResolveField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.PythonSourceRootField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "PythonSourceRootField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.grpc_python_plugin.GrpcPythonPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.grpc_python_plugin", + "name": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_grpc_python_plugin"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.PythonProtobufMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper", + "name": "PythonProtobufMappingMarker", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.InferPythonProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "InferPythonProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufMypyPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_mypy_protobuf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_python_protobuf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.rules.GeneratePythonFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.rules", + "name": "GeneratePythonFromProtobufRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.InferScalaPBRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "InferScalaPBRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.dependency_inference", + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "ScalaPBRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "ScalaPBRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.scala.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.GenerateScalaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "GenerateScalaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializeJvmPluginRequest(plugin: 'PluginArtifactSpec')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializeJvmPluginsRequest(plugins: 'tuple[PluginArtifactSpec, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginsRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.java", + "pants.jvm.resolve.common" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalaPBShimCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalapbcToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalapbcToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.scala.rules, pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ] + }, + "pants.backend.codegen.protobuf.scala.subsystem.ScalaPBSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.subsystem", + "name": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": ["construct_scope_scalapb"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.tailor.PutativeProtobufTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": "PutativeProtobufTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.tailor", + "name": "PutativeProtobufTargetsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.AllProtobufTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.additional_fields.ThriftPythonResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.additional_fields", + "name": "ThriftPythonResolveField", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.PythonThriftMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper", + "name": "PythonThriftMappingMarker", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.GeneratePythonFromThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "GeneratePythonFromThriftRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.InferApacheThriftPythonDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "InferApacheThriftPythonDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.subsystem.ThriftPythonSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.subsystem", + "name": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": ["construct_scope_python_thrift"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.ApacheThriftSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "ApacheThriftSetup(path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.GenerateThriftSourcesRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "GenerateThriftSourcesRequest(thrift_source_field: 'ThriftSourceField', lang_id: 'str', lang_options: 'tuple[str, ...]', lang_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GenerateThriftSourcesRequest", + "provider": "pants.backend.codegen.thrift.apache.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.rules.GeneratedThriftSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.thrift.apache.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "GeneratedThriftSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.subsystem.ApacheThriftSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_apache_thrift", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.subsystem", + "name": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": ["construct_scope_apache_thrift"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.InferThriftDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "InferThriftDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.ThriftMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "A mapping of stripped .thrift file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.subsystem.ThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.subsystem", + "name": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": ["construct_scope_thrift"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.tailor.PutativeThriftTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "PutativeThriftTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.tailor", + "name": "PutativeThriftTargetsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.AllThriftTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThrift": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.thrift.thrift_parser", + "pants.backend.experimental.go", + "pants.engine.fs" + ], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "dependencies": [], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "ParsedThriftRequest(sources_field: 'ThriftSourceField')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThriftRequest", + "provider": "pants.backend.codegen.thrift.thrift_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.docker.goals.package_image.DockerPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "DockerPackageFieldSet(address: 'Address', context_root: 'DockerImageContextRootField', registries: 'DockerImageRegistriesField', repository: 'DockerImageRepositoryField', source: 'DockerImageSourceField', tags: 'DockerImageTagsField', target_stage: 'DockerImageTargetStageField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.backend.docker.goals.package_image", + "name": "DockerPackageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "PublishDockerImageFieldSet(address: 'Address', registries: 'DockerImageRegistriesField', skip_push: 'DockerImageSkipPushField')", + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.docker.goals.run_image.DockerRunFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "DockerRunFieldSet(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.goals.run_image", + "name": "DockerRunFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.tailor.PutativeDockerTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "PutativeDockerTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.goals.tailor", + "name": "PutativeDockerTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.rules.HadolintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.rules", + "name": "HadolintRequest", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.skip_field.SkipHadolintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.skip_field", + "name": "SkipHadolintField", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.subsystem.Hadolint": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.docker.lint.hadolint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.subsystem", + "name": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": ["construct_scope_hadolint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.DockerOptions": { + "consumed_by_rules": [ + "construct_env_aware_scope_docker", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.docker", "pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "DockerOptions", + "provider": "pants.backend.docker", + "returned_by_rules": ["construct_scope_docker"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "EnvironmentAware", + "provider": "pants.backend.docker", + "returned_by_rules": ["construct_env_aware_scope_docker"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.docker.lint.hadolint" + ], + "documentation": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', build_args: 'DockerBuildArgs' = DockerBuildArgs(), copy_source_paths: 'tuple[str, ...]' = (), from_image_build_args: 'DockerBuildArgs' = DockerBuildArgs(), version_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfo", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfoRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerfileInfoRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfoRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParseRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerfileParseRequest(sources_digest: 'Digest', args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParseRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParser": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParser", + "provider": "pants.backend.docker", + "returned_by_rules": ["construct_scope_dockerfile_parser"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.docker"], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "ParserSetup", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.AllDockerImageTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.target_types", + "name": "AllDockerImageTargets", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.target_types.all_docker_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.DockerImageTagsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to provide additional image tags.", + "is_union": true, + "module": "pants.backend.docker.target_types", + "name": "DockerImageTagsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.dependencies.InferDockerDependencies": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dependencies", + "name": "InferDockerDependencies", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinary": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "The `docker` binary.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinary", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgs", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildArgsRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContext": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.docker", "pants.backend.experimental.helm"], + "documentation": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', upstream_image_ids: 'tuple[str, ...]', dockerfile: 'str', interpolation_context: 'InterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContext", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContextRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildContextRequest(address: 'Address', build_upstream_images: 'bool' = False)", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContextRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.GenerateDockerContextFiles": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.docker"], + "documentation": "This translates all files from acceptable Source fields for the docker context using the\n`codegen` machinery.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "GenerateDockerContextFiles", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildEnvironment(environment: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironment", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildEnvironmentRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironmentRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.dockerfile.GenerateDockerfileRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dockerfile", + "name": "GenerateDockerfileRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.AllGoModuleImportPathsMappings": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.target_type_rules"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Maps import paths (as strings) to one or more addresses of targets providing those import\npath(s) for a single Go module.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappings": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Import path mappings for all Go modules in the repository.\n\nThis type is requested from plugins which provide implementations for the GoCodegenBuildRequest\nunion and then merged.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappingsHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "An entry point for a specific implementation of mapping Go import paths to owning targets.\n\nAll implementations will be merged together. The core Go dependency inference rules will request\nthe `GoModuleImportPathsMappings` type using implementations of this union.", + "is_union": true, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappingsHook", + "provider": "pants.backend.go.dependency_inference", + "returned_by_rules": [], + "union_members": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "ProtobufGoModuleImportPathsMappingsHook" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.go_sources.load_go_binary", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "LoadedGoBinary(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "LoadedGoBinaryRequest(dir_name: 'str', file_names: 'tuple[str, ...]', output_name: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinaryRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.NaiveBuildGoPackageRequestForStdlibPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "NaiveBuildGoPackageRequestForStdlibPackageRequest(import_path: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ] + }, + "pants.backend.go.goals.check.GoCheckRequest": { + "consumed_by_rules": ["pants.backend.go.goals.check.check_go"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.check", + "name": "GoCheckRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_env_aware_scope_go_generate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoal", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.goals.generate.go_generate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoalSubsystem": { + "consumed_by_rules": ["construct_env_aware_scope_go_generate"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_go_generate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.OverwriteMergeDigests": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "OverwriteMergeDigests(orig_digest: 'Digest', new_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "OverwriteMergeDigests", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RunPackageGeneratorsRequest(address: 'Address', regex: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsRequest", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.generate.go_generate"] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.generate", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RunPackageGeneratorsResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.generate.go_generate"] + }, + "pants.backend.go.goals.package_binary.GoBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBinaryFieldSet(address: 'Address', main: 'GoBinaryMainPackageField', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.go.goals.package_binary", + "name": "GoBinaryFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FindPutativeGoPackageTargetRequest(dir_path: 'str', files: 'tuple[str, ...]', all_go_mod_dirs: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetRequest", + "provider": "pants.backend.go.goals.tailor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.goals.tailor", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FindPutativeGoPackageTargetResult(putative_target: 'PutativeTarget | None')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.PutativeGoTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "PutativeGoTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "PutativeGoTargetsRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.FalliblePrepareGoTestBinaryResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.test", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FalliblePrepareGoTestBinaryResult(binary: 'PrepareGoTestBinaryResult | None', stdout: 'str', stderr: 'str', exit_code: 'int')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.run_go_tests"] + }, + "pants.backend.go.goals.test.GoTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "GoTestFieldSet(address: 'Address', sources: 'GoPackageSourcesField', dependencies: 'Dependencies', timeout: 'GoTestTimeoutField', extra_env_vars: 'GoTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.GoTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.PrepareGoTestBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "PrepareGoTestBinaryRequest(field_set: 'GoTestFieldSet', coverage: 'PrepareGoTestBinaryCoverageConfig | None')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "PrepareGoTestBinaryRequest", + "provider": "pants.backend.go.goals.test", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.run_go_tests"] + }, + "pants.backend.go.lint.gofmt.rules.GofmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.rules", + "name": "GofmtRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.skip_field.SkipGofmtField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.skip_field", + "name": "SkipGofmtField", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.subsystem.GofmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.subsystem", + "name": "GofmtSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_gofmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_env_aware_scope_golang"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.GolangSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_golang", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "GolangSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_golang"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.gotest.GoTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.gotest", + "name": "GoTestSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_go_test"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.FirstPartyGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "dependencies": ["pants.backend.go.dependency_inference"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "FirstPartyGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GenerateTargetsFromGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GenerateTargetsFromGoModRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GoImportPathMappingRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoImportPathMappingRequest(go_mod_address: 'Address')", + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GoImportPathMappingRequest", + "provider": "pants.backend.go.target_type_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.target_type_rules.InferGoPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InferGoThirdPartyPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoThirdPartyPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_types.GoOwningGoModAddressField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_types", + "name": "GoOwningGoModAddressField", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.assembly.AssembleGoAssemblyFilesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Assemble Go assembly files to object files.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssembleGoAssemblyFilesRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleAssembleGoAssemblyFilesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FallibleAssembleGoAssemblyFilesResult(result: 'AssembleGoAssemblyFilesResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleGenerateAssemblySymabisResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FallibleGenerateAssemblySymabisResult(result: 'GenerateAssemblySymabisResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.GenerateAssemblySymabisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Generate a `symabis` file with metadata about the assemnbly files for consumption by Go\ncompiler.\n\nSee https://github.com/bazelbuild/rules_go/issues/1893.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "GenerateAssemblySymabisRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.binary", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBinaryMainPackage(address: 'Address', is_third_party: 'bool', import_path: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBinaryMainPackageRequest(field: 'GoBinaryMainPackageField')", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackageRequest", + "provider": "pants.backend.go.util_rules.binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.InferGoBinaryMainDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "InferGoBinaryMainDependencyRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptions": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.build_opts"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBuildOptions(coverage_config: 'GoCoverageConfig | None' = None, cgo_enabled: 'bool' = True, with_race_detector: 'bool' = False, with_msan: 'bool' = False, with_asan: 'bool' = False, compiler_flags: 'tuple[str, ...]' = (), linker_flags: 'tuple[str, ...]' = (), assembler_flags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptions", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptionsFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBuildOptionsFromTargetRequest(address: 'Address', for_tests: 'bool' = False)", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptionsFromTargetRequest", + "provider": "pants.backend.go.util_rules.build_opts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.go.go_sources.load_go_binary" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go, pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuiltGoPackage": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckForGolangAssemblyRequest(digest: 'Digest', dir_path: 'str', s_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckForGolangAssemblyResult(maybe_golang_assembly: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.go.rules", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuiltGoPackage": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.core", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Fallible version of `BuiltGoPackage` with error details.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoCompileActionIdRequest(build_request: 'BuildGoPackageRequest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.build_pkg"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoCompileActionIdResult(action_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderEmbedConfigRequest(embed_config: 'EmbedConfig | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderedEmbedConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderedEmbedConfig(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.SetupAsmCheckBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "SetupAsmCheckBinary(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageRequestForStdlibRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "BuildGoPackageRequestForStdlibRequest(import_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageRequestForStdlibRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Build a `go_package`, `go_third_party_package`, or Go codegen target and its dependencies as\n`__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageTargetRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.GoCodegenBuildRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": "The plugin hook to build/compile Go code.\n\nNote that you should still use the normal `GenerateSourcesRequest` plugin hook from\n`pants.engine.target` too, which is necessary for integrations like the `export-codegen` goal.\nHowever, that is only helpful to generate the raw `.go` files; you also need to use this\nplugin hook so that Pants knows how to compile those generated `.go` files.\n\nSubclass this and set the class property `generate_from`. Define a rule that goes from your\nsubclass to `BuildGoPackageRequest` - the request must result in valid compilation, which you\nshould test for by using `rule_runner.request(BuiltGoPackage, BuildGoPackageRequest)` in your\ntests. For example, make sure to set up any third-party packages needed by the generated code.\nFinally, register `UnionRule(GoCodegenBuildRequest, MySubclass)`.", + "is_union": true, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "GoCodegenBuildRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": ["GoCodegenBuildProtobufRequest"], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_ResolveStdlibEmbedConfigRequest(package: 'GoStdLibPackage')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_ResolveStdlibEmbedConfigResult(embed_config: 'EmbedConfig | None', stderr: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoCompileRequest(import_path: 'str', pkg_name: 'str', digest: 'Digest', build_opts: 'GoBuildOptions', dir_path: 'str', cgo_files: 'tuple[str, ...]', cgo_flags: 'CGoCompilerFlags', c_files: 'tuple[str, ...]' = (), cxx_files: 'tuple[str, ...]' = (), objc_files: 'tuple[str, ...]' = (), fortran_files: 'tuple[str, ...]' = (), s_files: 'tuple[str, ...]' = (), is_stdlib: 'bool' = False, transitive_prebuilt_object_files: 'tuple[Digest, frozenset[str]] | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoCompileResult(digest: 'Digest', output_go_files: 'tuple[str, ...]', output_obj_files: 'tuple[str, ...]', include_module_sources_with_output: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompilerWrapperScript": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_wrapper_compile_script_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.cgo", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoCompilerWrapperScript(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_wrapper_compile_script_request", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsFlagRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckCompilerSupportsFlagRequest(cc: 'str', flag: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsFlagRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.setup_compiler_cmd"] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsOptionResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckCompilerSupportsOptionResult(supports_flag: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.setup_compiler_cmd"] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "SetupCompilerCmdRequest(compiler: 'tuple[str, ...]', include_dir: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.cgo"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "SetupCompilerCmdResult(args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo_binaries.CGoBinaryPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoBinaryPathRequest(binary_name: 'str', binary_path_test: 'BinaryPathTest | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_binaries", + "name": "CGoBinaryPathRequest", + "provider": "pants.backend.go.util_rules.cgo_binaries", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Request resolution of pkg-config arguments into CFLAGS and LDFLAGS.", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsRequest", + "provider": "pants.backend.go.util_rules.cgo_pkgconfig", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.cgo_pkgconfig" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoPkgConfigFlagsResult(cflags: 'tuple[str, ...]', ldflags: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Apply code coverage to a package using `go tool cover`.", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ApplyCodeCoverageResult(digest: 'Digest', cover_file_metadatas: 'tuple[FileCodeCoverageMetadata, ...]', go_files: 'tuple[str, ...]', cgo_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ApplyCodeCoverageToFileRequest(digest: 'Digest', go_file: 'str', cover_go_file: 'str', mode: 'GoCoverMode', cover_var: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.coverage" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ApplyCodeCoverageToFileResult(digest: 'Digest', cover_go_file: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GenerateCoverageSetupCodeRequest(packages: 'FrozenOrderedSet[BuiltGoPackageCodeCoverageMetadata]', cover_mode: 'GoCoverMode')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GenerateCoverageSetupCodeResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageProfileToHtmlRequest(raw_coverage_profile: 'bytes', description_of_origin: 'str', sources_digest: 'Digest', sources_dir_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlRequest", + "provider": "pants.backend.go.util_rules.coverage_html", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.coverage_html", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageProfileToHtmlResult(html_output: 'bytes')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_output.GoCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "GoCoverageDataCollection", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageReportRequest(raw_report: 'GoCoverageData')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportRequest", + "provider": "pants.backend.go.util_rules.coverage_output", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.coverage_output", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageReportResult(coverage_report: 'FilesystemCoverageReport', html_report: 'FilesystemCoverageReport | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Metadata for a Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "The source files for a Go package, but fallible if embed preparation failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FirstPartyPkgAnalysisRequest(address: 'Address', build_opts: 'GoBuildOptions', extra_build_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgDigestRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FirstPartyPkgDigestRequest(address: 'Address', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgDigestRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPath": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.first_party_pkg"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FirstPartyPkgImportPathRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPathRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.go_bootstrap.GoBootstrap": { + "consumed_by_rules": ["pants.backend.go.util_rules.goroot.setup_goroot"], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBootstrap(go_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_bootstrap", + "name": "GoBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.AllGoModTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "AllGoModTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.GoModInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.go_mod" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfo", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.GoModInfoRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoModInfoRequest(source: 'Address | GoModSourcesField')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfoRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "NearestAncestorGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.go_mod.find_owning_go_mod"] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "NearestAncestorGoModResult(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.go_mod.find_owning_go_mod"] + }, + "pants.backend.go.util_rules.go_mod.OwningGoMod": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.go.util_rules.go_mod"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "OwningGoMod(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoMod", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "OwningGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.goroot.GoRoot": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": ["pants.backend.experimental.helm", "pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Path to the Go installation (the `GOROOT`).", + "is_union": false, + "module": "pants.backend.go.util_rules.goroot", + "name": "GoRoot", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.util_rules.goroot.setup_goroot"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.implicit_linker_deps.SdkImplicitLinkerDependenciesHook": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "dependencies": ["pants.backend.go.util_rules.link_defs"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.implicit_linker_deps", + "name": "SdkImplicitLinkerDependenciesHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "ImplicitLinkerDependenciesHook", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackages": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.import_analysis" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A mapping of standard library import paths to an analysis of the package at that import\npath.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoStdLibPackagesRequest(with_race_detector: 'bool', cgo_enabled: 'bool' = True)", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackagesRequest", + "provider": "pants.backend.go.util_rules.import_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.import_config", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Create an `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfigRequest", + "provider": "pants.backend.go.util_rules.import_config", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkGoBinaryRequest": { + "consumed_by_rules": ["pants.backend.go.util_rules.link.link_go_binary"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Link a Go binary from package archives and an import configuration.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkGoBinaryRequest", + "provider": "pants.backend.go.util_rules.link", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.link", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A linked Go binary stored in a `Digest`.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.util_rules.link.link_go_binary"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkerSetup": { + "consumed_by_rules": ["pants.backend.go.util_rules.link.link_go_binary"], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "LinkerSetup(digest: 'Digest', extld_wrapper_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.util_rules.link.setup_go_linker"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ImplicitLinkerDependencies(digest: 'Digest', import_paths_to_pkg_a_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.link.link_go_binary"] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependenciesHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ImplicitLinkerDependenciesHook(build_opts: 'GoBuildOptions')", + "is_union": true, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependenciesHook", + "provider": "pants.backend.go.util_rules.link_defs", + "returned_by_rules": [], + "union_members": ["SdkImplicitLinkerDependenciesHook"], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.link.link_go_binary"] + }, + "pants.backend.go.util_rules.pkg_analyzer.PackageAnalyzerSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "PackageAnalyzerSetup(digest: Digest, path: str)", + "is_union": false, + "module": "pants.backend.go.util_rules.pkg_analyzer", + "name": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkProcess": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkProcess(command: 'Iterable[str]', *, description: 'str', env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), working_dir: 'str | None' = None, output_files: 'Iterable[str]' = (), output_directories: 'Iterable[str]' = (), allow_downloads: 'bool' = False, replace_sandbox_root_in_args: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkProcess", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkRunSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkToolIDRequest(tool_name: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDRequest", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.sdk" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GenerateTestMainRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GenerateTestMainRequest(digest: 'Digest', test_paths: 'FrozenOrderedSet[str]', xtest_paths: 'FrozenOrderedSet[str]', import_path: 'str', register_cover: 'bool', address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GenerateTestMainRequest", + "provider": "pants.backend.go.util_rules.tests_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.tests_analysis.GeneratedTestMain": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.tests_analysis", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GeneratedTestMain", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackages": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AllThirdPartyPackagesRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackagesRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyModuleRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AnalyzeThirdPartyModuleRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', import_path: 'str', name: 'str', version: 'str', minimum_go_version: 'str | None', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyModuleRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AnalyzeThirdPartyPackageRequest(pkg_json: 'FrozenDict[str, Any]', module_sources_digest: 'Digest', module_sources_path: 'str', module_import_path: 'str', package_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyPackageRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzedThirdPartyModule": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.FallibleThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptors": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptors", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ModuleDescriptorsRequest(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptorsRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.third_party_pkg"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Request the info and digest needed to build a third-party package.\n\nThe package's module must be included in the input `go.mod`/`go.sum`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.google_cloud_function.python.rules.PythonGoogleCloudFunctionFieldSet": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.google_cloud_function.python"], + "documentation": "PythonGoogleCloudFunctionFieldSet(address: 'Address', handler: 'PythonGoogleCloudFunctionHandlerField', runtime: 'PythonGoogleCloudFunctionRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', type: 'PythonGoogleCloudFunctionType', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.rules", + "name": "PythonGoogleCloudFunctionFieldSet", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.FirstPartyHelmChartMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": ["pants.backend.helm.util_rules.chart_metadata"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.InferHelmChartDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "InferHelmChartDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.deployment.AnalyseHelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "AnalyseHelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "AnalyseHelmDeploymentRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.helm.dependency_inference.deployment" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "A mapping between `helm_deployment` target addresses and tuples made up of a Docker image\nreference and a `docker_image` target address.\n\nThe tuples of Docker image references and addresses are stored in a YAML index so we can track\nthe locations in which the Docker image refs appear in the deployment files.", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMappingRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FirstPartyHelmDeploymentMappingRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMappingRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.HelmDeploymentReport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.dependency_inference.deployment", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmDeploymentReport(address: 'Address', image_refs: 'FrozenYamlIndex[str]')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.InferHelmDeploymentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "InferHelmDeploymentDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.unittest.InferHelmUnitTestChartDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.unittest", + "name": "InferHelmUnitTestChartDependencyRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.deploy.DeployHelmDeploymentFieldSet": { + "consumed_by_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "DeployHelmDeploymentFieldSet(address: 'Address', description: 'DescriptionField', release_name: 'HelmDeploymentReleaseNameField', namespace: 'HelmDeploymentNamespaceField', create_namespace: 'HelmDeploymentCreateNamespaceField', sources: 'HelmDeploymentSourcesField', skip_crds: 'HelmDeploymentSkipCrdsField', no_hooks: 'HelmDeploymentNoHooksField', dependencies: 'HelmDeploymentDependenciesField', values: 'HelmDeploymentValuesField', post_renderers: 'HelmDeploymentPostRenderersField', enable_dns: 'HelmDeploymentEnableDNSField', timeout: 'HelmDeploymentTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.goals.deploy", + "name": "DeployHelmDeploymentFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.lint.HelmLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.lint", + "name": "HelmLintRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.package.HelmPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.package.run_helm_package" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmPackageFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', output_path: 'HelmChartOutputPathField')", + "is_union": false, + "module": "pants.backend.helm.goals.package", + "name": "HelmPackageFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.HelmPublishFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "HelmPublishFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', registries: 'HelmRegistriesField', repository: 'HelmChartRepositoryField', skip_push: 'HelmSkipPushField')", + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "HelmPublishFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.PublishHelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.publish.publish_helm_chart" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "PublishHelmChartRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.tailor.PutativeHelmChartTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.tailor.find_putative_helm_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "PutativeHelmChartTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.goals.tailor", + "name": "PutativeHelmChartTargetsRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.resolve.artifacts.HelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "HelmArtifact", + "provider": "pants.backend.helm.resolve.artifacts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ResolvedHelmArtifact": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.helm.resolve.artifacts"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ResolvedHelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address', location_url: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ThirdPartyHelmArtifactMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.resolve.fetch.FetchHelmArtifactRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FetchHelmArtifactRequest(field_set: 'HelmArtifactFieldSet', description_of_origin: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchHelmArtifactRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.resolve.fetch", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FetchedHelmArtifact(artifact: 'ResolvedHelmArtifact', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.helm.HelmSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.helm", + "name": "HelmSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm_k8s_parser"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.ParseKubeManifestRequest": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ParseKubeManifestRequest(file: 'FileEntry')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParseKubeManifestRequest", + "provider": "pants.backend.helm.subsystems.k8s_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser.ParsedKubeManifest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.helm.subsystems.k8s_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ParsedKubeManifest(filename: 'str', found_image_refs: 'tuple[tuple[int, YamlPath, str], ...]')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser._HelmKubeParserTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "_HelmKubeParserTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRenderer": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmPostRenderer(*, exe: 'str', digest: 'Digest', description_of_origin: 'str', env: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm_post_renderer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.SetupHelmPostRenderer": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.post_renderer", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Request for a post-renderer process that will perform a series of replacements in the\ngenerated files.", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer._HelmPostRendererTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "_HelmPostRendererTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestPluginBinding": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "dependencies": ["pants.backend.helm.util_rules.tool"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestPluginBinding", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExternalHelmPluginBinding", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm_unittest"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmChartTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_chart_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmDeploymentTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmUnitTestTestTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_unittest_test_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.HelmChartMetaSourceField": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "HelmChartMetaSourceField", + "provider": "pants.backend.helm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "HelmUnitTestFieldSet(address: 'Address', sources: 'SourcesField', source: pants.backend.helm.target_types.HelmUnitTestSourceField, dependencies: pants.backend.helm.target_types.HelmUnitTestDependenciesField, strict: pants.backend.helm.target_types.HelmUnitTestStrictField, timeout: pants.backend.helm.target_types.HelmUnitTestTimeoutField)", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.test.unittest.HelmUnitTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.chart.FindHelmDeploymentChart": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FindHelmDeploymentChart(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "FindHelmDeploymentChart", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChart": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.chart", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChart(address: 'Address', info: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChart", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartRequest(field_set: 'HelmChartFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChartRequest", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.HelmChartMetadata": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.target_types", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm, pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.ParseHelmChartMetadataDigest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Request to parse the Helm chart definition file (i.e. `Chart.yaml`) from the given digest.\n\nThe definition file is expected to be at the root of the digest.", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "ParseHelmChartMetadataDigest", + "provider": "pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.post_renderer.HelmDeploymentPostRendererRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmDeploymentPostRendererRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.post_renderer", + "name": "HelmDeploymentPostRendererRequest", + "provider": "pants.backend.helm.util_rules.post_renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"] + }, + "pants.backend.helm.util_rules.renderer.HelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet', *, cmd: 'HelmDeploymentCmd', description: 'str', extra_argv: 'Iterable[str] | None' = None, post_renderer: 'HelmPostRenderer | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "HelmDeploymentRequest", + "provider": "pants.backend.helm.util_rules.renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.RenderedHelmFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "RenderedHelmFiles(address: 'Address', chart: 'HelmChart', snapshot: 'Snapshot', post_processed: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.util_rules.renderer._HelmDeploymentProcessWrapper": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Intermediate representation of a `HelmProcess` that will produce a fully rendered set of\nmanifests from a given chart.\n\nThe encapsulated `process` will be side-effecting dependening on the `cmd` that was originally requested.\n\nThis is meant to only be used internally by this module.", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.sources.HelmChartRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.sources" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartRoot(path: 'str')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRoot", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartRootRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartRootRequest(source: 'HelmChartMetaSourceField')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRootRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.sources", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartSourceFiles(snapshot: 'Snapshot', unrooted_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.chart.get_helm_chart"] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartSourceFilesRequest(field_set: 'HelmChartFieldSet', include_resources: 'bool', include_files: 'bool', include_metadata: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFilesRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.chart.get_helm_chart"] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginBinding": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Union type allowing Pants to discover global external Helm plugins.", + "is_union": true, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginBinding", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": ["HelmUnitTestPluginBinding"], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.tool.all_helm_plugins"] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "dependencies": ["pants.engine.platform"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Helper class to create a download request for an external Helm plugin.", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmBinary": { + "consumed_by_rules": ["pants.backend.helm.util_rules.tool.helm_process"], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmBinary", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["pants.backend.helm.util_rules.tool.setup_helm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmPlugin(info: 'HelmPluginInfo', platform: 'Platform', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugin", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.tool.all_helm_plugins"] + }, + "pants.backend.helm.util_rules.tool.HelmPlugins": { + "consumed_by_rules": ["pants.backend.helm.util_rules.tool.setup_helm"], + "dependencies": ["pants.engine.unions"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugins", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmProcess": { + "consumed_by_rules": ["pants.backend.helm.util_rules.tool.helm_process"], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmProcess(argv: 'Iterable[str]', *, description: 'str', input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), level: 'LogLevel' = , output_directories: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, extra_env: 'Mapping[str, str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_append_only_caches: 'Mapping[str, str] | None' = None, cache_scope: 'ProcessCacheScope | None' = None, timeout_seconds: 'int | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmProcess", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "HandleJavacOptionsRequest(bsp_target_id: pants.bsp.spec.base.BuildTargetIdentifier)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsRequest", + "provider": "pants.backend.java.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.java.bsp.rules", "pants.base.build_root"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.JavaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPCompileRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.util_rules.lifecycle"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPLanguageSupport", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavacOptionsHandlerMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.java.bsp.spec.JavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.java.bsp.spec"], + "dependents": [], + "documentation": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.spec", + "name": "JavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.compile.javac.CompileJavaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.compile.javac", + "name": "CompileJavaSourceRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.FallibleJavaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.java.dependency_inference.java_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaParserCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors" + ] + }, + "pants.backend.java.dependency_inference.java_parser.JavaSourceDependencyAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.InferJavaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "InferJavaSourceDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.java.dependency_inference.rules", + "pants.core" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependenciesAndExportsRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaInferredDependenciesAndExportsRequest(source: 'SourcesField')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependenciesAndExportsRequest", + "provider": "pants.backend.java.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.symbol_mapper.AllJavaTargets": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "AllJavaTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.symbol_mapper.FirstPartyJavaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": ["pants.jvm.dependency_inference.symbol_mapper"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "FirstPartyJavaTargetsMappingRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.types.JavaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.option.global_options"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.types", + "name": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ] + }, + "pants.backend.java.goals.check.JavacCheckRequest": { + "consumed_by_rules": ["pants.backend.java.goals.check.javac_check"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.goals.check", + "name": "JavacCheckRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.java.goals.tailor.PutativeJavaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "PutativeJavaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.java.goals.tailor", + "name": "PutativeJavaTargetsRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatRequest", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java.lint.google_java_format"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatToolLockfileSentinel", + "provider": "pants.backend.experimental.java.lint.google_java_format, pants.backend.java.lint.google_java_format.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ] + }, + "pants.backend.java.lint.google_java_format.skip_field.SkipGoogleJavaFormatField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.skip_field", + "name": "SkipGoogleJavaFormatField", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.subsystem.GoogleJavaFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java.lint.google_java_format"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.subsystem", + "name": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": ["construct_scope_google_java_format"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.java_infer.JavaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.java_infer", + "name": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_java_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.javac.JavacSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.javac", + "name": "JavacSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_javac"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.junit.JUnit": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.jvm.test.junit.generate_junit_lockfile_request", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.junit", + "name": "JUnit", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_junit"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.target_types.JavaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'JavaSourceField')", + "is_union": false, + "module": "pants.backend.java.target_types", + "name": "JavaFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.CorepackToolDigest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.javascript.subsystems.nodejs" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "CorepackToolDigest(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "CorepackToolDigest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.CorepackToolRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "CorepackToolRequest(tool: 'str', input_digest: 'Digest', working_directory: 'str | None' = None, version: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "CorepackToolRequest", + "provider": "pants.backend.javascript.subsystems.nodejs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_env_aware_scope_nodejs"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJS": { + "consumed_by_rules": [ + "construct_env_aware_scope_nodejs", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_scope_nodejs"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSBinaries": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment" + ], + "dependencies": ["pants.core", "pants.engine.platform"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSBinaries(binary_dir: 'str', digest: 'Digest | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSBinaries", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSBootstrap": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSBootstrap(nodejs_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSBootstrap", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSProcessEnvironment": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSProcessEnvironment(binaries: 'NodeJSBinaries', npm_config_cache: 'str', tool_binaries: 'BinaryShims', corepack_home: 'str', corepack_shims: 'str', corepack_env_vars: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSProcessEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSToolProcess": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "A request for a tool installed with NodeJS.", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSToolProcess", + "provider": "pants.backend.javascript.subsystems.nodejs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.lint.spectral.rules.run_spectral" + ] + }, + "pants.backend.javascript.subsystems.nodejs.UserChosenNodeJSResolveAliases": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "UserChosenNodeJSResolveAliases", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs._BinaryPathsPerVersion": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "_BinaryPathsPerVersion", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc.CompileKotlinSourceRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc", + "name": "CompileKotlinSourceRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.AllKotlincPluginTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPlugins(ids: 'tuple[str, ...]', classpath: 'ClasspathEntry', plugin_args: 'FrozenDict[str, tuple[str, ...]]')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.java"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsRequest", + "provider": "pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.FallibleKotlinSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "FallibleKotlinSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.dependency_inference.kotlin_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.option.global_options"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinSourceDependencyAnalysis(package: 'str', imports: 'frozenset[KotlinImport]', named_declarations: 'frozenset[str]', consumed_symbols_by_scope: 'FrozenDict[str, frozenset[str]]', scopes: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinRuntimeDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinSourceDependencies", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.dependency_inference.rules" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolveRequest", + "provider": "pants.backend.kotlin.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.AllKotlinTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.FirstPartyKotlinTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": ["pants.jvm.dependency_inference.symbol_mapper"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "FirstPartyKotlinTargetsMappingRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.check.KotlincCheckRequest": { + "consumed_by_rules": ["pants.backend.kotlin.goals.check.kotlinc_check"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.goals.check", + "name": "KotlincCheckRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.tailor.PutativeKotlinTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "PutativeKotlinTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.kotlin.goals.tailor", + "name": "PutativeKotlinTargetsRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintRequest", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin.lint.ktlint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin.lint.ktlint, pants.backend.kotlin.lint.ktlint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": ["pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt"] + }, + "pants.backend.kotlin.lint.ktlint.skip_field.SkipKtlintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.skip_field", + "name": "SkipKtlintField", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.subsystem.KtlintSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin.lint.ktlint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.subsystem", + "name": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": ["construct_scope_ktlint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin.KotlinSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin", + "name": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": ["construct_scope_kotlin"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin_infer.KotlinInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin_infer", + "name": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": ["construct_scope_kotlin_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlinc.KotlincSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlinc", + "name": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": ["construct_scope_kotlinc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.target_types.KotlinFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'KotlinSourceField')", + "is_union": false, + "module": "pants.backend.kotlin.target_types", + "name": "KotlinFieldSet", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.InferKotlinJunitTestDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "InferKotlinJunitTestDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.test.junit" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinJunitLibrariesForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinJunitLibrariesForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolveRequest", + "provider": "pants.backend.kotlin.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiDocumentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiDocumentDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiSourceDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiSourceDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.OpenApiDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.openapi.dependency_inference", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": "OpenApiDependencies(dependencies: 'FrozenDict[str, frozenset[str]]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.dependency_inference.ParseOpenApiSources": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": "ParseOpenApiSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "ParseOpenApiSources", + "provider": "pants.backend.openapi.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.goals.tailor.PutativeOpenApiTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": "PutativeOpenApiTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.goals.tailor", + "name": "PutativeOpenApiTargetsRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.rules.SpectralRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.rules", + "name": "SpectralRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.skip_field.SkipSpectralField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.skip_field", + "name": "SkipSpectralField", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.subsystem.SpectralSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.subsystem", + "name": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_scope_spectral"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.openapi.subsystems.openapi.OpenApiSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.subsystems.openapi", + "name": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": ["construct_scope_openapi"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.plugin_development.pants_requirements.GenerateFromPantsRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.plugin_development"], + "documentation": null, + "is_union": false, + "module": "pants.backend.plugin_development.pants_requirements", + "name": "GenerateFromPantsRequirementsRequest", + "provider": "pants.backend.plugin_development", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCode": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCode", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.count_loc.count_loc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCodeSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_count_loc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.SuccinctCodeCounter": { + "consumed_by_rules": ["pants.backend.project_info.count_loc.count_loc"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "SuccinctCodeCounter", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_scc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.Dependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "Dependencies", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.DependenciesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "DependenciesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_dependencies"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.AddressToDependents": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.project_info"], + "documentation": "AddressToDependents(mapping: pants.util.frozendict.FrozenDict[Address, pants.util.ordered_set.FrozenOrderedSet[Address]])", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "AddressToDependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.map_addresses_to_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.Dependents": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.project_info", + "pants.backend.python.mixed_interpreter_constraints" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "Dependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.DependentsRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [], + "dependents": ["pants.backend.project_info"], + "documentation": "DependentsRequest(addresses: Iterable[Address], *, transitive: bool, include_roots: bool)", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_dependents"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.Filedeps": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.base.build_root", + "pants.build_graph.address", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "Filedeps", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.filedeps.file_deps"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.FiledepsSubsystem": { + "consumed_by_rules": ["pants.backend.project_info.filedeps.file_deps"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "FiledepsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_filedeps"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_filter"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.Roots": { + "consumed_by_rules": [], + "dependencies": ["pants.core", "pants.engine.console"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "Roots", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.list_roots.list_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.RootsSubsystem": { + "consumed_by_rules": ["pants.backend.project_info.list_roots.list_roots"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "RootsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.List": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "List", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.ListSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "ListSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_list"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.paths.paths"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsSubsystem": { + "consumed_by_rules": ["pants.backend.project_info.paths.paths"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_paths"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.Peek": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "Peek", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.peek.peek"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.PeekSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": "Display detailed target information in JSON form.", + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "PeekSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_peek"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.TargetDatas": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "TargetDatas", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.peek.get_target_data"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.peek.peek"] + }, + "pants.backend.project_info.regex_lint.RegexLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.regex_lint.RegexLintSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.project_info.regex_lint.partition_inputs" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_regex_lint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.AllPythonTargets": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.python"], + "documentation": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "AllPythonTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImpl": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.python, pants.backend.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImplMarker": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "An entry point for a specific implementation of mapping module names to owning targets for\nPython import dependency inference.\n\nAll implementations will be merged together. Any modules that show up in multiple\nimplementations will be marked ambiguous.", + "is_union": true, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImplMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "FirstPartyPythonTargetsMappingMarker", + "PythonProtobufMappingMarker", + "PythonThriftMappingMarker", + "PythonVCSVersionMappingMarker" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "FirstPartyPythonModuleMapping(resolves_to_modules_to_providers: 'FrozenDict[ResolveName, FrozenDict[str, Tuple[ModuleProvider, ...]]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonTargetsMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonTargetsMappingMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "The target(s) that own a Python module.\n\nUp to 2 targets can unambiguously own the same module, if one is an implementation and the other\nis a .pyi type stub. It is ambiguous for >1 implementation target to own the same module, and\nthose targets will be put into `ambiguous` instead of `unambiguous`. Therefore, `unambiguous`\nshould never be >2; and only 1 of `unambiguous` and `ambiguous` should have targets.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwnersRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "PythonModuleOwnersRequest(module: 'str', resolve: 'str | None', locality: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwnersRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.ThirdPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request" + ], + "dependencies": ["pants.core"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.python" + ], + "documentation": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.GeneralPythonDependencyVisitorRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "GeneralPythonDependencyVisitorRequest()", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "GeneralPythonDependencyVisitorRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PythonDependencyVisitorRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsePythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "ParsePythonDependenciesRequest(source: 'PythonSourceField', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsePythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.internals.native_dep_inference", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ParsedPythonDependencies(imports: 'ParsedPythonImports', assets: 'ParsedPythonAssetPaths')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParserScript": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "ParserScript(digest: 'Digest', env: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParserScript", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.PythonDependencyVisitor": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "Wraps a subclass of DependencyVisitorBase.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "PythonDependencyVisitor", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.PythonDependencyVisitorRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "PythonDependencyVisitorRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": ["GeneralPythonDependencyVisitorRequest"], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script" + ] + }, + "pants.backend.python.dependency_inference.rules.InferConftestDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferConftestDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferInitDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferInitDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferPythonImportDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferPythonImportDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.PythonImportDependenciesInferenceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python"], + "documentation": "PythonImportDependenciesInferenceFieldSet(address: 'Address', source: 'PythonSourceField', dependencies: 'PythonDependenciesField', resolve: 'PythonResolveField', interpreter_constraints: 'InterpreterConstraintsField')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "PythonImportDependenciesInferenceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ResolvedParsedPythonDependencies(resolve_results: 'dict[str, ImportResolveResult]', assets: 'dict[str, ImportResolveResult]', explicit: 'ExplicitlyProvidedDependencies')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "ResolvedParsedPythonDependenciesRequest(field_set: 'PythonImportDependenciesInferenceFieldSet', parsed_dependencies: 'ParsedPythonDependencies', resolve: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwnerRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "UnownedImportPossibleOwnerRequest(unowned_import: 'str', original_resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwnerRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwners": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "UnownedImportPossibleOwners(value: 'list[tuple[Address, ResolveName]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.subsystem.PythonInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.awslambda.python", "pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.subsystem", + "name": "PythonInferSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_python_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.InferStevedoreNamespacesDependencies": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "InferStevedoreNamespacesDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.StevedoreExtensions": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": "A mapping of stevedore namespaces to a list of targets that provide them.\n\nEffectively, the targets are StevedoreExtension targets.", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.rules.GenerateEntryPointsTxtFromStevedoreExtensionRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.rules", + "name": "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.AllStevedoreExtensionTargets": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreExtensionTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesField", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesProviderTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": "StevedoreNamespacesProviderTargetsRequest(stevedore_namespaces: 'StevedoreNamespacesField')", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesProviderTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.goals.coverage_py.CoverageConfig": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.python"], + "documentation": "CoverageConfig(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageConfig", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSetup": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "CoverageSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_coverage_py"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.MergedCoverageData": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.python"], + "documentation": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "MergedCoverageData", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.PytestCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "PytestCoverageDataCollection", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysisSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": ["construct_scope_python_dump_source_analysis"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.PythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python", "pants.core"], + "dependents": ["pants.backend.experimental.python"], + "documentation": "Information on the inferred imports for a Python file, including all raw intermediate\nresults.", + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.goals.export.ExportPluginOptions": { + "consumed_by_rules": [], + "dependencies": ["pants.option.subsystem"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPluginOptions", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginOption", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.ExportPythonTool": { + "consumed_by_rules": ["pants.backend.python.goals.export.export_tool"], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "How to export a particular Python tool.\n\nIf `pex_request=None`, the tool will be skipped.", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.tools.yamllint, pants.backend.python, pants.backend.python.lint.autoflake, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export", + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.lint.ruff.subsystem.ruff_export", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.tools.yamllint.subsystem.yamllint_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportPythonToolSentinel": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Python tools use this as an entry point to say how to export their tool virtualenv.\n\nEach tool should subclass `ExportPythonToolSentinel` and set up a rule that goes from\nthe subclass -> `ExportPythonTool`. Register a union rule for the `ExportPythonToolSentinel`\nsubclass.\n\nIf the tool is in `pantsbuild/pants`, update `export_integration_test.py`.", + "is_union": true, + "module": "pants.backend.python.goals.export", + "name": "ExportPythonToolSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaExportSentinel", + "AutoflakeExportSentinel", + "BanditExportSentinel", + "BlackExportSentinel", + "DocformatterExportSentinel", + "Flake8ExportSentinel", + "IsortExportSentinel", + "MyPyExportSentinel", + "PyUpgradeExportSentinel", + "PydocstyleExportSentinel", + "PylintExportSentinel", + "PytestExportSentinel", + "RuffExportSentinel", + "YamllintExportSentinel", + "YapfExportSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.ExportVenvsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "ExportVenvsRequest(targets: 'Sequence[Target]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportVenvsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.MaybeExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "MaybeExportResult(result: 'ExportResult | None')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "MaybeExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.goals.export.export_virtualenvs"] + }, + "pants.backend.python.goals.export.VenvExportRequest": { + "consumed_by_rules": ["pants.backend.python.goals.export.do_export"], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "VenvExportRequest(pex_request: 'PexRequest', dest_prefix: 'str', resolve_name: 'str', qualify_path_with_python_version: 'bool', editable_local_dists_digest: 'Digest | None' = None)", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "VenvExportRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenv_for_targets" + ] + }, + "pants.backend.python.goals.export._ExportVenvForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_ExportVenvForResolveRequest(resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvForResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.goals.export.export_virtualenvs"] + }, + "pants.backend.python.goals.export._ExportVenvRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_targets" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_ExportVenvRequest(resolve: 'str | None', root_python_targets: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.goals.export.export_virtualenvs"] + }, + "pants.backend.python.goals.lockfile.GeneratePythonLockfile": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.core"], + "documentation": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', requirements: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "GeneratePythonLockfile", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.terraform, pants.backend.experimental.tools.yamllint, pants.backend.python, pants.backend.python.lint.autoflake, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.python.lint.pyupgrade, pants.backend.python.typecheck.mypy, pants.core", + "returned_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.KnownPythonUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "KnownPythonUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.PythonSyntheticLockfileTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "dependencies": ["pants.engine.internals.synthetic_targets"], + "dependents": ["pants.core"], + "documentation": "Register the type used to create synthetic targets for Python lockfiles.\n\nAs the paths for all lockfiles are known up-front, we set the `path` field to\n`SyntheticTargetsRequest.SINGLE_REQUEST_FOR_ALL_TARGETS` so that we get a single request for all\nour synthetic targets rather than one request per directory.", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "PythonSyntheticLockfileTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "SyntheticTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.RequestedPythonUserResolveNames": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "RequestedPythonUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.backend.python.goals.package_pex_binary.PexBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PexBinaryFieldSet(address: 'Address', entry_point: pants.backend.python.target_types.PexEntryPointField, script: pants.backend.python.target_types.PexScriptField, args: pants.backend.python.target_types.PexArgsField, env: pants.backend.python.target_types.PexEnvField, output_path: pants.core.goals.package.OutputPathField, emit_warnings: pants.backend.python.target_types.PexEmitWarningsField, ignore_errors: pants.backend.python.target_types.PexIgnoreErrorsField, inherit_path: pants.backend.python.target_types.PexInheritPathField, shebang: pants.backend.python.target_types.PexShebangField, strip_env: pants.backend.python.target_types.PexStripEnvField, platforms: pants.backend.python.target_types.PexPlatformsField, complete_platforms: pants.backend.python.target_types.PexCompletePlatformsField, resolve_local_platforms: pants.backend.python.target_types.PexResolveLocalPlatformsField, layout: pants.backend.python.target_types.PexLayoutField, execution_mode: pants.backend.python.target_types.PexExecutionModeField, include_requirements: pants.backend.python.target_types.PexIncludeRequirementsField, include_sources: pants.backend.python.target_types.PexIncludeSourcesField, include_tools: pants.backend.python.target_types.PexIncludeToolsField, venv_site_packages_copies: pants.backend.python.target_types.PexVenvSitePackagesCopies, venv_hermetic_scripts: pants.backend.python.target_types.PexVenvHermeticScripts, environment: pants.core.util_rules.environments.EnvironmentField)", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexBinaryFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.package_pex_binary.PexFromTargetsRequestForBuiltPackage": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request" + ], + "dependencies": ["pants.backend.awslambda.python", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "An intermediate class that gives consumers access to the data used to create a\n`PexFromTargetsRequest` to fulfil a `BuiltPackage` request.\n\nThis class is used directly by `run_pex_binary`, but should be handled transparently by direct\n`BuiltPackage` requests.", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.publish.PublishPythonPackageFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "PublishPythonPackageFieldSet(address: 'Address', repositories: 'PythonRepositoriesField', skip_twine: 'SkipTwineUploadField')", + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageFieldSet", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PublishPythonPackageRequest": { + "consumed_by_rules": ["pants.backend.python.goals.publish.twine_upload"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PythonRepositoriesField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PythonRepositoriesField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.SkipTwineUploadField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "SkipTwineUploadField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetups": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.python.framework.stevedore", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetups", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetupsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "AllPytestPluginSetupsRequest(addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetupsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.PyTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PyTestRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.python"], + "documentation": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetupRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "A request to set up the test environment before Pytest runs, e.g. to set up databases.\n\nTo use, subclass PytestPluginSetupRequest, register the rule\n`UnionRule(PytestPluginSetupRequest, MyCustomPytestPluginSetupRequest)`, and add a rule that\ntakes your subclass as a parameter and returns `PytestPluginSetup`.", + "is_union": true, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "RuntimePackagesPluginRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.RuntimePackagesPluginRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "RuntimePackagesPluginRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "RuntimePackagesPluginRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": ["pants.backend.python"], + "documentation": "TestSetup(process: 'Process', results_file_name: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.pytest_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "TestSetupRequest(field_sets: 'Tuple[PythonTestFieldSet, ...]', metadata: 'TestMetadata', is_debug: 'bool', extra_env: 'FrozenDict[str, str]' = FrozenDict({}), prepend_argv: 'Tuple[str, ...]' = (), additional_pexes: 'Tuple[Pex, ...]' = ())", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.repl.IPythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "IPythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.repl.PythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_python_repl_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "PythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_requirement.PythonRequirementFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PythonRequirementFieldSet(address: 'Address', requirements: 'PythonRequirementsField', dependencies: 'PythonRequirementDependenciesField', modules: 'PythonRequirementModulesField', resolve: 'PythonRequirementResolveField', entry_point: 'PythonRequirementEntryPointField')", + "is_union": false, + "module": "pants.backend.python.goals.run_python_requirement", + "name": "PythonRequirementFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_source.PythonSourceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PythonSourceFieldSet(address: 'Address', source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.target_types.InterpreterConstraintsField, _run_goal_use_sandbox: pants.backend.python.target_types.PythonRunGoalUseSandboxField)", + "is_union": false, + "module": "pants.backend.python.goals.run_python_source", + "name": "PythonSourceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.tailor.PutativePythonTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PutativePythonTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.tailor", + "name": "PutativePythonTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.rules.AddTrailingCommaRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.rules", + "name": "AddTrailingCommaRequest", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.skip_field.SkipAddTrailingCommaField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.skip_field", + "name": "SkipAddTrailingCommaField", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingComma": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": ["construct_scope_add_trailing_comma"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingCommaExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingCommaExportSentinel", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.rules.AutoflakeRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.rules", + "name": "AutoflakeRequest", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.skip_field.SkipAutoflakeField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.skip_field", + "name": "SkipAutoflakeField", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.Autoflake": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.autoflake"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "Autoflake", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": ["construct_scope_autoflake"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.AutoflakeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.subsystem.autoflake_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.autoflake"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "AutoflakeExportSentinel", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.rules.BanditRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditRequest", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.skip_field.SkipBanditField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.skip_field", + "name": "SkipBanditField", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.Bandit": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.bandit"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "Bandit", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": ["construct_scope_bandit"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.bandit"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditExportSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.BanditLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.bandit"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "BanditLockfileSentinel", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.rules.BlackRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.rules", + "name": "BlackRequest", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.skip_field.SkipBlackField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.skip_field", + "name": "SkipBlackField", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.Black": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.python.lint.black", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "Black", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_black"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.black_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.black"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackExportSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.BlackLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.black.subsystem.setup_black_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.black"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "BlackLockfileSentinel", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.rules.DocformatterRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.rules", + "name": "DocformatterRequest", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.skip_field.SkipDocformatterField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.skip_field", + "name": "SkipDocformatterField", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.Docformatter": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.docformatter"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "Docformatter", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": ["construct_scope_docformatter"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.DocformatterExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.subsystem.docformatter_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.docformatter"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "DocformatterExportSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.rules.Flake8Request": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Request", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.skip_field.SkipFlake8Field": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.skip_field", + "name": "SkipFlake8Field", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.flake8"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": ["construct_scope_flake8"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8ExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.flake8"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8ExportSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8FirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python.lint.flake8"], + "documentation": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8LockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.flake8"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8LockfileSentinel", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.rules.IsortRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.rules", + "name": "IsortRequest", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.skip_field.SkipIsortField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.skip_field", + "name": "SkipIsortField", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.Isort": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.isort.subsystem.isort_export", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.isort"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "Isort", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": ["construct_scope_isort"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.IsortExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.subsystem.isort_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.isort"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "IsortExportSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.rules.PydocstyleRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.rules", + "name": "PydocstyleRequest", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.skip_field.SkipPydocstyleField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.skip_field", + "name": "SkipPydocstyleField", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.subsystem.Pydocstyle": { + "consumed_by_rules": [ + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export", + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.pydocstyle"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.subsystem", + "name": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": ["construct_scope_pydocstyle"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.subsystem.PydocstyleExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.pydocstyle"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.subsystem", + "name": "PydocstyleExportSentinel", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.subsystem.PydocstyleLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.pydocstyle"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.subsystem", + "name": "PydocstyleLockfileSentinel", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.rules.PylintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintRequest", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.skip_field.SkipPylintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.skip_field", + "name": "SkipPylintField", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.Pylint": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.pylint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "Pylint", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": ["construct_scope_pylint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.pylint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintExportSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python.lint.pylint"], + "documentation": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.pylint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintLockfileSentinel", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.rules.PyUpgradeRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.rules", + "name": "PyUpgradeRequest", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.skip_field.SkipPyUpgradeField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.skip_field", + "name": "SkipPyUpgradeField", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgrade": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.pyupgrade"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": ["construct_scope_pyupgrade"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgradeExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.pyupgrade"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgradeExportSentinel", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffFixRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffFixRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffLintRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules._RunRuffRequest": { + "consumed_by_rules": ["pants.backend.python.lint.ruff.rules.run_ruff"], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.lint.ruff"], + "documentation": "_RunRuffRequest(snapshot: 'Snapshot', is_fix: 'bool')", + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "_RunRuffRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_lint" + ] + }, + "pants.backend.python.lint.ruff.skip_field.SkipRuffField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.skip_field", + "name": "SkipRuffField", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.subsystem.Ruff": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.ruff.subsystem.ruff_export", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python.lint.ruff"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.subsystem", + "name": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": ["construct_scope_ruff"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.subsystem.RuffExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.subsystem.ruff_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python.lint.ruff"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.subsystem", + "name": "RuffExportSentinel", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.rules.YapfRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.rules", + "name": "YapfRequest", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.skip_field.SkipYapfField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.skip_field", + "name": "SkipYapfField", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.Yapf": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.lint.yapf.subsystem.yapf_export", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.build_files.fmt.yapf", + "pants.backend.python.lint.yapf", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "Yapf", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_yapf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.YapfExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.lint.yapf.subsystem.yapf_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.lint.yapf"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "YapfExportSentinel", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.macros.pipenv_requirements.GenerateFromPipenvRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.pipenv_requirements", + "name": "GenerateFromPipenvRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.poetry_requirements.GenerateFromPoetryRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.poetry_requirements", + "name": "GenerateFromPoetryRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.python_requirements.GenerateFromPythonRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.python_requirements.generate_from_python_requirement" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.python_requirements", + "name": "GenerateFromPythonRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.mixed_interpreter_constraints"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": ["construct_scope_py_constraints"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyOxidizerFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": "PyOxidizerFieldSet(address: 'Address', binary_name: 'PyOxidizerBinaryNameField', entry_point: 'PyOxidizerEntryPointField', dependencies: 'PyOxidizerDependenciesField', unclassified_resources: 'PyOxidizerUnclassifiedResources', template: 'PyOxidizerConfigSourceField', output_path: 'PyOxidizerOutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyOxidizerFieldSet", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyoxidizerRunnerScript": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyOxidizer": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": ["construct_scope_pyoxidizer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPy": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPy", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_debugpy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPython": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPython", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_ipython"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPythonLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPythonLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.Lambdex": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "Lambdex", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": ["construct_scope_lambdex"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PyTest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PyTest", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_pytest"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.pytest_export" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestExportSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PytestLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PytestLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PythonTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "PythonTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'PythonTestSourceField', interpreter_constraints: 'InterpreterConstraintsField', timeout: 'PythonTestsTimeoutField', runtime_package_dependencies: 'RuntimePackageDependenciesField', extra_env_vars: 'PythonTestsExtraEnvVarsField', xdist_concurrency: 'PythonTestsXdistConcurrencyField', batch_compatibility_tag: 'PythonTestsBatchCompatibilityTagField', resolve: 'PythonResolveField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PythonTestFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_python_native_code"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.PythonNativeCodeSubsystem": { + "consumed_by_rules": ["construct_env_aware_scope_python_native_code"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "PythonNativeCodeSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python_native_code"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.repos.PythonRepos": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.repos", + "name": "PythonRepos", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python_repos"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup.PythonSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup", + "name": "PythonSetup", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup_py_generation.SetupPyGeneration": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup_py_generation", + "name": "SetupPyGeneration", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_setup_py_generation"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.PythonDistributionFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PythonDistributionFieldSet(address: 'Address', provides: pants.backend.python.target_types.PythonProvidesField)", + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "PythonDistributionFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ] + }, + "pants.backend.python.subsystems.setuptools.Setuptools": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "Setuptools", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_setuptools"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.SetuptoolsLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "SetuptoolsLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCM": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python", + "returned_by_rules": ["construct_scope_setuptools_scm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": ["construct_scope_twine"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexBinaryDefaults": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexBinaryDefaults", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_pex_binary_defaults"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexCompletePlatformsField": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexCompletePlatformsField", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.target_types.PythonFilesGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PythonFilesGeneratorSettingsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types.ResolvePexEntryPointRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Determine the `entry_point` for a `pex_binary` after applying all syntactic sugar.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePexEntryPointRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvePythonDistributionEntryPointsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Looks at the entry points to see if it is a setuptools entry point, or a BUILD target address\nthat should be resolved into a setuptools entry point.\n\nIf the `entry_points_field` is present, inspect the specified entry points.\nIf the `provides_field` is present, inspect the `provides_field.kwargs[\"entry_points\"]`.\n\nThis is to support inspecting one or the other depending on use case, using the same\nlogic for resolving pex_binary addresses etc.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePythonDistributionEntryPointsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.target_types.ResolvedPexEntryPoint": { + "consumed_by_rules": [], + "dependencies": ["pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPexEntryPoint", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvedPythonDistributionEntryPoints": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.target_types_rules.GenerateTargetsFromPexBinaries": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "GenerateTargetsFromPexBinaries", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPexBinaryEntryPointDependency": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPexBinaryEntryPointDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPythonDistributionDependencies": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPythonDistributionDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonValidateDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonValidateDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.MyPycDistBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPycDistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "MyPycDistBuildEnvironmentRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "DistBuildEnvironmentRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.UsesMyPycField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "UsesMyPycField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPyPartition(field_sets: 'FrozenOrderedSet[MyPyFieldSet]', root_targets: 'CoarsenedTargets', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartition", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartitions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.skip_field.SkipMyPyField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.skip_field", + "name": "SkipMyPyField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPy": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPy", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": ["construct_scope_mypy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyConfigFile": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": ["pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyExportSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyExportSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyExtraTypeStubsLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyExtraTypeStubsLockfileSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyLockfileSentinel", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "Any ancestor files found.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request for ancestor files of the given names.\n\n\"Ancestor files\" means all files with one of the given names that are siblings of, or in parent\ndirectories of, a `.py` or `.pyi` file in the input_files.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystem": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "A PEP 517/518 build system configuration.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystemRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to find build system config in the given dir of the given digest.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystemRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to build dists via a PEP 517 build backend.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist" + ] + }, + "pants.backend.python.util_rules.faas.BuildLambdexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.build_lambdex" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "BuildLambdexRequest(address: 'Address', target_name: 'str', complete_platforms: 'PythonFaaSCompletePlatforms', handler: 'PythonFaaSHandlerField', output_path: 'OutputPathField', runtime: 'PythonFaaSRuntimeField', include_requirements: 'bool', script_handler: 'None | str', script_module: 'None | str', handler_log_message: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "BuildLambdexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ] + }, + "pants.backend.python.util_rules.faas.BuildPythonFaaSRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "BuildPythonFaaSRequest(address: 'Address', target_name: 'str', complete_platforms: 'PythonFaaSCompletePlatforms', handler: 'PythonFaaSHandlerField', output_path: 'OutputPathField', runtime: 'PythonFaaSRuntimeField', include_requirements: 'bool', reexported_handler_module: 'str', log_only_reexported_handler_func: 'bool' = False)", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "BuildPythonFaaSRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ] + }, + "pants.backend.python.util_rules.faas.InferPythonFaaSHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "InferPythonFaaSHandlerDependency", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.faas.PythonFaaSCompletePlatforms": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.digest_complete_platforms" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "PythonFaaSCompletePlatforms", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.faas.ResolvePythonFaaSHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.resolve_python_faas_handler" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "ResolvePythonFaaSHandlerRequest(field: 'PythonFaaSHandlerField')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "ResolvePythonFaaSHandlerRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.util_rules.faas.ResolvedPythonFaaSHandler": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python", "pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "ResolvedPythonFaaSHandler(module: 'str', func: 'str', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "ResolvedPythonFaaSHandler", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.resolve_python_faas_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.interpreter_constraints", + "name": "InterpreterConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistWheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "Contains the wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistWheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPex": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPex", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Request to build the local dists from the dependency closure of a set of addresses.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.AllPythonDistributionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.python"], + "documentation": "AllPythonDistributionTargets(targets: 'Targets')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "AllPythonDistributionTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.local_dists_pep660.EditableLocalDists": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "A Digest populated by editable (PEP660) wheels of local dists.\n\nAccording to PEP660, these wheels should not be exported to users and must be discarded\nafter install. Anything that uses this should ensure that these wheels get installed and\nthen deleted.\n\nInstalling PEP660 wheels creates an \"editable\" install such that the sys.path gets\nadjusted to include source directories from the build root (not from the sandbox).\nThis is decidedly not hermetic or portable and should only be used locally.\n\nPEP660 wheels have .dist-info metadata and the .pth files (or similar) that adjust sys.path.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "EditableLocalDists", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.EditableLocalDistsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Request to generate PEP660 wheels of local dists in the given resolve.\n\nThe editable wheel files must not be exported or made available to the end-user (according to\nPEP 660). Instead, the PEP660 editable wheels serve as intermediate, internal-only,\nrepresentation of what should be installed in the exported virtualenv to create the editable\ninstalls of local python_distributions.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "EditableLocalDistsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.LocalDistPEP660Wheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.env_vars", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "Contains the PEP 660 \"editable\" wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "LocalDistPEP660Wheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.PEP660BuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "PEP660BuildResult(output: 'Digest', editable_wheel_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "PEP660BuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.ResolveSortedPythonDistributionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "ResolveSortedPythonDistributionTargets(targets: 'FrozenDict[str | None, tuple[Target, ...]]')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "ResolveSortedPythonDistributionTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.AddTrailingCommaLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "AddTrailingCommaLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.AutoflakeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.autoflake"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "AutoflakeLockfileSentinel", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.CoverageSubsystemLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "CoverageSubsystemLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.DebugPyLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "DebugPyLockfileSentinel", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.DocformatterLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.docformatter"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "DocformatterLockfileSentinel", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.DockerfileParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "DockerfileParserLockfileSentinel", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.HelmKubeParserSubsystemLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "HelmKubeParserSubsystemLockfileSentinel", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.HelmPostRendererSubsystemLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "HelmPostRendererSubsystemLockfileSentinel", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.IsortLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.isort"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "IsortLockfileSentinel", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.LambdexLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "LambdexLockfileSentinel", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.PyOxidizerLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "PyOxidizerLockfileSentinel", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.PyUpgradeLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.pyupgrade"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "PyUpgradeLockfileSentinel", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.PythonProtobufMypyPluginLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "PythonProtobufMypyPluginLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.RuffLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python.lint.ruff"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "RuffLockfileSentinel", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.SetuptoolsSCMLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "SetuptoolsSCMLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.TerraformHcl2ParserLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "TerraformHcl2ParserLockfileSentinel", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.TwineSubsystemLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "TwineSubsystemLockfileSentinel", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.YamllintLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "YamllintLockfileSentinel", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.lockfile.YapfLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.lockfile", + "name": "YapfLockfileSentinel", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.package_dists.DependencyOwner": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "An ExportedTarget in its role as an owner of other targets.\n\nWe need this type to prevent rule ambiguities when computing the list of targets owned by an\nExportedTarget (which involves going from ExportedTarget -> dep -> owner (which is itself an\nExportedTarget) and checking if owner is the original ExportedTarget.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DependencyOwner", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_sources" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildChroot": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "A chroot containing PEP 517 build setup and the sources it operates on.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildChroot", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildChrootRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to create a chroot for building a dist in.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildChrootRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "Various extra information that might be needed to build a dist.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildEnvironmentRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "DistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": true, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildEnvironmentRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": ["MyPycDistBuildEnvironmentRequest"], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildSources": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "The source-root-stripped sources required to build a distribution with a generated setup.py.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildSources", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.ExportedTarget": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "ExportedTarget", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_exporting_owner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.ExportedTargetRequirements": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "ExportedTargetRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.util_rules.package_dists.FinalizedSetupKwargs": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "FinalizedSetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ] + }, + "pants.backend.python.util_rules.package_dists.GenerateSetupPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "GenerateSetupPyRequest(exported_target: 'ExportedTarget', sources: 'DistBuildSources', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "GenerateSetupPyRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ] + }, + "pants.backend.python.util_rules.package_dists.GeneratedSetupPy": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "GeneratedSetupPy(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "GeneratedSetupPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.OwnedDependencies": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.engine.unions"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "OwnedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.package_dists.get_sources" + ] + }, + "pants.backend.python.util_rules.package_dists.OwnedDependency": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_exporting_owner" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A target that is owned by some ExportedTarget.\n\nCode in this target is published in the owner's distribution.\n\nThe owner of a target T is T's closest filesystem ancestor among the python_distribution\ntargets that directly or indirectly depend on it (including T itself).", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "OwnedDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.SetupKwargs": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.unions"], + "dependents": ["pants.backend.python"], + "documentation": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "SetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.SetupKwargsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to allow setting the kwargs passed to the `setup()` function.\n\nBy default, Pants will pass the kwargs provided in the BUILD file unchanged. To customize this\nbehavior, subclass `SetupKwargsRequest`, register the rule `UnionRule(SetupKwargsRequest,\nMyCustomSetupKwargsRequest)`, and add a rule that takes your subclass as a parameter and returns\n`SetupKwargs`.", + "is_union": true, + "module": "pants.backend.python.util_rules.package_dists", + "name": "SetupKwargsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ] + }, + "pants.backend.python.util_rules.pex.BuildPexResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python" + ], + "dependents": ["pants.core"], + "documentation": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "BuildPexResult", + "provider": "pants.core", + "returned_by_rules": ["pants.backend.python.util_rules.pex.build_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex" + ] + }, + "pants.backend.python.util_rules.pex.CompletePlatforms": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "CompletePlatforms", + "provider": "pants.backend.awslambda.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPex": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python"], + "documentation": "OptionalPex(maybe_pex: 'Pex | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex.Pex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "Wrapper for a digest containing a pex file created with some filename.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "Pex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": ["pants.backend.python.util_rules.pex.create_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_pex_process" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "PexProcess(pex: 'Pex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings_or_addrs=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None, description_of_origin=''), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.PexResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexResolveInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex.PythonProvider": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Union which should have 0 or 1 implementations registered which provide Python.\n\nSubclasses should provide a rule from their subclass type to `PythonExecutable`.", + "is_union": true, + "module": "pants.backend.python.util_rules.pex", + "name": "PythonProvider", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.util_rules.pex.find_interpreter"] + }, + "pants.backend.python.util_rules.pex.ReqStrings": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": ["pants.core"], + "documentation": "ReqStrings(req_strings: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "ReqStrings", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.util_rules.pex.build_pex"] + }, + "pants.backend.python.util_rules.pex.VenvPex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "VenvPex(digest: 'Digest', append_only_caches: 'FrozenDict[str, str] | None', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_venv_pex_process" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "VenvPexProcess(venv_pex: 'VenvPex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "VenvPexRequest(pex_request: 'PexRequest', complete_pex_env: 'CompletePexEnvironment', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexRequest", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexCli": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCli", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_pex_cli"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_cli.PexCliProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "PexCliProcess(*, subcommand: 'Iterable[str]', extra_args: 'Iterable[str]', description: 'str', additional_input_digest: 'Optional[Digest]' = None, extra_env: 'Optional[Mapping[str, str]]' = None, output_files: 'Optional[Iterable[str]]' = None, output_directories: 'Optional[Iterable[str]]' = None, level: 'LogLevel' = , concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCliProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_venv.pex_venv" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexPEX": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": ["pants.engine.platform"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "The Pex PEX binary.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexPEX", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexEnvironment": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": ["pants.option.global_options"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.core" + ], + "documentation": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonBuildStandaloneBinary', venv_use_symlinks: 'bool' = False)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_pex", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PythonExecutable": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "The BinaryPath of a Python executable for user code, along with some extras.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PythonExecutable", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolve": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolve", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "ChosenPythonResolveRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.GlobalRequirementConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": ["pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "GlobalRequirementConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_from_targets.InterpreterConstraintsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "InterpreterConstraintsRequest(addresses: 'Iterable[Address]', *, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "InterpreterConstraintsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.PexFromTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None, warn_for_transitive_files_targets: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "PexFromTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.RequirementsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Requests a PEX containing only thirdparty requirements for internal/non-portable use.\n\nUsed as part of an optimization to reduce the \"overhead\" (in terms of both time and space) of\nthirdparty requirements by taking advantage of certain PEX features.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "RequirementsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._ConstraintsRepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_ConstraintsRepositoryPexRequest(repository_pex_request: '_RepositoryPexRequest')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_ConstraintsRepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._PexRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Determine the requirement strings used transitively.\n\nThis type is private because callers should likely use `RequirementsPexRequest` or\n`PexFromTargetsRequest` instead.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_PexRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._RepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_RepositoryPexRequest(addresses: 'Iterable[Address]', *, internal_only: 'bool', hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_lockfile_args: 'tuple[str, ...]' = ()) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_RepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.python", + "pants.core" + ], + "documentation": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfileRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A request to load and validate the content of the given lockfile.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfileRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Lockfile": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.core"], + "documentation": "Lockfile(url: 'str', url_description_of_origin: 'str', resolve_name: 'str', lockfile_hex_digest: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Lockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.util_rules.pex.build_pex"] + }, + "pants.backend.python.util_rules.pex_requirements.PexRequirements": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "dependencies": [], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "PexRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Resolve": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Resolve(name: 'str', use_entire_lockfile: 'bool')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Resolve", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.util_rules.pex.build_pex"] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "Configuration from `[python]` that impacts how the resolve is created.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfig", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfigRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Find all configuration from `[python]` that impacts how the resolve is created.\n\nIf `resolve_name` is None, then most per-resolve options will be ignored because there is no way\nfor users to configure them. However, some options like `[python-repos].indexes` will still be\nloaded.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfigRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_venv.PexVenv": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PexVenv(digest: Digest, path: pathlib.Path)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_venv", + "name": "PexVenv", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_venv.pex_venv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.pex_venv.PexVenvRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_venv.pex_venv" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PexVenvRequest(pex: pants.backend.python.util_rules.pex.Pex, layout: pants.backend.python.util_rules.pex_venv.PexVenvLayout, output_path: pathlib.Path, description: str, platforms: pants.backend.python.util_rules.pex.PexPlatforms = PexPlatforms([]), complete_platforms: pants.backend.python.util_rules.pex.CompletePlatforms = CompletePlatforms([]))", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_venv", + "name": "PexVenvRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFiles": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "PythonSourceFilesRequest(targets: 'Iterable[Target]', *, include_resources: 'bool' = True, include_files: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.StrippedPythonSourceFiles": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "documentation": "A PythonSourceFiles that has had its source roots stripped.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "StrippedPythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.vcs_versioning.AllVCSVersionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.GeneratePythonFromSetuptoolsSCMRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "GeneratePythonFromSetuptoolsSCMRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.PythonVCSVersionMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "PythonVCSVersionMappingMarker", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.VCSVersionPythonResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "VCSVersionPythonResolveField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "HandleScalacOptionsRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.base.build_root", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "HandleScalacOptionsResult(item: 'ScalacOptionsItem')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.ScalaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPCompileRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPDependencyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaBSPDependencyModulesRequest(field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPDependencyModulesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPDependencyModulesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.util_rules.lifecycle"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPLanguageSupport", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_resources_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPResourcesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaMainClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaMainClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaTestClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaTestClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalacOptionsHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModules": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.core", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch", + "pants.jvm.resolve.key" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ThirdpartyModules(resolve: 'CoursierResolveKey', entries: 'dict[CoursierLockfileEntry, ClasspathEntry]', merged_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ThirdpartyModulesRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModulesRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.spec.ScalaMainClassesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.bsp.spec"], + "dependents": [], + "documentation": "ScalaMainClassesResult(items: 'tuple[ScalaMainClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalaTestClassesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.bsp.spec"], + "dependents": [], + "documentation": "ScalaTestClassesResult(items: 'tuple[ScalaTestClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.bsp.spec"], + "dependents": [], + "documentation": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac.CompileScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac", + "name": "CompileScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.AllScalaPluginTargets": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.scala.compile.scalac_plugins", + "pants.core" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPlugins", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.java"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala, pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetWithoutResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginsForTargetWithoutResolveRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetWithoutResolveRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaLibraryDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaLibraryDependencyRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaPluginDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaPluginDependenciesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaSourceDependencies", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.dependency_inference.rules" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolveRequest", + "provider": "pants.backend.scala.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.AnalyzeScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "AnalyzeScalaSourceRequest(source_files: 'SourceFiles', scala_version: 'str', source3: 'bool')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.FallibleScalaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.dependency_inference.scala_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.option.global_options"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[ScalaProvidedSymbol]', provided_symbols_encoded: 'FrozenOrderedSet[ScalaProvidedSymbol]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.AllScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "AllScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.FirstPartyScalaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "dependencies": ["pants.jvm.dependency_inference.symbol_mapper"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "FirstPartyScalaTargetsMappingRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.check.ScalacCheckRequest": { + "consumed_by_rules": ["pants.backend.scala.goals.check.scalac_check"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.check", + "name": "ScalacCheckRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.repl.ScalaRepl": { + "consumed_by_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.repl", + "name": "ScalaRepl", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.scala.goals.tailor.PutativeScalaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "PutativeScalaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.goals.tailor", + "name": "PutativeScalaTargetsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.GatherScalafmtConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": "GatherScalafmtConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "GatherScalafmtConfigFilesRequest", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtConfigFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.scala.lint.scalafmt.rules"], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtRequest", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtToolLockfileSentinel", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.skip_field.SkipScalafmtField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.skip_field", + "name": "SkipScalafmtField", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.subsystem.ScalafmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.subsystem", + "name": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": ["construct_scope_scalafmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.resolve.lockfile.ValidateResolveHasScalaRuntimeRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": ["pants.jvm.goals.lockfile"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.lockfile", + "name": "ValidateResolveHasScalaRuntimeRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateJvmArtifactsForResolveRequest", + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala.ScalaSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala", + "name": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scala"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala_infer.ScalaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala_infer", + "name": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scala_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalac.Scalac": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalac", + "name": "Scalac", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scalac"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalatest.Scalatest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalatest", + "name": "Scalatest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scalatest"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'ScalaSourceField')", + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaSettingsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "ScalatestTestFieldSet(address: 'Address', sources: 'ScalatestTestSourceField', timeout: 'ScalatestTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'ScalatestTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ] + }, + "pants.backend.scala.test.scalatest.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.scala.test.scalatest", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetup", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.test.scalatest.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "TestSetupRequest(field_set: 'ScalatestTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetupRequest", + "provider": "pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionRequest": { + "consumed_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaArtifactsForVersionRequest(scala_version: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionRequest", + "provider": "pants.backend.scala.util_rules.versions", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.util_rules.versions"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaArtifactsForVersionResult(compiler_coordinate: 'Coordinate', library_coordinate: 'Coordinate', reflect_coordinate: 'Coordinate | None', compiler_main: 'str', repl_main: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.shell.dependency_inference.AllShellTargets": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "AllShellTargets", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.find_all_shell_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.InferShellDependencies": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "InferShellDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.ParseShellImportsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "ParseShellImportsRequest(digest: 'Digest', fp: 'str')", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParseShellImportsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ParsedShellImports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParsedShellImports", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ShellMapping": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "A mapping of Shell file names to their owning file address.", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ShellMapping", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.goals.tailor.PutativeShellTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": "PutativeShellTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.shell.goals.tailor", + "name": "PutativeShellTargetsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.ShellTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "ShellTestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.TestShellCommandFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "TestShellCommandFieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.rules.ShellcheckRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.rules", + "name": "ShellcheckRequest", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.skip_field.SkipShellcheckField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.skip_field", + "name": "SkipShellcheckField", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.subsystem.Shellcheck": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.subsystem", + "name": "Shellcheck", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shellcheck"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.rules.ShfmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.rules", + "name": "ShfmtRequest", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.skip_field.SkipShfmtField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.skip_field", + "name": "SkipShfmtField", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.subsystem.Shfmt": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell.lint.shfmt"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.subsystem", + "name": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": ["construct_scope_shfmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2FieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "Shunit2FieldSet(address: 'Address', sources: pants.backend.shell.target_types.Shunit2TestSourceField, timeout: pants.backend.shell.target_types.Shunit2TestTimeoutField, shell: pants.backend.shell.target_types.Shunit2ShellField, runtime_package_dependencies: pants.core.goals.test.RuntimePackageDependenciesField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2FieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2Runner": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2Runner", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2RunnerRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "Shunit2RunnerRequest(address: Address, test_file_content: pants.engine.fs.FileContent, shell_field: pants.backend.shell.target_types.Shunit2ShellField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2RunnerRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2TestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2TestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": ["pants.backend.shell"], + "documentation": "TestSetup(process: pants.engine.process.Process)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "TestSetupRequest(field_set: pants.backend.shell.shunit2_test_runner.Shunit2FieldSet)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.subsystems.shell_setup.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "EnvironmentAware", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_env_aware_scope_shell_setup"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_setup.ShellSetup": { + "consumed_by_rules": [ + "construct_env_aware_scope_shell_setup", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "ShellSetup", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shell_setup"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_test_subsys.ShellTestSubsystem": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_test_subsys", + "name": "ShellTestSubsystem", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shell_test"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shunit2.Shunit2": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shunit2", + "name": "Shunit2", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shunit2"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.target_types.ShellGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.target_types", + "name": "ShellGeneratorSettingsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.GenerateFilesFromShellCommandRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "GenerateFilesFromShellCommandRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.RunShellCommand": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "RunShellCommand", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.ShellCommandProcessFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "ShellCommandProcessFromTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "ShellCommandProcessFromTargetRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.backend.terraform.dependency_inference.InferTerraformModuleDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "InferTerraformModuleDependenciesRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.ParseTerraformModuleSources": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "ParseTerraformModuleSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParseTerraformModuleSources", + "provider": "pants.backend.terraform.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ] + }, + "pants.backend.terraform.dependency_inference.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParserSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2Parser": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_terraform_hcl2_parser"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformCheckRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformCheckRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformValidateSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_terraform_validate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.tailor.PutativeTerraformTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "PutativeTerraformTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.goals.tailor", + "name": "PutativeTerraformTargetsRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TfFmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_terraform_fmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TffmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TffmtRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.tool.TerraformProcess": { + "consumed_by_rules": [ + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "A request to invoke Terraform.", + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformProcess", + "provider": "pants.backend.terraform.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformTool": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformTool", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_download_terraform"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.preamble.rules.PreambleRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.rules", + "name": "PreambleRequest", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.preamble.subsystem.PreambleSubsystem": { + "consumed_by_rules": [ + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.tools.preamble"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.subsystem", + "name": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": ["construct_scope_preamble"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.workunit_logger.rules.WorkunitLogger": { + "consumed_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.tools.workunit_logger"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.workunit_logger.rules", + "name": "WorkunitLogger", + "provider": "pants.backend.experimental.tools.workunit_logger", + "returned_by_rules": ["construct_scope_workunit_logger"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.workunit_logger.rules.WorkunitLoggerCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback" + ], + "dependencies": ["pants.engine.streaming_workunit_handler"], + "dependents": ["pants.backend.experimental.tools.workunit_logger"], + "documentation": "A unique request type that is installed to trigger construction of our WorkunitsCallback.", + "is_union": false, + "module": "pants.backend.tools.workunit_logger.rules", + "name": "WorkunitLoggerCallbackFactoryRequest", + "provider": "pants.backend.experimental.tools.workunit_logger", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.tools.yamllint.rules"], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": "YamllintConfigFiles(snapshot: 'Snapshot', source_dir_to_config_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.tools.yamllint.rules.partition_inputs"] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": "YamllintConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFilesRequest", + "provider": "pants.backend.tools.yamllint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.tools.yamllint.rules.partition_inputs"] + }, + "pants.backend.tools.yamllint.rules.YamllintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintRequest", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.subsystem.Yamllint": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.backend.tools.yamllint.subsystem.yamllint_export" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.subsystem", + "name": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": ["construct_scope_yamllint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.subsystem.YamllintExportSentinel": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.subsystem.yamllint_export" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.subsystem", + "name": "YamllintExportSentinel", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportPythonToolSentinel", + "used_in_rules": [] + }, + "pants.base.specs.RawSpecs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Convert the specs into matching targets and files.\n\nUnlike `Specs`, this does not consider include vs. ignore specs. It simply matches all relevant\ntargets/files.\n\nWhen you want to operate on what the user specified, use `Specs`. Otherwise, you can use\neither `Specs` or `RawSpecs` in rules, e.g. to find what targets exist in a directory.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.base.specs.RawSpecsWithoutFileOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The subset of `RawSpecs` that do not use the `Owners` rule to match targets.\n\nThis exists to work around a cycle in the rule graph. Usually, consumers should use the simpler\n`Get(Addresses, RawSpecs)`, which will result in this rule being used.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecsWithoutFileOwners", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.resolve_all_generator_target_requests" + ] + }, + "pants.base.specs.Specs": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "The specs provided by the user for what to run on.\n\nThe `ignores` will filter out all relevant `includes`.\n\nIf your rule does not need to consider includes vs. ignores, e.g. to find all targets in a\ndirectory, you can directly use `RawSpecs`.", + "is_union": false, + "module": "pants.base.specs", + "name": "Specs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.bsp.context.BSPContext": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependencies": ["pants.engine.internals.session"], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "is_union": false, + "module": "pants.bsp.context", + "name": "BSPContext", + "provider": "pants.core", + "returned_by_rules": ["pants.bsp.rules.bsp_context"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.goal.BSPGoal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.bsp.goal", + "name": "BSPGoal", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_experimental_bsp"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.protocol.BSPHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "Union type for rules to register handlers for BSP methods.", + "is_union": true, + "module": "pants.bsp.protocol", + "name": "BSPHandlerMapping", + "provider": "pants.bsp.protocol", + "returned_by_rules": [], + "union_members": [ + "BuildTargetSourcesHandlerMapping", + "CompileRequestHandlerMapping", + "DependencyModulesHandlerMapping", + "DependencySourcesHandlerMapping", + "InitializeBuildHandlerMapping", + "JavacOptionsHandlerMapping", + "ResourcesRequestHandlerMapping", + "ScalaMainClassesHandlerMapping", + "ScalaTestClassesHandlerMapping", + "ScalacOptionsHandlerMapping", + "WorkspaceBuildTargetsHandlerMapping" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.base.BuildTargetIdentifier": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A unique identifier for a target, can use any URI-compatible encoding as long as it is unique\nwithin the workspace.\n\nClients should not infer metadata out of the URI structure such as the path or query parameters,\nuse BuildTarget instead.", + "is_union": false, + "module": "pants.bsp.spec.base", + "name": "BuildTargetIdentifier", + "provider": "pants.bsp.spec.base", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.spec.compile.CompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.compile", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "is_union": false, + "module": "pants.bsp.spec.compile", + "name": "CompileResult", + "provider": "pants.core", + "returned_by_rules": ["pants.bsp.util_rules.compile.bsp_compile_request"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.lifecycle.InitializeBuildResult": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.spec.lifecycle", "pants.engine.unions"], + "dependents": [], + "documentation": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "is_union": false, + "module": "pants.bsp.spec.lifecycle", + "name": "InitializeBuildResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.lifecycle.bsp_build_initialize" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.resources.ResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.resources", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "ResourcesResult(items: 'tuple[ResourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.resources", + "name": "ResourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencyModulesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencySourcesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.spec.targets"], + "dependents": [], + "documentation": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencySourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.SourcesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.spec.targets"], + "dependents": [], + "documentation": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "SourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.WorkspaceBuildTargetsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "WorkspaceBuildTargetsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.compile.CompileOneBSPTargetRequest": { + "consumed_by_rules": ["pants.bsp.util_rules.compile.compile_bsp_target"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "CompileOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal', origin_id: 'str | None' = None, arguments: 'tuple[str, ...] | None' = ())", + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.compile.bsp_compile_request"] + }, + "pants.bsp.util_rules.compile.CompileRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.BSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Union exposed by language backends to inform BSP core rules of capabilities to advertise to\nclients.", + "is_union": true, + "module": "pants.bsp.util_rules.lifecycle", + "name": "BSPLanguageSupport", + "provider": "pants.bsp.util_rules.lifecycle", + "returned_by_rules": [], + "union_members": ["JavaBSPLanguageSupport", "ScalaBSPLanguageSupport"], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.InitializeBuildHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.lifecycle", + "name": "InitializeBuildHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.resources.ResourcesForOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ResourcesForOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesForOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.resources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.resources.bsp_resources_request"] + }, + "pants.bsp.util_rules.resources.ResourcesRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetInternal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "dependencies": ["pants.bsp.spec.base"], + "dependents": ["pants.core"], + "documentation": "BSPBuildTargetInternal(name: 'str', specs: 'RawSpecs', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetInternal", + "provider": "pants.bsp.util_rules.targets, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetSourcesInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.bsp.util_rules.targets" + ], + "dependents": ["pants.core"], + "documentation": "Source files and roots for a BSP build target.\n\nIt is a separate class so that it is computed lazily only when called for by an RPC call.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetSourcesInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargets": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": ["pants.bsp.util_rules.targets", "pants.engine.fs"], + "dependents": ["pants.core"], + "documentation": "BSPBuildTargets(targets_mapping: 'FrozenDict[str, BSPBuildTargetInternal]')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide metadata for BSP build targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPBuildTargetsMetadataRequest", + "ScalaBSPBuildTargetsMetadataRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.core" + ], + "dependents": ["pants.core"], + "documentation": "Response type for a BSPBuildTargetsMetadataRequest.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to compile targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": ["JavaBSPCompileRequest", "ScalaBSPCompileRequest"], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.compile.compile_bsp_target"] + }, + "pants.bsp.util_rules.targets.BSPCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.bsp.util_rules.compile", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.resolve.key" + ], + "dependents": ["pants.core"], + "documentation": "Result of compilation of a target capable of target compilation.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "Hook to allow language backends to provide dependency modules.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": ["ScalaBSPDependencyModulesRequest"], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": ["pants.core"], + "documentation": "BSPDependencyModulesResult(modules: 'tuple[DependencyModule, ...]', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide resources for targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": ["JavaBSPResourcesRequest", "ScalaBSPResourcesRequest"], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.resources.resources_bsp_target"] + }, + "pants.bsp.util_rules.targets.BSPResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.bsp.util_rules.resources", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "Resources for a target.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BuildTargetSourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BuildTargetSourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencyModulesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencyModulesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencySourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencySourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GenerateOneBSPBuildTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.base.build_root", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "GenerateOneBSPBuildTargetResult(build_target: 'BuildTarget', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "MaterializeBuildTargetSourcesRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_build_target_sources"] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.base.build_root", "pants.bsp.util_rules.targets"], + "dependents": ["pants.core"], + "documentation": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_build_target_sources"] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ResolveOneDependencyModuleRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_dependency_modules"] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_dependency_modules"] + }, + "pants.bsp.util_rules.targets.WorkspaceBuildTargetsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "WorkspaceBuildTargetsHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets._ParseOneBSPMappingRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "_ParseOneBSPMappingRequest(name: 'str', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "_ParseOneBSPMappingRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ] + }, + "pants.build_graph.address.BuildFileAddressRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to find the BUILD file path for an address.", + "is_union": false, + "module": "pants.build_graph.address", + "name": "BuildFileAddressRequest", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.filedeps.file_deps", + "pants.engine.internals.graph.find_owners" + ] + }, + "pants.core.goals.check.Check": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "Check", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.check.check"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.check.CheckRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "A union for targets that should be checked.\n\nSubclass and install a member of this type to provide a checker.", + "is_union": true, + "module": "pants.core.goals.check", + "name": "CheckRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCheckRequest", + "JavacCheckRequest", + "KotlincCheckRequest", + "MyPyRequest", + "ScalacCheckRequest", + "TerraformCheckRequest" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.check.check"] + }, + "pants.core.goals.check.CheckResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.core.goals.check.CheckResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.resolve.key" + ], + "dependents": ["pants.core"], + "documentation": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResults", + "provider": "pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.terraform.goals.check.terraform_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.check.check"] + }, + "pants.core.goals.check.CheckSubsystem": { + "consumed_by_rules": ["pants.core.goals.check.check"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_check"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.Deploy": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": "Deploy(exit_code: 'int')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "Deploy", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.deploy.run_deploy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.DeployFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "The FieldSet type for the `deploy` goal.\n\nUnion members may list any fields required to fulfill the instantiation of the `DeployProcess`\nresult of the deploy rule.", + "is_union": true, + "module": "pants.core.goals.deploy", + "name": "DeployFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["DeployHelmDeploymentFieldSet"], + "union_type": null, + "used_in_rules": ["pants.core.goals.deploy.run_deploy"] + }, + "pants.core.goals.deploy.DeployProcess": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "A process that when executed will have the side effect of deploying a target.\n\nTo provide with the ability to deploy a given target, create a custom `DeployFieldSet` for\nthat given target and implement a rule that returns `DeployProcess` for that custom field set:\n\nExample:\n\n @dataclass(frozen=True)\n class MyDeploymentFieldSet(DeployFieldSet):\n pass\n\n @rule\n async def my_deployment_process(field_set: MyDeploymentFieldSet) -> DeployProcess:\n # Create the underlying process that executes the deployment\n process = Process(...)\n return DeployProcess(\n name=\"my_deployment\",\n process=InteractiveProcess.from_process(process)\n )\n\n def rules():\n return [\n *collect_rules(),\n UnionRule(DeployFieldSet, MyDeploymentFieldSet)\n ]\n\nUse the `publish_dependencies` field to provide with a list of targets that produce packages\nwhich need to be externally published before the deployment process is executed.", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeployProcess", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.deploy.run_deploy"] + }, + "pants.core.goals.deploy.DeploySubsystem": { + "consumed_by_rules": ["pants.core.goals.deploy.run_deploy"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeploySubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_experimental_deploy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy._PublishProcessesForTargetRequest": { + "consumed_by_rules": [ + "pants.core.goals.deploy.publish_process_for_target" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "_PublishProcessesForTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "_PublishProcessesForTargetRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.deploy.run_deploy"] + }, + "pants.core.goals.export.Export": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.base.build_root", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "Export", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.export.export"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.export.ExportRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A union for exportable data provided by a backend.\n\nSubclass and install a member of this type to export data.", + "is_union": true, + "module": "pants.core.goals.export", + "name": "ExportRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["ExportVenvsRequest"], + "union_type": null, + "used_in_rules": ["pants.core.goals.export.export"] + }, + "pants.core.goals.export.ExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = (), resolve: 'str | None' = None)", + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_tool", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenv_for_targets", + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.core.goals.export.ExportResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.export.export"] + }, + "pants.core.goals.export.ExportSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.export.export" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_export"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.AbstractFixRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fix", + "name": "AbstractFixRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "PreambleRequest", + "PyUpgradeRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.Batch": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.build_files.fmt.buildifier"], + "documentation": "Batch(tool_name: 'str', elements: 'tuple[PartitionElementT, ...]', partition_metadata: 'PartitionMetadataT', snapshot: 'Snapshot')", + "is_union": true, + "module": "pants.core.goals.fix", + "name": "Batch", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.fix.Fix": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "Fix", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.fix.fix"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.FixResult": { + "consumed_by_rules": [ + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": ["pants.core"], + "documentation": "FixResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', tool_name: 'str')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixResult", + "provider": "pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.experimental.go, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.python.lint.autoflake, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.isort, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble, pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.fix.fix_batch"] + }, + "pants.core.goals.fix.FixSubsystem": { + "consumed_by_rules": ["pants.core.goals.fix.fix"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_fix"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix._FixBatchRequest": { + "consumed_by_rules": ["pants.core.goals.fix.fix_batch"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request to serially fix all the elements in the given batch.", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.fix.fix", "pants.core.goals.fmt.fmt"] + }, + "pants.core.goals.fix._FixBatchResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "dependents": ["pants.core"], + "documentation": "_FixBatchResult(results: 'tuple[FixResult, ...]')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchResult", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.fix.fix_batch"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.fix.fix", "pants.core.goals.fmt.fmt"] + }, + "pants.core.goals.fmt.AbstractFmtRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fmt", + "name": "AbstractFmtRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "PreambleRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.Fmt": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "Fmt", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.fmt.fmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtSubsystem": { + "consumed_by_rules": ["pants.core.goals.fmt.fmt"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_fmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "A union base for generating ecosystem-specific lockfiles.\n\nEach language ecosystem should set up a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile` and `GenerateJVMLockfile`, and register a union rule. They should\nalso set up a simple rule that goes from that class -> `WrappedGenerateLockfile`.\n\nSubclasses will usually want to add additional properties, such as what requirements to\ninstall and Python interpreter constraints.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["GenerateJvmLockfile", "GeneratePythonLockfile"], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.typecheck.mypy", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": ["pants.core"], + "documentation": "The result of generating a lockfile for a particular resolve.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_generate_lockfiles"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateToolLockfileSentinel": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "Tools use this as an entry point to say how to generate their tool lockfile.\n\nEach language ecosystem should set up a union member of `GenerateLockfile`, like\n`GeneratePythonLockfile`, as explained in that class's docstring.\n\nEach language ecosystem should also subclass `GenerateToolLockfileSentinel`, e.g.\n`GeneratePythonToolLockfileSentinel`. The subclass does not need to do anything - it is only used to know which language ecosystems tools correspond to.\n\nThen, each tool should subclass their language ecosystem's subclass of `GenerateToolLockfileSentinel` and set up a rule that goes from the\nsubclass -> the language's lockfile request, e.g. BlackLockfileSentinel ->\nGeneratePythonLockfile. Register `UnionRule(GenerateToolLockfileSentinel, MySubclass)`.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateToolLockfileSentinel", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaLockfileSentinel", + "AutoflakeLockfileSentinel", + "BanditLockfileSentinel", + "BlackLockfileSentinel", + "CoverageSubsystemLockfileSentinel", + "DebugPyLockfileSentinel", + "DocformatterLockfileSentinel", + "DockerfileParserLockfileSentinel", + "Flake8LockfileSentinel", + "GoogleJavaFormatToolLockfileSentinel", + "GrpcJavaToolLockfileSentinel", + "HelmKubeParserSubsystemLockfileSentinel", + "HelmPostRendererSubsystemLockfileSentinel", + "IPythonLockfileSentinel", + "IsortLockfileSentinel", + "JarJarGeneratorLockfileSentinel", + "JarToolGenerateLockfileSentinel", + "JavaParserToolLockfileSentinel", + "JunitToolLockfileSentinel", + "KotlinParserToolLockfileSentinel", + "KtlintToolLockfileSentinel", + "LambdexLockfileSentinel", + "MyPyExtraTypeStubsLockfileSentinel", + "MyPyLockfileSentinel", + "PyOxidizerLockfileSentinel", + "PyUpgradeLockfileSentinel", + "PydocstyleLockfileSentinel", + "PylintLockfileSentinel", + "PytestLockfileSentinel", + "PythonProtobufMypyPluginLockfileSentinel", + "RuffLockfileSentinel", + "ScalaParserToolLockfileSentinel", + "ScalafmtToolLockfileSentinel", + "ScalapbcToolLockfileSentinel", + "ScalatestToolLockfileSentinel", + "SetuptoolsLockfileSentinel", + "SetuptoolsSCMLockfileSentinel", + "StripJarToolLockfileSentinel", + "TerraformHcl2ParserLockfileSentinel", + "TwineSubsystemLockfileSentinel", + "YamllintLockfileSentinel", + "YapfLockfileSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNamesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "A hook for a language ecosystem to declare which resolves it has defined.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> KnownUserResolveNames, usually by simply reading the\n`resolves` option from the relevant subsystem.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "KnownJVMUserResolveNamesRequest", + "KnownPythonUserResolveNamesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.RequestedUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "The user resolves requested for a particular language ecosystem.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> UserGenerateLockfiles.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "RequestedUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RequestedJVMUserResolveNames", + "RequestedPythonUserResolveNames" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.UserGenerateLockfiles": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.core"], + "documentation": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.WrappedGenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.typecheck.mypy" + ], + "dependents": ["pants.core"], + "documentation": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.lint.AbstractLintRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": "Base class for plugin types wanting to be run as part of `lint`.\n\nPlugins should define a new type which subclasses either `LintTargetsRequest` (to lint targets)\nor `LintFilesRequest` (to lint arbitrary files), and set the appropriate class variables.\nE.g.\n class DryCleaningRequest(LintTargetsRequest):\n name = DryCleaningSubsystem.options_scope\n field_set_type = DryCleaningFieldSet\n\nThen, define 2 `@rule`s:\n 1. A rule which takes an instance of your request type's `PartitionRequest` class property,\n and returns a `Partitions` instance.\n E.g.\n @rule\n async def partition(\n request: DryCleaningRequest.PartitionRequest[DryCleaningFieldSet]\n # or `request: DryCleaningRequest.PartitionRequest` if file linter\n subsystem: DryCleaningSubsystem,\n ) -> Partitions[DryCleaningFieldSet, Any]:\n if subsystem.skip:\n return Partitions()\n\n # One possible implementation\n return Partitions.single_partition(request.field_sets)\n\n 2. A rule which takes an instance of your request type's `Batch` class property, and\n returns a `LintResult instance.\n E.g.\n @rule\n async def dry_clean(\n request: DryCleaningRequest.Batch,\n ) -> LintResult:\n ...\n\nLastly, register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules()\n ]", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "AbstractLintRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BanditRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BufLintRequest", + "BuildifierRequest", + "DocformatterRequest", + "Flake8Request", + "GofmtRequest", + "GoogleJavaFormatRequest", + "HadolintRequest", + "HelmLintRequest", + "IsortRequest", + "KtlintRequest", + "PreambleRequest", + "PyUpgradeRequest", + "PydocstyleRequest", + "PylintRequest", + "RegexLintRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "RuffLintRequest", + "ScalafmtRequest", + "ShellcheckRequest", + "ShfmtRequest", + "SpectralRequest", + "TffmtRequest", + "YamllintRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.Batch": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell.lint.shellcheck"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "Batch", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.lint.Lint": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "Lint", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.lint.lint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', linter_name: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), _render_message: 'bool' = True)", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.helm, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.shell.lint.shellcheck, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.lint.lint"] + }, + "pants.core.goals.lint.LintSubsystem": { + "consumed_by_rules": ["pants.core.goals.lint.lint"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_lint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.PartitionRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.build_files.fmt.buildifier"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "PartitionRequest", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.package.AllPackageableTargets": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "AllPackageableTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.find_all_packageable_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.BuiltPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "is_union": false, + "module": "pants.core.goals.package", + "name": "BuiltPackage", + "provider": "pants.backend.awslambda.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.google_cloud_function.python, pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.core.goals.package.environment_aware_package", + "pants.core.target_types.package_archive_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_awslambda", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.core.goals.package.EnvironmentAwarePackageRequest": { + "consumed_by_rules": [ + "pants.core.goals.package.environment_aware_package" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request class to request a `BuiltPackage` in an environment-aware fashion.", + "is_union": false, + "module": "pants.core.goals.package", + "name": "EnvironmentAwarePackageRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.package.Package": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "Package", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.package.package_asset"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.PackageFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "documentation": "The fields necessary to build an asset from a target.", + "is_union": true, + "module": "pants.core.goals.package", + "name": "PackageFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ArchiveFieldSet", + "DeployJarFieldSet", + "DockerPackageFieldSet", + "GoBinaryFieldSet", + "HelmPackageFieldSet", + "PackageWarFileFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonAwsLambdaFieldSet", + "PythonDistributionFieldSet", + "PythonGoogleCloudFunctionFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package" + ] + }, + "pants.core.goals.package.PackageSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "PackageSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_package"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.Publish": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "Publish", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.publish.run_publish"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "FieldSet for PublishRequest.\n\nUnion members may list any fields required to fulfill the instantiation of the\n`PublishProcesses` result of the publish rule.", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "HelmPublishFieldSet", + "PublishDockerImageFieldSet", + "PublishPythonPackageFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishProcesses": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcesses", + "provider": "pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.core", + "returned_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.python.goals.publish.twine_upload", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.package_for_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishProcessesRequest": { + "consumed_by_rules": ["pants.core.goals.publish.package_for_publish"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Internal request taking all field sets for a target and turning it into a `PublishProcesses`\ncollection (via registered publish plugins).", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcessesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "Implement a union member subclass of this union class along with a PublishFieldSet subclass\nthat appoints that member subclass in order to receive publish requests for targets compatible\nwith the field set.\n\nThe `packages` hold all artifacts produced for a given target to be published.\n\nExample:\n\n PublishToMyRepoRequest(PublishRequest):\n pass\n\n PublishToMyRepoFieldSet(PublishFieldSet):\n publish_request_type = PublishToMyRepoRequest\n\n # Standard FieldSet semantics from here on:\n required_fields = (MyRepositories,)\n ...", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PublishDockerImageRequest", + "PublishHelmChartRequest", + "PublishPythonPackageRequest" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.publish.package_for_publish"] + }, + "pants.core.goals.publish.PublishSubsystem": { + "consumed_by_rules": ["pants.core.goals.publish.run_publish"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_publish"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.Repl": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "Repl", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.repl.run_repl"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.ReplImplementation": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "A REPL implementation for a specific language or runtime.\n\nProxies from the top-level `repl` goal to an actual implementation.", + "is_union": true, + "module": "pants.core.goals.repl", + "name": "ReplImplementation", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["IPythonRepl", "PythonRepl", "ScalaRepl"], + "union_type": null, + "used_in_rules": ["pants.core.goals.repl.run_repl"] + }, + "pants.core.goals.repl.ReplRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.core"], + "documentation": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplRequest", + "provider": "pants.backend.experimental.scala, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.repl.run_repl"] + }, + "pants.core.goals.repl.ReplSubsystem": { + "consumed_by_rules": ["pants.core.goals.repl.run_repl"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_repl"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.Run": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "Run", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.run.run"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.RunDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": ["pants.core"], + "documentation": "Like RunRequest, but launches the process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunDebugAdapterRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.run.run"] + }, + "pants.core.goals.run.RunFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary from a target to run a program/script.", + "is_union": true, + "module": "pants.core.goals.run", + "name": "RunFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployJarFieldSet", + "DockerRunFieldSet", + "GoBinaryFieldSet", + "JavaFieldSet", + "JvmArtifactFieldSet", + "KotlinFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonRequirementFieldSet", + "PythonSourceFieldSet", + "RunShellCommand", + "ScalaFieldSet", + "SystemBinaryFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run.run", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunInSandboxRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "A run request that launches the process in the sandbox for use as part of a build rule.\n\nThe arguments and environment should only use values relative to the build root (or prefixed\nwith `{chroot}`), or refer to binaries that were fetched with `BinaryPathRequest`.\n\nPresently, implementors can opt to use the existing as not guaranteeing hermeticity, which will\ninternally mark the rule as uncacheable. In such a case, non-safe APIs can be used, however,\nthis behavior can result in poorer performance, and only exists as a stop-gap while\nimplementors work to make sure their `RunRequest`-generating rules can be used in a hermetic\ncontext, or writing new custom rules. (See the Plugin Upgrade Guide for details).", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunInSandboxRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.package.deploy_jar", + "pants.jvm.target_types" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.core" + ], + "documentation": "RunRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run.run", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ] + }, + "pants.core.goals.run.RunSubsystem": { + "consumed_by_rules": ["pants.core.goals.run.run"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_run"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.AllOwnedSources": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "All files in the project already owned by targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "AllOwnedSources", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.determine_all_owned_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.DisjointSourcePutativeTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": ["pants.core"], + "documentation": "Putative target whose sources don't overlap with those of any existing targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "DisjointSourcePutativeTarget", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.EditBuildFilesRequest": { + "consumed_by_rules": ["pants.core.goals.tailor.edit_build_files"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "EditBuildFilesRequest(putative_targets: 'PutativeTargets')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditBuildFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.EditedBuildFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": ["pants.core"], + "documentation": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditedBuildFiles", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.tailor.edit_build_files"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.PutativeTarget": { + "consumed_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A potential target to add, detected by various heuristics.\n\nThis class uses the term \"target\" in the loose sense. It can also represent an invocation of a\ntarget-generating macro.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTarget", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.PutativeTargets": { + "consumed_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": ["builtins", "pants.engine.fs", "pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.PutativeTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "PutativeTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": true, + "module": "pants.core.goals.tailor", + "name": "PutativeTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PutativeDockerTargetsRequest", + "PutativeGoTargetsRequest", + "PutativeHelmChartTargetsRequest", + "PutativeJavaTargetsRequest", + "PutativeKotlinTargetsRequest", + "PutativeOpenApiTargetsRequest", + "PutativeProtobufTargetsRequest", + "PutativePythonTargetsRequest", + "PutativeScalaTargetsRequest", + "PutativeShellTargetsRequest", + "PutativeTerraformTargetsRequest", + "PutativeThriftTargetsRequest" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.TailorGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorGoal", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.tailor.tailor"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.TailorSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.tailor" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_tailor"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.UniquelyNamedPutativeTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependents": ["pants.core"], + "documentation": "Putative targets that have no name conflicts with existing targets (or each other).", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "UniquelyNamedPutativeTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.test.Batch": { + "consumed_by_rules": [ + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "Batch", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.test.BuildPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "BuildPackageDependenciesRequest(field: 'RuntimePackageDependenciesField')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuildPackageDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.BuiltPackageDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependents": ["pants.backend.python", "pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuiltPackageDependencies", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.CoverageDataCollection": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go", "pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "CoverageDataCollection", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCoverageDataCollection", + "PytestCoverageDataCollection" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.CoverageReports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": ["pants.core"], + "documentation": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "CoverageReports", + "provider": "pants.backend.experimental.go, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.PartitionRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "PartitionRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.test.Test": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.console", + "pants.engine.desktop", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.session", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "Test", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.test.run_tests"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.core"], + "documentation": "Like TestDebugRequest, but launches the test process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.TestDebugRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "TestDebugRequest(process: 'InteractiveProcess')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.TestExtraEnv": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "TestExtraEnv(env: 'EnvironmentVars')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestExtraEnv", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.test.get_filtered_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary to run tests on a target.", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestFieldSet", + "HelmUnitTestFieldSet", + "JunitTestFieldSet", + "PythonTestFieldSet", + "ScalatestTestFieldSet", + "Shunit2FieldSet", + "TestShellCommandFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "Base class for plugin types wanting to be run as part of `test`.\n\nPlugins should define a new type which subclasses this type, and set the\nappropriate class variables.\nE.g.\n class DryCleaningRequest(TestRequest):\n tool_subsystem = DryCleaningSubsystem\n field_set_type = DryCleaningFieldSet\n\nThen register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules(),\n ]", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestRequest", + "HelmUnitTestRequest", + "JunitTestRequest", + "PyTestRequest", + "ScalatestTestRequest", + "ShellTestRequest", + "Shunit2TestRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "TestResult(exit_code: 'int | None', stdout: 'str', stdout_digest: 'FileDigest', stderr: 'str', stderr_digest: 'FileDigest', addresses: 'tuple[Address, ...]', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', partition_description: 'str | None' = None, coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None, log_extra_output: 'bool' = False)", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestResult", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.jvm.test.junit.run_junit_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.TestSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_test", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.test.run_tests", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_test"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithBlackRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithBlackRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithYapfRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithYapfRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedFieldsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedFieldsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedTargetsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RewrittenBuildFile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": ["pants.core"], + "documentation": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.RewrittenBuildFileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "RewrittenBuildFileRequest(path: 'str', lines: 'tuple[str, ...]', colors_enabled: 'bool')", + "is_union": true, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFileRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "FormatWithBlackRequest", + "FormatWithYapfRequest", + "RenameDeprecatedFieldsRequest", + "RenameDeprecatedTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_update_build_files"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.debug_adapter.DebugAdapterSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.debug_adapter", + "name": "DebugAdapterSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_debug_adapter"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_python_bootstrap"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrap": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.system_binaries.find_python" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "PythonBootstrap(interpreter_names: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrap", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrapSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_python_bootstrap", + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrapSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python_bootstrap"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap._ExpandInterpreterSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "_ExpandInterpreterSearchPathsRequest(interpreter_search_paths: 'Collection[str]', env_tgt: 'EnvironmentTarget')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_ExpandInterpreterSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.subsystems.python_bootstrap._SearchPaths": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": "_SearchPaths(paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_SearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.target_types.AllAssetTargets": { + "consumed_by_rules": [ + "pants.core.target_types.find_all_assets_request", + "pants.core.target_types.map_assets_by_path" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.core"], + "documentation": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.find_all_assets", + "pants.core.target_types.find_all_assets_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.target_types.AllAssetTargetsByPath": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsByPath", + "provider": "pants.core", + "returned_by_rules": ["pants.core.target_types.map_assets_by_path"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ] + }, + "pants.core.target_types.ArchiveFieldSet": { + "consumed_by_rules": ["pants.core.target_types.package_archive_target"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ArchiveFieldSet(address: 'Address', packages: 'ArchivePackagesField', files: 'ArchiveFilesField', format_field: 'ArchiveFormatField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.core.target_types", + "name": "ArchiveFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateFileSourceRequest": { + "consumed_by_rules": ["pants.core.target_types.hydrate_file_source"], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateFileSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateResourceSourceRequest": { + "consumed_by_rules": ["pants.core.target_types.hydrate_resource_source"], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateResourceSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.RelocateFilesViaCodegenRequest": { + "consumed_by_rules": ["pants.core.target_types.relocate_files"], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "RelocateFilesViaCodegenRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries.GunzipBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GunzipBinary(python_binary: 'PythonBuildStandaloneBinary')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "GunzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.util_rules.archive.maybe_extract_archive"] + }, + "pants.core.util_rules.adhoc_binaries.PythonBuildStandaloneBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "A Python interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nThis interpreter is provided by Python Build Standalone https://gregoryszorc.com/docs/python-build-standalone/main/,\nwhich has a few caveats. Namely it doesn't play nicely with third-party sdists. Meaning Pants'\nscripts being run by Python Build Standalone should avoid third-party sdists.", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries._DownloadPythonBuildStandaloneBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_DownloadPythonBuildStandaloneBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_binaries._PythonBuildStandaloneBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.env_vars", + "pants.engine.platform" + ], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "AdhocProcessRequest(description: 'str', address: 'Address', working_directory: 'str', root_output_directory: 'str', argv: 'tuple[str, ...]', timeout: 'int | None', input_digest: 'Digest', immutable_input_digests: 'FrozenDict[str, Digest] | None', append_only_caches: 'FrozenDict[str, str] | None', output_files: 'tuple[str, ...]', output_directories: 'tuple[str, ...]', fetch_env_vars: 'tuple[str, ...]', supplied_env_var_values: 'FrozenDict[str, str] | None', log_on_process_errors: 'FrozenDict[int, str] | None', log_output: 'bool', capture_stdout_file: 'str | None', capture_stderr_file: 'str | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "AdhocProcessResult(process_result: 'ProcessResult', adjusted_digest: 'Digest')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessResult", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.core.util_rules.adhoc_process_support.ExtraSandboxContents": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "ExtraSandboxContents(digest: 'Digest', path: 'str | None', immutable_input_digests: 'Mapping[str, Digest]', append_only_caches: 'Mapping[str, str]', extra_env: 'Mapping[str, str]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ExtraSandboxContents", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.MergeExtraSandboxContents": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "MergeExtraSandboxContents(additions: 'tuple[ExtraSandboxContents, ...]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "MergeExtraSandboxContents", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolveExecutionDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "ResolveExecutionDependenciesRequest(address: 'Address', execution_dependencies: 'tuple[str, ...] | None', runnable_dependencies: 'tuple[str, ...] | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolveExecutionDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolvedExecutionDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "ResolvedExecutionDependencies(digest: 'Digest', runnable_dependencies: 'RunnableDependencies | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.archive.CreateArchive": { + "consumed_by_rules": ["pants.core.util_rules.archive.create_archive"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A request to create an archive.\n\nAll files in the input snapshot will be included in the resulting archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "CreateArchive", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.target_types.package_archive_target"] + }, + "pants.core.util_rules.archive.ExtractedArchive": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": ["pants.core"], + "documentation": "The result of extracting an archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "ExtractedArchive", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.core.util_rules.archive.MaybeExtractArchiveRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": ["pants.core"], + "documentation": "A request to extract a single archive file (otherwise returns the input digest).\n\n:param digest: The digest of the archive to maybe extract. If the archive contains a single file\n which matches a known suffix, the `ExtractedArchive` will contain the extracted digest.\n Otherwise the `ExtractedArchive` will contain this digest.\n:param use_suffix: If provided, extracts the single file archive as if it had this suffix.\n Useful in situations where the file is archived then renamed.\n (E.g. A Python `.whl` is a renamed `.zip`, so the client should provide `\".zip\"`)", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "MaybeExtractArchiveRequest", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.asdf.AsdfToolPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "AsdfToolPathsRequest(env_tgt: 'EnvironmentTarget', tool_name: 'str', tool_description: 'str', resolve_standard: 'bool', resolve_local: 'bool', paths_option_name: 'str', bin_relpath: 'str' = 'bin')", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.asdf.AsdfToolPathsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.base.build_root", "pants.engine.env_vars"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": "AsdfToolPathsResult(tool_name: 'str', standard_tool_paths: 'tuple[str, ...]' = (), local_tool_paths: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.config_files.ConfigFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.engine.fs"], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Config files used by a tool run by Pants.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.config_files.ConfigFilesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Resolve the specified config files if given, else look for candidate config files if\ndiscovery is enabled.\n\nFiles in `check_existence` only need to exist, whereas files in `check_content` both must exist\nand contain the bytes snippet in the file.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.distdir.DistDir": { + "consumed_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.lint.lint", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests" + ], + "dependencies": ["pants.base.build_root"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "The directory to which we write distributable files.", + "is_union": false, + "module": "pants.core.util_rules.distdir", + "name": "DistDir", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.distdir.get_distdir"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.environments.EnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "EnvironmentNameRequest(raw_value: 'str', description_of_origin: 'str')", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "EnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run" + ] + }, + "pants.core.util_rules.environments.OptionField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "OptionField", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.core.util_rules.environments.SingleEnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Asserts that all of the given environment strings resolve to the same EnvironmentName.", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "SingleEnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.util_rules.external_tool.DownloadedExternalTool": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "DownloadedExternalTool", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.external_tool.ExternalToolRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ExternalToolRequest(download_file_request: 'DownloadFile', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "ExternalToolRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.partitions.Partitions": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.kotlin", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": ["pants.core"], + "documentation": "A collection of (, ) pairs.\n\nWhen implementing a plugin, one of your rules will return this type, taking in a\n`PartitionRequest` specific to your plugin.\n\nThe return likely will fit into one of:\n - Returning empty partitions: E.g. if your tool is being skipped.\n - Returning one partition. The partition may contain all of the inputs\n (as will likely be the case for target-based plugins) or a subset (which will likely be the\n case for targetless plugins).\n - Returning >1 partition. This might be the case if you can't run\n the tool on all the inputs at once. E.g. having to run a Python tool on XYZ with Py3,\n and files ABC with Py2.", + "is_union": false, + "module": "pants.core.util_rules.partitions", + "name": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations, pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python, pants.backend.python.lint.autoflake, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell, pants.backend.shell.lint.shellcheck, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble", + "returned_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.project_info.regex_lint.partition_inputs", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.util_rules.search_paths.ValidateSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.search_paths.validate_search_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ValidateSearchPathsRequest(env_tgt: 'EnvironmentTarget', search_paths: 'tuple[str, ...]', option_origin: 'str', environment_key: 'str', is_default: 'bool', local_only: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "ValidateSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.search_paths.ValidatedSearchPaths": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": "Search paths that are valid for the current target environment.", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "ValidatedSearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.search_paths.validate_search_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.search_paths.VersionManagerSearchPaths": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "VersionManagerSearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.search_paths.VersionManagerSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "VersionManagerSearchPathsRequest(env_tgt: 'EnvironmentTarget', root_dir: 'str | None', tool_path: 'str', option: 'str', version_files: 'tuple[str, ...]' = (), local_token: 'str | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "VersionManagerSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.source_files.SourceFiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "dependencies": ["builtins", "pants.backend.experimental.go"], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A merged snapshot of the `sources` fields of multiple targets.", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.source_files.determine_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.source_files.SourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.core.util_rules.source_files.determine_source_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala", "pants.core"], + "documentation": "SourceFilesRequest(sources_fields: Iterable[pants.engine.target.SourcesField], *, for_sources_types: Iterable[Type[pants.engine.target.SourcesField]] = (,), enable_codegen: bool = False)", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "StrippedFileName(value: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileName", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileNameRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "StrippedFileNameRequest(file_path: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFileNames": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFileNames", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironment": { + "consumed_by_rules": ["construct_env_aware_scope_subprocess_environment"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironment", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_subprocess_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironmentVars": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironmentVars", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.BashBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_bash", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The `bash` binary.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_bash", + "pants.core.util_rules.system_binaries.get_bash" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.cgo_binaries", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "BinaryPath(path: 'str', fingerprint: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPathRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request to find a binary of a given name.\n\nIf `check_file_entries` is `True` a BinaryPathRequest will consider any entries in the\n`search_path` that are file paths in addition to traditional directory paths.\n\nIf a `test` is specified all binaries that are found will be executed with the test args and\nonly those binaries whose test executions exit with return code 0 will be retained.\nAdditionally, if test execution includes stdout content, that will be used to fingerprint the\nbinary path so that upgrades and downgrades can be detected. A reasonable test for many programs\nmight be `BinaryPathTest(args=[\"--version\"])` since it will both ensure the program runs and\nalso produce stdout text that changes upon upgrade or downgrade of the binary at the discovered\npath.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPathRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPaths": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_python", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShims": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell" + ], + "documentation": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `immutable_input_digests`\nprovided to the `Process`, and `path_component` included in its `PATH` environment variable.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShims", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShimsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request to create shims for one or more system binaries.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShimsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.CatBinary": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.util_rules.system_binaries.find_cat_wrapper" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CatBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_cat_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ChmodBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ChmodBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_chmod_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.CpBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CpBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_cp"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.DiffBinary": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "dependencies": [], + "dependents": ["pants.backend.codegen.protobuf.lint.buf", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_diff_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.GitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.LnBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "LnBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_ln"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MaybeGitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "pants.vcs.git.get_git_worktree" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MaybeGitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git", + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MkdirBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MkdirBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mkdir_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MktempBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MktempBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mktemp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MvBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MvBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_mv"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.OpenBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "OpenBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_open"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.PythonBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A Python3 interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nPython is usable for `@rule` scripting independently of `pants.backend.python`, but currently\nthirdparty dependencies are not supported, because PEX lives in that backend.\n\nTODO: Consider extracting PEX out into the core in order to support thirdparty dependencies.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "PythonBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinary": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_readlink_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.TarBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "dependencies": ["pants.engine.platform"], + "dependents": ["pants.core"], + "documentation": "TarBinary(path: 'str', fingerprint: 'str', platform: 'Platform')", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_tar_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TouchBinary": { + "consumed_by_rules": ["pants.jvm.resources.assemble_resources_jar"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TouchBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_touch"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.UnzipBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.run.create_run_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_unzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.util_rules.archive.maybe_extract_archive"] + }, + "pants.core.util_rules.system_binaries.ZipBinary": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.core.util_rules.system_binaries.find_zip_wrapper", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.find_zip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.util_rules.archive.create_archive"] + }, + "pants.core.util_rules.wrap_source.GenerateWrapSourceSourcesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.wrap_source", + "name": "GenerateWrapSourceSourcesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.engine.addresses.Addresses": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.filter_targets.filter_targets", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.engine.internals.graph.coarsened_targets_request", + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.build_graph.address", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.addresses", + "name": "Addresses", + "provider": "pants.backend.experimental.go, pants.engine.addresses", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.addresses.UnparsedAddressInputs": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go", "pants.core"], + "documentation": "Raw addresses that have not been parsed yet.\n\nYou can convert these into fully normalized `Addresses` and `Targets` like this:\n\n await Get(Addresses, UnparsedAddressInputs([\"//:tgt1\", \"//:tgt2\"], owning_address=None)\n await Get(Targets, UnparsedAddressInputs([...], owning_address=Address(\"original\"))\n\nThis is intended for contexts where the user specifies addresses outside of the `dependencies`\nfield, such as through an option or a special field on a target that is not normal\n`dependencies`. You should not use this to resolve the `dependencies` field; use\n`await Get(Addresses, DependenciesRequest)` for that.\n\nIf the addresses are coming from a target's fields, set `owning_address` so that relative\nreferences like `:sibling` work properly.\n\nUnlike the `dependencies` field, this type does not work with `!` and `!!` ignores.\n\nSet `description_of_origin` to a value like \"CLI arguments\" or \"the `dependencies` field\nfrom {tgt.address}\". It is used for better error messages.", + "is_union": false, + "module": "pants.engine.addresses", + "name": "UnparsedAddressInputs", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ] + }, + "pants.engine.desktop.OpenFilesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "OpenFilesRequest(files: Iterable[pathlib.PurePath], *, error_if_open_not_found: bool = True)", + "is_union": false, + "module": "pants.engine.desktop", + "name": "OpenFilesRequest", + "provider": "pants.engine.desktop", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.engine.env_vars.EnvironmentVarsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Requests a subset of the variables set in the environment.\n\nRequesting only the relevant subset of the environment reduces invalidation caused by unrelated\nchanges.", + "is_union": false, + "module": "pants.engine.env_vars", + "name": "EnvironmentVarsRequest", + "provider": "pants.engine.env_vars", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_env_aware_scope_apache_thrift", + "construct_env_aware_scope_docker", + "construct_env_aware_scope_go_generate", + "construct_env_aware_scope_golang", + "construct_env_aware_scope_jvm", + "construct_env_aware_scope_nodejs", + "construct_env_aware_scope_pex", + "construct_env_aware_scope_python_bootstrap", + "construct_env_aware_scope_python_native_code", + "construct_env_aware_scope_shell_setup", + "construct_env_aware_scope_subprocess_environment", + "construct_env_aware_scope_test", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.goals.export.export", + "pants.core.goals.test.get_filtered_environment", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.environment.EnvironmentName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The normalized name for an environment, from `[environments-preview].names`, after applying\nthings like the __local__ matcher.\n\nNote that we have this type, rather than only `EnvironmentTarget`, for a more efficient rule\ngraph. This node impacts the equality of many downstream nodes, so we want its identity to only\nbe a single string, rather than a Target instance.", + "is_union": false, + "module": "pants.engine.environment", + "name": "EnvironmentName", + "provider": "pants.engine.environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish", + "pants.core.goals.test.run_tests", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.fs.CreateDigest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to create a Digest with the input FileContent/FileEntry/SymlinkEntry/Directory\nvalues.\n\nThe engine will create any parent directories necessary, e.g. `FileContent('a/b/c.txt')` will\nresult in `a/`, `a/b`, and `a/b/c.txt` being created. You only need to use `Directory` to\ncreate an empty directory.\n\nThis does _not_ actually materialize the digest to the build root. You must use\n`engine.fs.Workspace` in a `@goal_rule` to save the resulting digest to disk.", + "is_union": false, + "module": "pants.engine.fs", + "name": "CreateDigest", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_setup_py", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors" + ] + }, + "pants.engine.fs.DigestSubset": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to get a subset of a digest.\n\nThe digest will be traversed symlink-oblivious to match the provided globs. If you require a\nsymlink-aware subset, you can access the digest's entries `Get(DigestEntries, Digest, digest)`,\nfilter them out, and create a new digest: `Get(Digest, CreateDigest(...))`.\n\nExample:\n\n result = await Get(Digest, DigestSubset(original_digest, PathGlobs([\"subdir1\", \"f.txt\"]))", + "is_union": false, + "module": "pants.engine.fs", + "name": "DigestSubset", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.dists.find_build_system", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "pants.engine.fs.DownloadFile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Retrieve the contents of a file via an HTTP GET request or directly for local file:// URLs.\n\nTo compute the `expected_digest`, manually download the file, then run `shasum -a 256` to\ncompute the fingerprint and `wc -c` to compute the expected length of the downloaded file in\nbytes.", + "is_union": false, + "module": "pants.engine.fs", + "name": "DownloadFile", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.engine.fs.PathGlobs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "PathGlobs(globs: 'Iterable[str]', glob_match_error_behavior: 'GlobMatchErrorBehavior' = , conjunction: 'GlobExpansionConjunction' = , description_of_origin: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.fs", + "name": "PathGlobs", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.core.goals.fix.fix_batch", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.util_rules.config_files.find_config_file", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_source_paths", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ] + }, + "pants.engine.internals.build_files.AddressFamilyDir": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The directory to find addresses for.\n\nThis does _not_ recurse into subdirectories.", + "is_union": false, + "module": "pants.engine.internals.build_files", + "name": "AddressFamilyDir", + "provider": "pants.engine.internals.build_files", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.peek.get_target_data"] + }, + "pants.engine.internals.graph.GenerateFileTargets": { + "consumed_by_rules": [ + "pants.engine.internals.graph.generate_file_targets" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "GenerateFileTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.engine.internals.graph.Owners": { + "consumed_by_rules": [], + "dependencies": [ + "pants.build_graph.address", + "pants.core", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "Owners", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.find_owners"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.OwnersRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.find_owners"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request for the owners of a set of file paths.\n\nTODO: This is widely used as an effectively-public API. It should probably move to\n`pants.engine.target`.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "OwnersRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.ResolveTargetGeneratorRequests": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ResolveTargetGeneratorRequests(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolveTargetGeneratorRequests", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph.ResolvedTargetGeneratorRequests": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.internals.mapper", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ResolvedTargetGeneratorRequests(requests: 'tuple[GenerateTargetsRequest, ...]' = ())", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_generator_target_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph.SubprojectRoots": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "SubprojectRoots", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_subproject_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph.WrappedTargetForBootstrap": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target", "pants.engine.unions"], + "dependents": [], + "documentation": "Used to avoid a rule graph cycle when evaluating bootstrap targets.\n\nThis does not work with target generation and parametrization. It also ignores any unrecognized\nfields in the target, to accommodate plugin fields which are not yet registered during\nbootstrapping.\n\nThis should only be used by bootstrapping code.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph._AdaptorAndType": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.internals.graph", + "pants.engine.internals.target_adaptor", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_AdaptorAndType(adaptor: 'TargetAdaptor', target_type: 'type[Target]')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_AdaptorAndType", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph._DependencyMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_DependencyMapping(mapping: 'FrozenDict[Address, tuple[Address, ...]]', visited: 'FrozenOrderedSet[Target]', roots_as_targets: 'Collection[Target]')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.graph._DependencyMappingRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_DependencyMappingRequest(tt_request: 'TransitiveTargetsRequest', expanded_targets: 'bool')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMappingRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.graph._RequestAdaptorAndType": { + "consumed_by_rules": [ + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_RequestAdaptorAndType(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_RequestAdaptorAndType", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizations": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.plugin_development", + "pants.backend.python", + "pants.engine.internals.parametrize", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "All parametrizations and generated targets for a single input Address.\n\nIf a Target has been parametrized, the original Target might _not_ be present, due to no Target\nbeing addressable at the un-parameterized Address.", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizations", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizationsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_TargetParametrizationsRequest(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizationsRequest", + "provider": "pants.engine.internals.parametrize", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.synthetic_targets.SyntheticAddressMaps": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A collection of `SyntheticAddressMap` for all synthetic target adaptors.", + "is_union": false, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticAddressMaps", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.synthetic_targets.SyntheticTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Union members of the `SyntheticTargetsRequest` should implement a rule returning an instance\nof a `SyntheticAddressMaps`.", + "is_union": true, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticTargetsRequest", + "provider": "pants.engine.internals.synthetic_targets", + "returned_by_rules": [], + "union_members": ["PythonSyntheticLockfileTargetsRequest"], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.target_adaptor.TargetAdaptorRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Lookup the TargetAdaptor for an Address.", + "is_union": false, + "module": "pants.engine.internals.target_adaptor", + "name": "TargetAdaptorRequest", + "provider": "pants.engine.internals.target_adaptor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ] + }, + "pants.engine.process.FallibleProcessResult": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "Result of executing a process which might fail.\n\nIf the process has a non-zero exit code, this will not raise an exception, unlike ProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "FallibleProcessResult", + "provider": "pants.backend.experimental.python.lint.ruff, pants.engine.process", + "returned_by_rules": ["pants.backend.python.lint.ruff.rules.run_ruff"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.engine.process.InteractiveProcess": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "InteractiveProcess(argv: 'Iterable[str]', *, env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), run_in_workspace: 'bool' = False, forward_signals_to_process: 'bool' = True, restartable: 'bool' = False, append_only_caches: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, keep_sandboxes: 'KeepSandboxes' = ) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "InteractiveProcess", + "provider": "pants.backend.experimental.helm, pants.engine.process", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.export.export", + "pants.core.goals.publish.run_publish", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.process.Process": { + "consumed_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.sdk", + "pants.backend.helm.util_rules.tool", + "pants.backend.javascript.subsystems.nodejs", + "pants.backend.python", + "pants.backend.terraform.dependency_inference", + "pants.backend.terraform.tool", + "pants.engine.env_vars", + "pants.engine.platform", + "pants.jvm.jdk_rules", + "pants.jvm.resolve.coursier_setup" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell" + ], + "documentation": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , remote_cache_speculation_delay_millis: 'int' = 0) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "Process", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.terraform, pants.backend.shell, pants.core, pants.engine.process", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.process.ProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Result of executing a process which should not fail.\n\nIf the process has a non-zero exit code, this will raise an exception, unlike\nFallibleProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessResult", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.engine.process.ProductDescription": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ProductDescription(value: 'str')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProductDescription", + "provider": "pants.backend.experimental.helm, pants.engine.process", + "returned_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactory": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "is_union": false, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactory", + "provider": "pants.backend.experimental.tools.workunit_logger, pants.core", + "returned_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback", + "pants.goal.stats_aggregator.construct_callback" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.tools.workunit_logger", + "pants.core" + ], + "documentation": "A request for a particular WorkunitsCallbackFactory.", + "is_union": true, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactoryRequest", + "provider": "pants.engine.streaming_workunit_handler", + "returned_by_rules": [], + "union_members": [ + "StatsAggregatorCallbackFactoryRequest", + "WorkunitLoggerCallbackFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.AllTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "pants.backend.docker.target_types.all_docker_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.helm.target_types.all_helm_artifact_targets", + "pants.backend.helm.target_types.all_helm_chart_targets", + "pants.backend.helm.target_types.all_helm_deployment_targets", + "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions", + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "pants.backend.shell.dependency_inference.find_all_shell_targets", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.target_types.find_all_assets", + "pants.engine.internals.graph.find_all_targets_deprecated", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": ["pants.core", "pants.engine.target"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": "All targets in the project, but with target generators replaced by their generated targets,\nunlike `AllUnexpandedTargets`.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_all_targets_deprecated" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.bandit.subsystem.bandit_export", + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "pants.backend.python.lint.black.subsystem.black_export", + "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "pants.backend.python.lint.flake8.subsystem.flake8_export", + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "pants.backend.python.lint.pylint.subsystem.pylint_export", + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "pants.backend.python.subsystems.pytest.pytest_export", + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile" + ] + }, + "pants.engine.target.AllUnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.rename_conflicting_targets", + "pants.engine.internals.graph.find_all_unexpanded_targets_deprecated" + ], + "dependencies": ["pants.engine.target"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core" + ], + "documentation": "All targets in the project, including generated targets.\n\nThis should generally be avoided because it is relatively expensive to compute and is frequently\ninvalidated, but it can be necessary for things like dependency inference to build a global\nmapping of imports to targets.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_all_unexpanded_targets_deprecated" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.CoarsenedTargets": { + "consumed_by_rules": [ + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "dependencies": ["pants.engine.environment"], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "The CoarsenedTarget roots of a transitive graph walk for some addresses.\n\nTo collect all reachable CoarsenedTarget members, use `def closure`.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": ["pants.engine.internals.graph.coarsened_targets"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.jvm.classpath.classpath", + "pants.jvm.run.create_run_request" + ] + }, + "pants.engine.target.CoarsenedTargetsRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.coarsened_targets"], + "dependencies": ["pants.engine.addresses"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request to get CoarsenedTargets for input roots.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.coarsened_targets_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ] + }, + "pants.engine.target.DependenciesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "DependenciesRequest(field: 'Dependencies', include_special_cased_deps: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.jvm.package.war.package_war" + ] + }, + "pants.engine.target.DependenciesRuleApplicationRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to return the applicable dependency rule action for each dependency of a target.", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRuleApplicationRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.peek.get_target_data"] + }, + "pants.engine.target.ExplicitlyProvidedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The literal addresses from a BUILD file `dependencies` field.\n\nAlmost always, you should use `await Get(Addresses, DependenciesRequest)` instead, which will\nconsider dependency inference and apply ignores. However, this type can be\nuseful particularly within inference rules to see if a user already explicitly\nprovided a dependency.\n\nResolve using `await Get(ExplicitlyProvidedDependencies, DependenciesRequest)`.\n\nNote that the `includes` are not filtered based on the `ignores`: this type preserves exactly\nwhat was in the BUILD file.", + "is_union": false, + "module": "pants.engine.target", + "name": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.FieldDefaultFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.backend.python"], + "documentation": "Registers a dynamic default for a Field.\n\nSee `FieldDefaults`.", + "is_union": true, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "JvmResolveFieldDefaultFactoryRequest", + "PythonResolveFieldDefaultFactoryRequest" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.field_defaults"] + }, + "pants.engine.target.FieldDefaultFactoryResult": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A wrapper for a function which computes the default value of a Field.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.field_defaults"] + }, + "pants.engine.target.FieldDefaults": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go", "pants.core"], + "documentation": "Generic Field default values. To install a default, see `FieldDefaultFactoryRequest`.\n\nTODO: This is to work around the fact that Field value defaulting cannot have arbitrary\nsubsystem requirements, and so e.g. `JvmResolveField` and `PythonResolveField` have methods\nwhich compute the true value of the field given a subsytem argument. Consumers need to\nbe type aware, and `@rules` cannot have dynamic requirements.\n\nAdditionally, `__defaults__` should mean that computed default Field values should become\nmore rare: i.e. `JvmResolveField` and `PythonResolveField` could potentially move to\nhardcoded default values which users override with `__defaults__` if they'd like to change\nthe default resolve names.\n\nSee https://github.com/pantsbuild/pants/issues/12934 about potentially allowing unions\n(including Field registrations) to have `@rule_helper` methods, which would allow the\ncomputation of an AsyncField to directly require a subsystem. Since\nhttps://github.com/pantsbuild/pants/pull/17947 rules may use any methods as rule helpers without\nspecial decoration so this should now be possible to implement.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaults", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.field_defaults"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldSetsPerTarget": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target", "pants.engine.unions"], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.shell", + "pants.core" + ], + "documentation": "FieldSetsPerTarget(collection: 'Iterable[Iterable[_FS]]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.FieldSetsPerTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FieldSetsPerTargetRequest(field_set_superclass: 'Type[_FS]', targets: 'Iterable[Target]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.GenerateSourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A request to go from protocol sources -> a particular language.\n\nThis should be subclassed for each distinct codegen implementation. The subclasses must define\nthe class properties `input` and `output`. The subclass must also be registered via\n`UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest)`, for example.\n\nThe rule to actually implement the codegen should take the subclass as input, and it must\nreturn `GeneratedSources`.\n\nThe `exportable` attribute disables the use of this codegen by the `export-codegen` goal when\nset to False.\n\nFor example:\n\n class GenerateFortranFromAvroRequest:\n input = AvroSources\n output = FortranSources\n\n @rule\n def generate_fortran_from_avro(request: GenerateFortranFromAvroRequest) -> GeneratedSources:\n ...\n\n def rules():\n return [\n generate_fortran_from_avro,\n UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateDockerContextFiles", + "GenerateDockerfileRequest", + "GenerateFileSourceRequest", + "GenerateFilesFromAdhocToolRequest", + "GenerateFilesFromShellCommandRequest", + "GenerateGoFromProtobufRequest", + "GenerateJavaFromProtobufRequest", + "GeneratePythonFromProtobufRequest", + "GeneratePythonFromSetuptoolsSCMRequest", + "GeneratePythonFromThriftRequest", + "GenerateResourceSourceRequest", + "GenerateScalaFromProtobufRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "RelocateFilesViaCodegenRequest" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.hydrate_sources"] + }, + "pants.engine.target.GenerateTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.plugin_development", + "pants.backend.python" + ], + "documentation": "GenerateTargetsRequest(generator: '_TargetGenerator', template_address: 'Address', template: 'dict[str, Any]', overrides: 'dict[str, dict[Address, dict[str, Any]]]')", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateFileTargets", + "GenerateFromPantsRequirementsRequest", + "GenerateFromPipenvRequirementsRequest", + "GenerateFromPoetryRequirementsRequest", + "GenerateFromPythonRequirementsRequest", + "GenerateTargetsFromGoModRequest", + "GenerateTargetsFromPexBinaries" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.GeneratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GeneratedSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.hydrate_sources"] + }, + "pants.engine.target.GeneratedTargets": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.fs", + "pants.engine.internals.target_adaptor", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A mapping of the address of generated targets to the targets themselves.", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedTargets", + "provider": "pants.backend.experimental.go, pants.backend.plugin_development, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "pants.engine.internals.graph.generate_file_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.HydrateSourcesRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.hydrate_sources"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "HydrateSourcesRequest(field: 'SourcesField', *, for_sources_types: 'Iterable[type[SourcesField]]' = (,), enable_codegen: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "HydrateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.HydratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The result of hydrating a SourcesField.\n\nThe `sources_type` will indicate which of the `HydrateSourcesRequest.for_sources_type` the\nresult corresponds to, e.g. if the result comes from `FilesSources` vs. `PythonSources`. If this\nvalue is None, then the input `SourcesField` was not one of the expected types; or, when codegen\nwas enabled in the request, there was no valid code generator to generate the requested language\nfrom the original input. This property allows for switching on the result, e.g. handling\nhydrated files() sources differently than hydrated Python sources.", + "is_union": false, + "module": "pants.engine.target", + "name": "HydratedSources", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.hydrate_sources"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.InferDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A request to infer dependencies by analyzing source files.\n\nTo set up a new inference implementation, subclass this class. Set the class property\n`infer_from` to the FieldSet subclass you are able to infer from. This will cause the FieldSet\nclass, and any subclass, to use your inference implementation.\n\nNote that there cannot be more than one implementation for a particular `FieldSet` class.\n\nRegister this subclass with `UnionRule(InferDependenciesRequest, InferFortranDependencies)`, for example.\n\nThen, create a rule that takes the subclass as a parameter and returns `InferredDependencies`.\n\nFor example:\n\n class InferFortranDependencies(InferDependenciesRequest):\n infer_from = FortranDependenciesInferenceFieldSet\n\n @rule\n def infer_fortran_dependencies(request: InferFortranDependencies) -> InferredDependencies:\n hydrated_sources = await Get(HydratedSources, HydrateSources(request.sources))\n ...\n return InferredDependencies(...)\n\n def rules():\n return [\n infer_fortran_dependencies,\n UnionRule(InferDependenciesRequest, InferFortranDependencies),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "InferDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "InferApacheThriftPythonDependencies", + "InferConftestDependencies", + "InferDockerDependencies", + "InferGoBinaryMainDependencyRequest", + "InferGoPackageDependenciesRequest", + "InferGoThirdPartyPackageDependenciesRequest", + "InferHelmChartDependenciesRequest", + "InferHelmDeploymentDependenciesRequest", + "InferHelmUnitTestChartDependencyRequest", + "InferInitDependencies", + "InferJavaSourceDependencies", + "InferKotlinJunitTestDependencyRequest", + "InferKotlinRuntimeDependencyRequest", + "InferKotlinSourceDependencies", + "InferOpenApiDocumentDependenciesRequest", + "InferOpenApiSourceDependenciesRequest", + "InferPexBinaryEntryPointDependency", + "InferProtobufDependencies", + "InferProtobufJavaRuntimeDependencyRequest", + "InferPythonDistributionDependencies", + "InferPythonFaaSHandlerDependency", + "InferPythonImportDependencies", + "InferPythonProtobufDependencies", + "InferScalaLibraryDependencyRequest", + "InferScalaPBRuntimeDependencyRequest", + "InferScalaPluginDependenciesRequest", + "InferScalaSourceDependencies", + "InferShellDependencies", + "InferStevedoreNamespacesDependencies", + "InferTerraformModuleDependenciesRequest", + "InferThriftDependencies" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.InferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.addresses", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "InferredDependencies(include: 'Iterable[Address]', *, exclude: 'Iterable[Address]' = ()) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "InferredDependencies", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.python.framework.stevedore, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.PluginField": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ], + "documentation": null, + "is_union": true, + "module": "pants.engine.target", + "name": "PluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": ["SkipShellcheckField", "SkipShfmtField"], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.SourcesPaths": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "dependencies": ["pants.engine.fs", "pants.engine.target"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "The resolved file names of the `source`/`sources` field.\n\nThis does not consider codegen, and only captures the files from the field.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPaths", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.SourcesPathsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request to resolve the file names of the `source`/`sources` field.\n\nUse via `Get(SourcesPaths, SourcesPathRequest(tgt.get(SourcesField))`.\n\nThis is faster than `Get(HydratedSources, HydrateSourcesRequest)` because it does not snapshot\nthe files and it only resolves the file names.\n\nThis does not consider codegen, and only captures the files from the field. Use\n`HydrateSourcesRequest` to use codegen.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPathsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettings": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings", + "pants.backend.codegen.thrift.target_types.generator_settings", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.scala.target_types.scala_settings_request", + "pants.backend.shell.target_types.generator_settings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.generate_file_targets"] + }, + "pants.engine.target.TargetFilesGeneratorSettingsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "An optional union to provide dynamic settings for a `TargetFilesGenerator`.\n\nSee `TargetFilesGenerator`.", + "is_union": true, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettingsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GeneratorSettingsRequest", + "GeneratorSettingsRequest", + "PythonFilesGeneratorSettingsRequest", + "ScalaSettingsRequest", + "ShellGeneratorSettingsRequest" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.generate_file_targets"] + }, + "pants.engine.target.TargetRootsToFieldSetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "TargetRootsToFieldSetsRequest(field_set_superclass: 'Type[_FS]', *, goal_description: 'str', no_applicable_targets_behavior: 'NoApplicableTargetsBehavior', warn_on_deprecated_secondary_owner_semantics: 'bool' = True, shard: 'int' = 0, num_shards: 'int' = -1) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetRootsToFieldSetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.run_publish", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.target.TargetTypesToGenerateTargetsRequests": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": ["pants.engine.unions"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.engine.target", + "name": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.target_types_to_generate_targets_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.Targets": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.go_generate", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A heterogeneous collection of instances of Target subclasses.\n\nWhile every element will be a subclass of `Target`, there may be many different `Target` types\nin this collection, e.g. some `FileTarget` and some `PythonTestTarget`.\n\nOften, you will want to filter out the relevant targets by looking at what fields they have\nregistered, e.g.:\n\n valid_tgts = [tgt for tgt in tgts if tgt.has_fields([Compatibility, PythonSources])]\n\nYou should not check the Target's actual type because this breaks custom target types;\nfor example, prefer `tgt.has_field(PythonTestsSourcesField)` to\n`isinstance(tgt, PythonTestsTarget)`.", + "is_union": false, + "module": "pants.engine.target", + "name": "Targets", + "provider": "pants.backend.experimental.go, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.engine.target.TransitiveTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.environment", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A set of Target roots, and their transitive, flattened, de-duped dependencies.\n\nIf a target root is a dependency of another target root, then it will show up both in `roots`\nand in `dependencies`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.transitive_targets"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.paths", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.TransitiveTargetsRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.transitive_targets"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request to get the transitive dependencies of the input roots.\n\nResolve the transitive targets with `await Get(TransitiveTargets,\nTransitiveTargetsRequest([addr1, addr2])`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.paths", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.UnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": ["pants.engine.addresses"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.backend.python", + "pants.core" + ], + "documentation": "Like `Targets`, but will not replace target generators with their generated targets (e.g.\nreplace `python_sources` \"BUILD targets\" with generated `python_source` \"file targets\").", + "is_union": false, + "module": "pants.engine.target", + "name": "UnexpandedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.project_info.peek.peek", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping" + ] + }, + "pants.engine.target.ValidateDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to validate dependencies after they have been computed.\n\nAn implementing rule should raise an exception if dependencies are invalid.", + "is_union": true, + "module": "pants.engine.target", + "name": "ValidateDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": ["PythonValidateDependenciesRequest"], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.ValidatedDependencies": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ValidatedDependencies()", + "is_union": false, + "module": "pants.engine.target", + "name": "ValidatedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.WrappedTarget": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.environment", "pants.engine.target"], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A light wrapper to encapsulate all the distinct `Target` subclasses into a single type.\n\nThis is necessary when using a single target in a rule because the engine expects exact types\nand does not work with subtypes.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.resolve_target"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.engine.target.WrappedTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Used with `WrappedTarget` to get the Target corresponding to an address.\n\n`description_of_origin` is used for error messages when the address does not actually exist. If\nyou are confident this cannot happen, set the string to something like ``.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetry": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetry", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_anonymous_telemetry"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorCallbackFactoryRequest": { + "consumed_by_rules": ["pants.goal.stats_aggregator.construct_callback"], + "dependencies": ["pants.engine.streaming_workunit_handler"], + "dependents": ["pants.core"], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorSubsystem": { + "consumed_by_rules": ["pants.goal.stats_aggregator.construct_callback"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_stats"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.bsp.compile.BSPClasspathEntryRequest": { + "consumed_by_rules": ["pants.jvm.bsp.compile.notify_for_classpath_entry"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A wrapper around a `ClasspathEntryRequest` which notifies the BSP client on completion.\n\nTODO: Because this struct contains a `task_id`, messages will re-render in every run, even\nthough the underlying computation does not re-run. See #15426 for an alternative.", + "is_union": false, + "module": "pants.jvm.bsp.compile", + "name": "BSPClasspathEntryRequest", + "provider": "pants.jvm.bsp.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.classpath.Classpath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "Classpath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.classpath.classpath"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.classpath.LooseClassfiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.scala", + "pants.core", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "The contents of a classpath entry as loose classfiles.\n\nNote that `ClasspathEntry` and `Classpath` both guarantee that they contain JAR files, and so\ncreating loose classfiles from them involves extracting their entry.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "LooseClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.classpath.loose_classfiles"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.compile.ClasspathDependenciesRequest": { + "consumed_by_rules": ["pants.jvm.compile.classpath_dependency_requests"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ClasspathDependenciesRequest(request: 'ClasspathEntryRequest', ignore_generated: 'bool' = False)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathDependenciesRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.ClasspathEntry": { + "consumed_by_rules": ["pants.jvm.classpath.loose_classfiles"], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nIf `[jvm].reproducible_jars`, then all JARs in a classpath entry must have had timestamps\nstripped -- either natively, or via the `pants.jvm.strip_jar` rules.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.\n\nNote: Non-jar artifacts (e.g., executables with \"exe\" packaging) may end up on the classpath if\nthey are dependencies.\nTODO: Does there need to be a filtering mechanism to exclude non-jar artifacts in the default case?", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.jvm.compile", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.jvm.compile.required_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.classpath.classpath", + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.compile.ClasspathEntryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "A request for a ClasspathEntry for the given CoarsenedTarget and resolve.\n\nTODO: Move to `classpath.py`.", + "is_union": true, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [ + "CompileJavaSourceRequest", + "CompileKotlinSourceRequest", + "CompileScalaSourceRequest", + "CoursierFetchRequest", + "DeployJarClasspathEntryRequest", + "JvmResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.compile.ClasspathEntryRequestFactory": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependencies": ["pants.engine.unions"], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.compile.calculate_jvm_request_types"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.compile.ClasspathEntryRequests": { + "consumed_by_rules": ["pants.jvm.compile.compile_classpath_entries"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java, pants.jvm.compile", + "returned_by_rules": ["pants.jvm.compile.classpath_dependency_requests"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.compile.compile_classpath_entries"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntry": { + "consumed_by_rules": ["pants.jvm.compile.required_classfiles"], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.bsp.compile", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resources.assemble_resources_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmTypeProvidingTargets": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AvailableThirdPartyArtifacts": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.ThirdPartySymbolMapping": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "The third party symbols provided by all `jvm_artifact` targets.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.symbol_mapper.FirstPartyMappingRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "An entry point for a specific implementation of mapping JVM package names to owning targets.\n\nAll implementations will be merged together.\n\nThe addresses should all be file addresses, rather than BUILD addresses.", + "is_union": true, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "FirstPartyMappingRequest", + "provider": "pants.jvm.dependency_inference.symbol_mapper", + "returned_by_rules": [], + "union_members": [ + "FirstPartyJavaTargetsMappingRequest", + "FirstPartyKotlinTargetsMappingRequest", + "FirstPartyScalaTargetsMappingRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMap": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "The first party symbols provided by a single inference implementation.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMap", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMapping": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "The merged first and third party symbols provided by all inference implementations.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.GenerateJvmLockfile": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.unions", + "pants.jvm.goals.lockfile", + "pants.jvm.resolve.common" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', artifacts: 'ArtifactRequirements')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": ["pants.jvm.goals.lockfile.setup_user_lockfile_requests"] + }, + "pants.jvm.goals.lockfile.KnownJVMUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "KnownJVMUserResolveNamesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.RequestedJVMUserResolveNames": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "RequestedJVMUserResolveNames", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "Hook for backends to validate the artifact requirements requested for a resolve.\n\nThe main user is the Scala backend which will ensure scala-library is present in the resolve.", + "is_union": true, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": ["ValidateResolveHasScalaRuntimeRequest"], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.java"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile._ValidateJvmArtifactsRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "_ValidateJvmArtifactsRequest(artifacts: 'ArtifactRequirements', resolve_name: 'str')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "_ValidateJvmArtifactsRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.goals.lockfile.setup_user_lockfile_requests"] + }, + "pants.jvm.jar_tool.jar_tool.JarToolCompiledClassfiles": { + "consumed_by_rules": ["pants.jvm.jar_tool.jar_tool.run_jar_tool"], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JarToolCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jar_tool.jar_tool.build_jar_tool"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jar_tool.jar_tool.JarToolGenerateLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolGenerateLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool" + ] + }, + "pants.jvm.jar_tool.jar_tool.JarToolRequest": { + "consumed_by_rules": ["pants.jvm.jar_tool.jar_tool.run_jar_tool"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JarToolRequest(*, jar_name: 'str', digest: 'Digest', main_class: 'str | None' = None, classpath_entries: 'Iterable[str] | None' = None, manifest: 'str | None' = None, jars: 'Iterable[str] | None' = None, file_mappings: 'Mapping[str, str] | None' = None, default_action: 'JarDuplicateAction | None' = None, policies: 'Iterable[tuple[str, str | JarDuplicateAction]] | None' = None, skip: 'Iterable[str] | None' = None, compress: 'bool' = False, update: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolRequest", + "provider": "pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.deploy_jar.package_deploy_jar"] + }, + "pants.jvm.jdk_rules.InternalJdk": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "InternalJdk", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jdk_rules.internal_jdk"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jdk_rules.JdkEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.jdk_rules" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int', global_jvm_options: 'tuple[str, ...]', java_home_command: 'str')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkEnvironment", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JdkRequest": { + "consumed_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Request for a JDK with a specific major version, or a default (`--jvm-jdk` or System).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkRequest", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JvmProcess": { + "consumed_by_rules": ["pants.jvm.jdk_rules.jvm_process"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JvmProcess(jdk: 'JdkEnvironment', argv: 'Iterable[str]', classpath_entries: 'Iterable[str]', input_digest: 'Digest', description: 'str', level: 'LogLevel' = , extra_jvm_options: 'Iterable[str] | None' = None, extra_nailgun_keys: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_env: 'Mapping[str, str] | None' = None, timeout_seconds: 'int | float | None' = None, cache_scope: 'ProcessCacheScope | None' = None, use_nailgun: 'bool' = True, remote_cache_speculation_delay: 'int | None' = None)", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JvmProcess", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.jdk_rules.Nailgun": { + "consumed_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "dependencies": ["pants.backend.experimental.scala", "pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Nailgun(classpath_entry: 'ClasspathEntry')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "Nailgun", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jdk_rules.fetch_nailgun"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.deploy_jar_classpath" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarClasspathEntryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "DeployJarFieldSet(address: 'Address', main_class: pants.jvm.target_types.JvmMainClassNameField, output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmDependenciesField, jdk_version: pants.jvm.target_types.JvmJdkField, duplicate_policy: pants.jvm.target_types.DeployJarDuplicatePolicyField, shading_rules: pants.jvm.target_types.DeployJarShadingRulesField)", + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarFieldSet", + "provider": "pants.backend.experimental.java, pants.jvm.package.deploy_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.jvm.package.war.PackageWarFileFieldSet": { + "consumed_by_rules": ["pants.jvm.package.war.package_war"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "PackageWarFileFieldSet(address: 'Address', output_path: 'OutputPathField', dependencies: 'JvmWarDependenciesField', descriptor: 'JvmWarDescriptorAddressField', content: 'JvmWarContentField', shading_rules: 'JvmWarShadingRulesField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "PackageWarFileFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.jvm.package.war.RenderWarContentRequest": { + "consumed_by_rules": ["pants.jvm.package.war.render_war_content"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderWarContentRequest(content: 'JvmWarContentField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarContentRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.package.war.RenderWarDeploymentDescriptorRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderWarDeploymentDescriptorRequest(descriptor: 'JvmWarDescriptorAddressField', owning_address: 'Address')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarDeploymentDescriptorRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.package.war.RenderedWarContent": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.addresses", + "pants.jvm.package.war" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderedWarContent(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarContent", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.package.war.render_war_content"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.package.war.RenderedWarDeploymentDescriptor": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.package.war" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderedWarDeploymentDescriptor(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.resolve.common.ArtifactRequirements": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java" + ], + "documentation": "An ordered list of Coordinates used as requirements.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "ArtifactRequirements", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.common", + "returned_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.common.GatherJvmCoordinatesRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A request to turn strings of coordinates (`group:artifact:version`) and/or addresses to\n`jvm_artifact` targets into `ArtifactRequirements`.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "GatherJvmCoordinatesRequest", + "provider": "pants.jvm.resolve.common", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierFetchRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierFetchRequest", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierLockfileEntry": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A single artifact entry from a Coursier-resolved lockfile.\n\nThese fields are nearly identical to the JSON objects from the\n\"dependencies\" entries in Coursier's --json-output-file format.\nBut unlike Coursier's JSON report, a CoursierLockfileEntry\nincludes the content-address of the artifact fetched by Coursier\nand ingested by Pants.\n\nFor example, a Coursier JSON report dependency entry might look like this:\n\n```\n{\n \"coord\": \"com.chuusai:shapeless_2.13:2.3.3\",\n \"file\": \"/home/USER/.cache/coursier/v1/https/repo1.maven.org/maven2/com/chuusai/shapeless_2.13/2.3.3/shapeless_2.13-2.3.3.jar\",\n \"directDependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ],\n \"dependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ]\n}\n```\n\nThe equivalent CoursierLockfileEntry would look like this:\n\n```\nCoursierLockfileEntry(\n coord=\"com.chuusai:shapeless_2.13:2.3.3\", # identical\n file_name=\"shapeless_2.13-2.3.3.jar\" # PurePath(entry[\"file\"].name)\n direct_dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n file_digest=FileDigest(fingerprint=, ...),\n)\n```\n\nThe fields `remote_url` and `pants_address` are set by Pants if the `coord` field matches a\n`jvm_artifact` that had either the `url` or `jar` fields set.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierLockfileEntry", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.resolve.common" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolvedLockfile": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.common", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ResolvedClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A collection of resolved classpath entries.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspath": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.jvm.resolve.common", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "A fully fetched and merged classpath for running a JVM tool.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspathRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A request to set up the classpath for a JVM tool by fetching artifacts and merging the\nclasspath.\n\n:param prefix: if set, should be a relative directory that will\n be prepended to every classpath element. This is useful for\n keeping all classpath elements isolated under a single directory\n in a process invocation, where other inputs on the process's\n root directory might interfere with un-prefixed classpath\n entries (or vice versa).", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspathRequest", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_setup.Coursier": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "Coursier", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.resolve.coursier_setup.setup_coursier"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.coursier_setup.CoursierFetchProcess": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "CoursierFetchProcess(args: 'Tuple[str, ...]', input_digest: 'Digest', output_directories: 'Tuple[str, ...]', output_files: 'Tuple[str, ...]', description: 'str')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierFetchProcess", + "provider": "pants.jvm.resolve.coursier_setup", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_setup.CoursierSubsystem": { + "consumed_by_rules": ["pants.jvm.resolve.coursier_setup.setup_coursier"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_coursier"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.jvm_tool.GenerateJvmLockfileFromTool": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.rules", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.java.dependency_inference.java_parser", + "pants.backend.java.lint.google_java_format.rules", + "pants.backend.kotlin.dependency_inference.kotlin_parser", + "pants.backend.kotlin.lint.ktlint.rules", + "pants.backend.scala.dependency_inference.scala_parser", + "pants.backend.scala.lint.scalafmt.rules", + "pants.backend.scala.test.scalatest", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.shading.jarjar", + "pants.jvm.strip_jar.strip_jar", + "pants.jvm.test.junit" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "is_union": false, + "module": "pants.jvm.resolve.jvm_tool", + "name": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.key.CoursierResolveKey": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.key", + "name": "CoursierResolveKey", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.key", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resources.JvmResourcesRequest": { + "consumed_by_rules": ["pants.jvm.resources.assemble_resources_jar"], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resources", + "name": "JvmResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJar": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.shading.rules.shade_jar" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_jarjar"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJarGeneratorLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJarGeneratorLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.shading.jarjar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": ["pants.jvm.shading.rules.shade_jar"] + }, + "pants.jvm.shading.rules.ShadeJarRequest": { + "consumed_by_rules": ["pants.jvm.shading.rules.shade_jar"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ShadeJarRequest(*, path: 'str | PurePath', digest: 'Digest', rules: 'Iterable[JvmShadingRule] | None' = None, skip_manifest: 'bool | None' = None, misplaced_class_strategy: 'MisplacedClassStrategy | None' = None) -> 'None'", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadeJarRequest", + "provider": "pants.jvm.shading.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.shading.rules.ShadedJar": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.jvm.shading.rules" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ShadedJar(path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadedJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.shading.rules.shade_jar"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarCompiledClassfiles": { + "consumed_by_rules": ["pants.jvm.strip_jar.strip_jar.strip_jar"], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "StripJarCompiledClassfiles(digest: Digest)", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.strip_jar.strip_jar.build_processors"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.strip_jar.strip_jar.StripJarRequest": { + "consumed_by_rules": ["pants.jvm.strip_jar.strip_jar.strip_jar"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "StripJarRequest(digest: Digest, filenames: Tuple[str, ...])", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarRequest", + "provider": "pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.package_deploy_jar" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.jvm.subsystems.JvmSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_jvm", + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.target_types.jvm_resolve_field_default_factory", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.subsystems", + "name": "JvmSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_jvm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.target_types.GenericJvmRunRequest": { + "consumed_by_rules": ["pants.jvm.run.create_run_request"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Allows the use of a generic rule to return a `RunRequest` based on the field set.", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "GenericJvmRunRequest", + "provider": "pants.jvm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ] + }, + "pants.jvm.target_types.JvmArtifactFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JvmArtifactFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', group: 'JvmArtifactGroupField', artifact: 'JvmArtifactArtifactField', version: 'JvmArtifactVersionField', packages: 'JvmArtifactPackagesField', url: 'JvmArtifactUrlField')", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmArtifactFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.jvm.target_types.JvmResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmJdkField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmJdkField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmResolveField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "JunitTestFieldSet(address: 'Address', sources: 'JunitTestSourceField', timeout: 'JunitTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'TestExtraEnvVarsField')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": ["pants.jvm.test.junit.setup_junit_for_target"] + }, + "pants.jvm.test.junit.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.env_vars", + "pants.jvm.test.junit" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetup", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.test.junit.setup_junit_for_target"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.test.junit.TestSetupRequest": { + "consumed_by_rules": ["pants.jvm.test.junit.setup_junit_for_target"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "TestSetupRequest(field_set: 'JunitTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetupRequest", + "provider": "pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.util_rules.ExtractFileDigest": { + "consumed_by_rules": ["pants.jvm.util_rules.digest_to_file_digest"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ExtractFileDigest(digest: 'Digest', file_path: 'str')", + "is_union": false, + "module": "pants.jvm.util_rules", + "name": "ExtractFileDigest", + "provider": "pants.jvm.util_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.option.global_options.GlobalOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.run.run", + "pants.core.util_rules.distdir.get_distdir", + "pants.engine.internals.graph.extract_subproject_roots", + "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "pants.jvm.jdk_rules.jvm_process" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.option.global_options", + "name": "GlobalOptions", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.global_options.UnmatchedBuildFileGlobs": { + "consumed_by_rules": [ + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_source_paths" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "What to do when globs do not match in BUILD files.", + "is_union": false, + "module": "pants.option.global_options", + "name": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_unmatched_build_file_globs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.scope.Scope": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "An options scope.", + "is_union": false, + "module": "pants.option.scope", + "name": "Scope", + "provider": "pants.option.scope", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_scope_", + "construct_scope_add_trailing_comma", + "construct_scope_anonymous_telemetry", + "construct_scope_apache_thrift", + "construct_scope_autoflake", + "construct_scope_bandit", + "construct_scope_black", + "construct_scope_buf", + "construct_scope_build_deprecations_fixer", + "construct_scope_buildifier", + "construct_scope_check", + "construct_scope_count_loc", + "construct_scope_coursier", + "construct_scope_coverage_py", + "construct_scope_debug_adapter", + "construct_scope_debugpy", + "construct_scope_dependencies", + "construct_scope_dependents", + "construct_scope_docformatter", + "construct_scope_docker", + "construct_scope_dockerfile_parser", + "construct_scope_download_terraform", + "construct_scope_experimental_bsp", + "construct_scope_experimental_deploy", + "construct_scope_export", + "construct_scope_export_codegen", + "construct_scope_filedeps", + "construct_scope_filter", + "construct_scope_fix", + "construct_scope_flake8", + "construct_scope_fmt", + "construct_scope_generate_lockfiles", + "construct_scope_go_generate", + "construct_scope_go_test", + "construct_scope_gofmt", + "construct_scope_golang", + "construct_scope_google_java_format", + "construct_scope_grpc_python_plugin", + "construct_scope_hadolint", + "construct_scope_helm", + "construct_scope_helm_k8s_parser", + "construct_scope_helm_post_renderer", + "construct_scope_helm_unittest", + "construct_scope_ipython", + "construct_scope_isort", + "construct_scope_jarjar", + "construct_scope_java_infer", + "construct_scope_javac", + "construct_scope_junit", + "construct_scope_jvm", + "construct_scope_kotlin", + "construct_scope_kotlin_infer", + "construct_scope_kotlinc", + "construct_scope_ktlint", + "construct_scope_lambdex", + "construct_scope_lint", + "construct_scope_list", + "construct_scope_mypy", + "construct_scope_mypy_protobuf", + "construct_scope_nodejs", + "construct_scope_openapi", + "construct_scope_package", + "construct_scope_paths", + "construct_scope_peek", + "construct_scope_pex", + "construct_scope_pex_binary_defaults", + "construct_scope_pex_cli", + "construct_scope_preamble", + "construct_scope_protobuf_java_grpc", + "construct_scope_protoc", + "construct_scope_publish", + "construct_scope_py_constraints", + "construct_scope_pydocstyle", + "construct_scope_pylint", + "construct_scope_pyoxidizer", + "construct_scope_pytest", + "construct_scope_python", + "construct_scope_python_bootstrap", + "construct_scope_python_dump_source_analysis", + "construct_scope_python_infer", + "construct_scope_python_native_code", + "construct_scope_python_protobuf", + "construct_scope_python_repos", + "construct_scope_python_thrift", + "construct_scope_pyupgrade", + "construct_scope_regex_lint", + "construct_scope_repl", + "construct_scope_roots", + "construct_scope_ruff", + "construct_scope_run", + "construct_scope_scala", + "construct_scope_scala_infer", + "construct_scope_scalac", + "construct_scope_scalafmt", + "construct_scope_scalapb", + "construct_scope_scalatest", + "construct_scope_scc", + "construct_scope_setup_py_generation", + "construct_scope_setuptools", + "construct_scope_setuptools_scm", + "construct_scope_shell_setup", + "construct_scope_shell_test", + "construct_scope_shellcheck", + "construct_scope_shfmt", + "construct_scope_shunit2", + "construct_scope_source", + "construct_scope_spectral", + "construct_scope_stats", + "construct_scope_subprocess_environment", + "construct_scope_tailor", + "construct_scope_terraform_fmt", + "construct_scope_terraform_hcl2_parser", + "construct_scope_terraform_validate", + "construct_scope_test", + "construct_scope_thrift", + "construct_scope_twine", + "construct_scope_update_build_files", + "construct_scope_workunit_logger", + "construct_scope_yamllint", + "construct_scope_yapf" + ] + }, + "pants.option.subsystem.PluginOption": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.option.subsystem", + "name": "PluginOption", + "provider": "pants.option.subsystem", + "returned_by_rules": [], + "union_members": ["ExportPluginOptions"], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.AllSourceRoots": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.project_info", "pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "AllSourceRoots", + "provider": "pants.core", + "returned_by_rules": ["pants.source.source_root.all_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.OptionalSourceRoot": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.source.source_root"], + "dependents": ["pants.core"], + "documentation": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.OptionalSourceRootsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.source.source_root"], + "dependents": ["pants.core"], + "documentation": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.source.source_root.get_source_roots"] + }, + "pants.source.source_root.SourceRoot": { + "consumed_by_rules": [], + "dependencies": ["pants.source.source_root"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRoot(path: 'str')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRoot", + "provider": "pants.core", + "returned_by_rules": ["pants.source.source_root.get_source_root"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ] + }, + "pants.source.source_root.SourceRootConfig": { + "consumed_by_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootConfig", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_source"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.SourceRootRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_source_root" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Find the source root for the given path.\n\nIf you have multiple paths, particularly if many of them share parent directories, you'll get\nbetter performance with a `SourceRootsRequest` (see above) instead.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.SourceRootsRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_roots" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Find the source roots for the given files and/or dirs.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRootsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.source.source_root"], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsResult", + "provider": "pants.core", + "returned_by_rules": ["pants.source.source_root.get_source_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ] + }, + "pants.vcs.git.GitWorktreeRequest": { + "consumed_by_rules": ["pants.vcs.git.get_git_worktree"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GitWorktreeRequest(gitdir: 'PathLike[str] | None' = None, subdir: 'PathLike[str] | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "GitWorktreeRequest", + "provider": "pants.vcs.git", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + }, + "pants.vcs.git.MaybeGitWorktree": { + "consumed_by_rules": [], + "dependencies": ["pants.vcs.git"], + "dependents": ["pants.backend.experimental.python"], + "documentation": "MaybeGitWorktree(git_worktree: 'GitWorktree | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "MaybeGitWorktree", + "provider": "pants.core", + "returned_by_rules": ["pants.vcs.git.get_git_worktree"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + } + }, + "name_to_backend_help_info": { + "pants.backend.awslambda.python": { + "description": "Create AWS Lambdas from Python code.\n\nSee https://www.pantsbuild.org/docs/awslambda-python.", + "enabled": true, + "name": "pants.backend.awslambda.python", + "provider": "pants" + }, + "pants.backend.build_files.fix.deprecations": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fix.deprecations", + "provider": "pants" + }, + "pants.backend.build_files.fmt.black": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.black", + "provider": "pants" + }, + "pants.backend.build_files.fmt.buildifier": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.buildifier", + "provider": "pants" + }, + "pants.backend.build_files.fmt.yapf": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.yapf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.lint.buf": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.protobuf.lint.buf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.python": { + "description": "Generate Python sources from Protocol Buffers (Protobufs).\n\nSee https://www.pantsbuild.org/docs/protobuf.", + "enabled": true, + "name": "pants.backend.codegen.protobuf.python", + "provider": "pants" + }, + "pants.backend.codegen.thrift.apache.python": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.thrift.apache.python", + "provider": "pants" + }, + "pants.backend.docker": { + "description": "", + "enabled": true, + "name": "pants.backend.docker", + "provider": "pants" + }, + "pants.backend.docker.lint.hadolint": { + "description": "", + "enabled": true, + "name": "pants.backend.docker.lint.hadolint", + "provider": "pants" + }, + "pants.backend.experimental.adhoc": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.adhoc", + "provider": "pants" + }, + "pants.backend.experimental.cc": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cc", + "provider": "pants" + }, + "pants.backend.experimental.cc.lint.clangformat": { + "description": "A formatter for C/C++ (and several other languages).\n\nSee https://clang.llvm.org/docs/ClangFormat.html for details.", + "enabled": false, + "name": "pants.backend.experimental.cc.lint.clangformat", + "provider": "pants" + }, + "pants.backend.experimental.codegen.avro.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.avro.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.go", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.scala", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.apache.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.apache.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.scala": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.scala", + "provider": "pants" + }, + "pants.backend.experimental.cue": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cue", + "provider": "pants" + }, + "pants.backend.experimental.debian": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.debian", + "provider": "pants" + }, + "pants.backend.experimental.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.go", + "provider": "pants" + }, + "pants.backend.experimental.go.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.golangci_lint": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.golangci_lint", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.vet": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.vet", + "provider": "pants" + }, + "pants.backend.experimental.helm": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.helm", + "provider": "pants" + }, + "pants.backend.experimental.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java", + "provider": "pants" + }, + "pants.backend.experimental.java.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.java.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.java.lint.google_java_format": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java.lint.google_java_format", + "provider": "pants" + }, + "pants.backend.experimental.javascript": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.javascript", + "provider": "pants" + }, + "pants.backend.experimental.javascript.lint.prettier": { + "description": "A formatter for JS/TS (and several other languages).\n\nSee https://prettier.io/ for details.", + "enabled": false, + "name": "pants.backend.experimental.javascript.lint.prettier", + "provider": "pants" + }, + "pants.backend.experimental.kotlin": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.kotlin.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.lint.ktlint": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin.lint.ktlint", + "provider": "pants" + }, + "pants.backend.experimental.openapi": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi", + "provider": "pants" + }, + "pants.backend.experimental.openapi.codegen.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.openapi.codegen.java", + "provider": "pants" + }, + "pants.backend.experimental.openapi.lint.spectral": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi.lint.spectral", + "provider": "pants" + }, + "pants.backend.experimental.python": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.django": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.framework.django", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.stevedore": { + "description": "A python \"framework\" for apps to dynamically load plugins.\n\nSee https://github.com/openstack/stevedore for details.", + "enabled": true, + "name": "pants.backend.experimental.python.framework.stevedore", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.add_trailing_comma": { + "description": "Autoformatter to automatically add trailing commas to calls and literals.\n\nSee https://github.com/asottile/add-trailing-comma for details.", + "enabled": true, + "name": "pants.backend.experimental.python.lint.add_trailing_comma", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.autoflake": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.pyupgrade": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.ruff": { + "description": "Linter & formatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://github.com/charliermarsh/ruff", + "enabled": true, + "name": "pants.backend.experimental.python.lint.ruff", + "provider": "pants" + }, + "pants.backend.experimental.python.packaging.pyoxidizer": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python.packaging.pyoxidizer", + "provider": "pants" + }, + "pants.backend.experimental.python.typecheck.pyright": { + "description": "Static type checker for Python, running on NodeJS.\n\nSee https://github.com/Microsoft/pyright for details.", + "enabled": false, + "name": "pants.backend.experimental.python.typecheck.pyright", + "provider": "pants" + }, + "pants.backend.experimental.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala", + "provider": "pants" + }, + "pants.backend.experimental.scala.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.scala.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.scala.lint.scalafmt": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala.lint.scalafmt", + "provider": "pants" + }, + "pants.backend.experimental.swift": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.swift", + "provider": "pants" + }, + "pants.backend.experimental.terraform": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.terraform", + "provider": "pants" + }, + "pants.backend.experimental.tools.workunit_logger": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.tools.workunit_logger", + "provider": "pants" + }, + "pants.backend.experimental.tools.yamllint": { + "description": "A configurable linter for YAML files.\n\nSee https://yamllint.readthedocs.io/ for details.", + "enabled": true, + "name": "pants.backend.experimental.tools.yamllint", + "provider": "pants" + }, + "pants.backend.experimental.visibility": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.visibility", + "provider": "pants" + }, + "pants.backend.google_cloud_function.python": { + "description": "Create Google Cloud Functions from Python code.\n\nSee https://www.pantsbuild.org/docs/google-cloud-function-python.", + "enabled": true, + "name": "pants.backend.google_cloud_function.python", + "provider": "pants" + }, + "pants.backend.plugin_development": { + "description": "", + "enabled": true, + "name": "pants.backend.plugin_development", + "provider": "pants" + }, + "pants.backend.project_info": { + "description": "Information on your project, such as listing the targets in your project.", + "enabled": true, + "name": "pants.backend.project_info", + "provider": "pants" + }, + "pants.backend.python": { + "description": "Support for Python.\n\nSee https://www.pantsbuild.org/docs/python-backend.", + "enabled": true, + "name": "pants.backend.python", + "provider": "pants" + }, + "pants.backend.python.lint.autoflake": { + "description": "Autoformatter for removing unused Python imports.\n\nSee https://github.com/myint/autoflake for details.", + "enabled": true, + "name": "pants.backend.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.python.lint.bandit": { + "description": "Security linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://bandit.readthedocs.io/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.bandit", + "provider": "pants" + }, + "pants.backend.python.lint.black": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://black.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.black", + "provider": "pants" + }, + "pants.backend.python.lint.docformatter": { + "description": "Python autoformatter for PEP257 docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/myint/docformatter.", + "enabled": true, + "name": "pants.backend.python.lint.docformatter", + "provider": "pants" + }, + "pants.backend.python.lint.flake8": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://flake8.pycqa.org/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.flake8", + "provider": "pants" + }, + "pants.backend.python.lint.isort": { + "description": "Autoformatter for Python import statements.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://pycqa.github.io/isort/.", + "enabled": true, + "name": "pants.backend.python.lint.isort", + "provider": "pants" + }, + "pants.backend.python.lint.pydocstyle": { + "description": "Static analysis tool for checking compliance with Python docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttp://www.pydocstyle.org/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.pydocstyle", + "provider": "pants" + }, + "pants.backend.python.lint.pylint": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://www.pylint.org.", + "enabled": true, + "name": "pants.backend.python.lint.pylint", + "provider": "pants" + }, + "pants.backend.python.lint.pyupgrade": { + "description": "https://github.com/asottile/pyupgrade.\n\nA tool to automatically upgrade syntax for newer versions of the language.", + "enabled": true, + "name": "pants.backend.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.python.lint.yapf": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/google/yapf .", + "enabled": true, + "name": "pants.backend.python.lint.yapf", + "provider": "pants" + }, + "pants.backend.python.mixed_interpreter_constraints": { + "description": "", + "enabled": true, + "name": "pants.backend.python.mixed_interpreter_constraints", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv.custom_install": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv.custom_install", + "provider": "pants" + }, + "pants.backend.python.typecheck.mypy": { + "description": "Type checker for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://mypy.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.typecheck.mypy", + "provider": "pants" + }, + "pants.backend.shell": { + "description": "", + "enabled": true, + "name": "pants.backend.shell", + "provider": "pants" + }, + "pants.backend.shell.lint.shellcheck": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shellcheck", + "provider": "pants" + }, + "pants.backend.shell.lint.shfmt": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shfmt", + "provider": "pants" + }, + "pants.backend.tools.preamble": { + "description": "", + "enabled": true, + "name": "pants.backend.tools.preamble", + "provider": "pants" + }, + "pants.backend.tools.taplo": { + "description": "", + "enabled": false, + "name": "pants.backend.tools.taplo", + "provider": "pants" + }, + "pants.backend.url_handlers.s3": { + "description": "", + "enabled": false, + "name": "pants.backend.url_handlers.s3", + "provider": "pants" + }, + "pants.core": { + "description": "Core rules for Pants to operate correctly.\n\nThese are always activated and cannot be disabled.", + "enabled": true, + "name": "pants.core", + "provider": "pants" + } + }, + "name_to_build_file_info": { + "PANTS_VERSION": { + "documentation": null, + "is_target": false, + "name": "PANTS_VERSION", + "signature": null + }, + "__defaults__": { + "documentation": "Provide default field values.\n\nLearn more https://www.pantsbuild.org/v2.17/docs/targets#field-default-values", + "is_target": false, + "name": "__defaults__", + "signature": "(*args: 'SetDefaultsT', ignore_unknown_fields: 'bool' = False, ignore_unknown_targets: 'bool' = False, **kwargs) -> 'None'" + }, + "__dependencies_rules__": { + "documentation": "Declare dependencies rules.", + "is_target": false, + "name": "__dependencies_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "__dependents_rules__": { + "documentation": "Declare dependents rules.", + "is_target": false, + "name": "__dependents_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "_generator_sources_helper": { + "documentation": null, + "is_target": true, + "name": "_generator_sources_helper", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfile": { + "documentation": null, + "is_target": true, + "name": "_lockfile", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfiles": { + "documentation": null, + "is_target": true, + "name": "_lockfiles", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "adhoc_tool": { + "documentation": null, + "is_target": true, + "name": "adhoc_tool", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "archive": { + "documentation": null, + "is_target": true, + "name": "archive", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "build_file_dir": { + "documentation": "Returns the path to the directory of the current BUILD file.\n\nThe returned value is an instance of `PurePath` to make path name manipulations easy.\n\nSee: https://docs.python.org/3/library/pathlib.html#pathlib.PurePath", + "is_target": false, + "name": "build_file_dir", + "signature": "() -> 'PurePath'" + }, + "deploy_jar": { + "documentation": null, + "is_target": true, + "name": "deploy_jar", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_environment": { + "documentation": null, + "is_target": true, + "name": "docker_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_image": { + "documentation": null, + "is_target": true, + "name": "docker_image", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "duplicate_rule": { + "documentation": "DeployJarDuplicateRule(pattern: 'str', action: 'str')", + "is_target": false, + "name": "duplicate_rule", + "signature": "(pattern: 'str', action: 'str') -> None" + }, + "env": { + "documentation": "Reference environment variable.", + "is_target": false, + "name": "env", + "signature": "(name: 'str', *args, **kwargs) -> 'Any'" + }, + "experimental_run_shell_command": { + "documentation": null, + "is_target": true, + "name": "experimental_run_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_shell_command": { + "documentation": null, + "is_target": true, + "name": "experimental_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_test_shell_command": { + "documentation": null, + "is_target": true, + "name": "experimental_test_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_go_package_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_go_package_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_java_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_python_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_resources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_scala_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "file": { + "documentation": null, + "is_target": true, + "name": "file", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "files": { + "documentation": null, + "is_target": true, + "name": "files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_binary": { + "documentation": null, + "is_target": true, + "name": "go_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_mod": { + "documentation": null, + "is_target": true, + "name": "go_mod", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_package": { + "documentation": null, + "is_target": true, + "name": "go_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_third_party_package": { + "documentation": null, + "is_target": true, + "name": "go_third_party_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_artifact": { + "documentation": null, + "is_target": true, + "name": "helm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_chart": { + "documentation": null, + "is_target": true, + "name": "helm_chart", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_deployment": { + "documentation": null, + "is_target": true, + "name": "helm_deployment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_test": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_tests": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "http_source": { + "documentation": "http_source(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')", + "is_target": false, + "name": "http_source", + "signature": "(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')" + }, + "java_source": { + "documentation": null, + "is_target": true, + "name": "java_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "java_sources": { + "documentation": null, + "is_target": true, + "name": "java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_test": { + "documentation": null, + "is_target": true, + "name": "junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_tests": { + "documentation": null, + "is_target": true, + "name": "junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_artifact": { + "documentation": null, + "is_target": true, + "name": "jvm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_war": { + "documentation": null, + "is_target": true, + "name": "jvm_war", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_test": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_tests": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_source": { + "documentation": null, + "is_target": true, + "name": "kotlin_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlinc_plugin": { + "documentation": null, + "is_target": true, + "name": "kotlinc_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "local_environment": { + "documentation": null, + "is_target": true, + "name": "local_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_document": { + "documentation": null, + "is_target": true, + "name": "openapi_document", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_documents": { + "documentation": null, + "is_target": true, + "name": "openapi_documents", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_source": { + "documentation": null, + "is_target": true, + "name": "openapi_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_sources": { + "documentation": null, + "is_target": true, + "name": "openapi_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pants_requirements": { + "documentation": null, + "is_target": true, + "name": "pants_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "parametrize": { + "documentation": "A builtin function/dataclass that can be used to parametrize Targets.\n\nParametrization is applied between TargetAdaptor construction and Target instantiation, which\nmeans that individual Field instances need not be aware of it.", + "is_target": false, + "name": "parametrize", + "signature": "(*args: 'str', **kwargs: 'Any') -> 'None'" + }, + "per_platform": { + "documentation": "An object containing differing homogeneous platform-dependent values.\n\nThe values should be evaluated for the execution environment, and not the host environment\n(I.e. it should be evaluated in a `rule` which requests `Platform`).\n\nExpected usage is roughly:\n\n```python\nclass MyFieldType(...):\n value = str | per_platform[str]\n\n @classmethod\n def compute_value( # type: ignore[override]\n cls,\n raw_value: Optional[Union[str, per_platform[str]]],\n address: Address,\n ) -> Optional[Union[str, per_platform[str]]]:\n if isinstance(raw_value, per_platform):\n # NOTE: Ensure the values are homogenous\n raw_value.check_types(str)\n\n return raw_value\n\n...\n\n@rule\nasync def my_rule(..., platform: Platform) -> ...:\n field_value = target[MyFieldType].value\n\n if isinstance(field_value, per_platform):\n field_value = field_value.get_value_for_platform(platform)\n\n ...\n```\n\nNOTE: Support for this object should be heavily weighed, as it would be innaproriate to use in\ncertain contexts (such as the `source` field in a `foo_source` target, where the intent is to\nsupport differing source files based on platform. The result would be that dependency inference\n(and therefore the dependencies field) wouldn't be knowable on the host, which is not something\nthe engine can support yet).", + "is_target": false, + "name": "per_platform", + "signature": "(linux_arm64: '_T | None' = None, linux_x86_64: '_T | None' = None, macos_arm64: '_T | None' = None, macos_x86_64: '_T | None' = None) -> None" + }, + "pex_binaries": { + "documentation": null, + "is_target": true, + "name": "pex_binaries", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pex_binary": { + "documentation": null, + "is_target": true, + "name": "pex_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pipenv_requirements": { + "documentation": null, + "is_target": true, + "name": "pipenv_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "poetry_requirements": { + "documentation": null, + "is_target": true, + "name": "poetry_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_source": { + "documentation": null, + "is_target": true, + "name": "protobuf_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_sources": { + "documentation": null, + "is_target": true, + "name": "protobuf_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pyoxidizer_binary": { + "documentation": null, + "is_target": true, + "name": "pyoxidizer_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_artifact": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "python_artifact", + "signature": "(**kwargs) -> None" + }, + "python_awslambda": { + "documentation": null, + "is_target": true, + "name": "python_awslambda", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_distribution": { + "documentation": null, + "is_target": true, + "name": "python_distribution", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_google_cloud_function": { + "documentation": null, + "is_target": true, + "name": "python_google_cloud_function", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirement": { + "documentation": null, + "is_target": true, + "name": "python_requirement", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirements": { + "documentation": null, + "is_target": true, + "name": "python_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_source": { + "documentation": null, + "is_target": true, + "name": "python_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_sources": { + "documentation": null, + "is_target": true, + "name": "python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test": { + "documentation": null, + "is_target": true, + "name": "python_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test_utils": { + "documentation": null, + "is_target": true, + "name": "python_test_utils", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_tests": { + "documentation": null, + "is_target": true, + "name": "python_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "relocated_files": { + "documentation": null, + "is_target": true, + "name": "relocated_files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "remote_environment": { + "documentation": null, + "is_target": true, + "name": "remote_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resource": { + "documentation": null, + "is_target": true, + "name": "resource", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resources": { + "documentation": null, + "is_target": true, + "name": "resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "run_shell_command": { + "documentation": null, + "is_target": true, + "name": "run_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_junit_test": { + "documentation": null, + "is_target": true, + "name": "scala_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_junit_tests": { + "documentation": null, + "is_target": true, + "name": "scala_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_source": { + "documentation": null, + "is_target": true, + "name": "scala_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_sources": { + "documentation": null, + "is_target": true, + "name": "scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalac_plugin": { + "documentation": null, + "is_target": true, + "name": "scalac_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_test": { + "documentation": null, + "is_target": true, + "name": "scalatest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_tests": { + "documentation": null, + "is_target": true, + "name": "scalatest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "setup_py": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "setup_py", + "signature": "(**kwargs) -> None" + }, + "shading_keep": { + "documentation": "JvmShadingKeepRule(pattern: 'str')", + "is_target": false, + "name": "shading_keep", + "signature": "(pattern: 'str') -> None" + }, + "shading_relocate": { + "documentation": "JvmShadingRelocateRule(package: 'str', into: 'str | None' = None)", + "is_target": false, + "name": "shading_relocate", + "signature": "(package: 'str', into: 'str | None' = None) -> None" + }, + "shading_rename": { + "documentation": "JvmShadingRenameRule(pattern: 'str', replacement: 'str')", + "is_target": false, + "name": "shading_rename", + "signature": "(pattern: 'str', replacement: 'str') -> None" + }, + "shading_zap": { + "documentation": "JvmShadingZapRule(pattern: 'str')", + "is_target": false, + "name": "shading_zap", + "signature": "(pattern: 'str') -> None" + }, + "shell_command": { + "documentation": null, + "is_target": true, + "name": "shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_source": { + "documentation": null, + "is_target": true, + "name": "shell_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_sources": { + "documentation": null, + "is_target": true, + "name": "shell_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_test": { + "documentation": null, + "is_target": true, + "name": "shunit2_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_tests": { + "documentation": null, + "is_target": true, + "name": "shunit2_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "stevedore_namespace": { + "documentation": "str(object='') -> str\nstr(bytes_or_buffer[, encoding[, errors]]) -> str\n\nCreate a new string object from the given object. If encoding or\nerrors is specified, then the object must expose a data buffer\nthat will be decoded using the given encoding and error handler.\nOtherwise, returns the result of object.__str__() (if defined)\nor repr(object).\nencoding defaults to sys.getdefaultencoding().\nerrors defaults to 'strict'.", + "is_target": false, + "name": "stevedore_namespace", + "signature": null + }, + "system_binary": { + "documentation": null, + "is_target": true, + "name": "system_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "target": { + "documentation": null, + "is_target": true, + "name": "target", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "terraform_module": { + "documentation": null, + "is_target": true, + "name": "terraform_module", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_source": { + "documentation": null, + "is_target": true, + "name": "thrift_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_sources": { + "documentation": null, + "is_target": true, + "name": "thrift_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "vcs_version": { + "documentation": null, + "is_target": true, + "name": "vcs_version", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + } + }, + "name_to_goal_info": { + "check": { + "consumed_scopes": ["", "check", "environments-preview", "filter"], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": ["", "dependents", "environments-preview", "filter"], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": ["", "dependencies", "environments-preview", "filter"], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "dependents": { + "consumed_scopes": ["", "dependents", "environments-preview", "filter"], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.core" + }, + "experimental-deploy": { + "consumed_scopes": [ + "", + "environments-preview", + "experimental-deploy", + "filter" + ], + "description": "Perform a deployment process.", + "is_implemented": true, + "name": "experimental-deploy", + "provider": "pants.core" + }, + "experimental-explorer": { + "consumed_scopes": [], + "description": "Run the Pants Explorer Web UI server.", + "is_implemented": true, + "name": "experimental-explorer", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": ["", "environments-preview", "export", "filter"], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": ["", "environments-preview", "filter"], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.core" + }, + "filedeps": { + "consumed_scopes": ["", "environments-preview", "filedeps", "filter"], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "fix": { + "consumed_scopes": ["", "environments-preview", "filter", "fix"], + "description": "Autofix source code.", + "is_implemented": true, + "name": "fix", + "provider": "pants.core" + }, + "fmt": { + "consumed_scopes": ["", "environments-preview", "filter", "fmt"], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": ["", "environments-preview", "generate-lockfiles"], + "description": "Generate lockfiles for third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "go-generate": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "go-generate", + "go-test", + "golang" + ], + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the //go:generate directives.\n\nSee https://go.dev/blog/generate for details.", + "is_implemented": true, + "name": "go-generate", + "provider": "pants.backend.experimental.go" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": ["", "environments-preview", "filter", "lint"], + "description": "Run linters/formatters/fixers in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": ["", "environments-preview", "filter", "list"], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": ["", "environments-preview", "filter"], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": ["", "environments-preview", "filter", "paths"], + "description": "List the paths between two addresses.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": ["", "environments-preview", "filter", "peek"], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": ["", "environments-preview", "filter", "publish"], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "python-dump-source-analysis": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "pex", + "pex-cli", + "python", + "python-bootstrap", + "python-dump-source-analysis", + "python-infer", + "python-native-code", + "source", + "subprocess-environment" + ], + "description": "Dump source analysis for python_source targets.", + "is_implemented": true, + "name": "python-dump-source-analysis", + "provider": "pants.backend.experimental.python" + }, + "repl": { + "consumed_scopes": ["", "environments-preview", "filter", "repl"], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": ["roots", "source"], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": ["", "environments-preview", "filter", "tailor"], + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.17/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_rule_info": { + "construct_env_aware_scope_apache_thrift": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["ApacheThriftSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_apache_thrift", + "output_type": "EnvironmentAware", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_env_aware_scope_docker": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["DockerOptions", "EnvironmentTarget"], + "name": "construct_env_aware_scope_docker", + "output_type": "EnvironmentAware", + "provider": "pants.backend.docker" + }, + "construct_env_aware_scope_go_generate": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["GoGenerateGoalSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_go_generate", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_golang": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["GolangSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_golang", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_jvm": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["JvmSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_jvm", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.java" + }, + "construct_env_aware_scope_nodejs": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["NodeJS", "EnvironmentTarget"], + "name": "construct_env_aware_scope_nodejs", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_env_aware_scope_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["PexSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_pex", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["PythonBootstrapSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_python_bootstrap", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_native_code": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["PythonNativeCodeSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_python_native_code", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_shell_setup": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["ShellSetup", "EnvironmentTarget"], + "name": "construct_env_aware_scope_shell_setup", + "output_type": "EnvironmentAware", + "provider": "pants.backend.shell" + }, + "construct_env_aware_scope_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["SubprocessEnvironment", "EnvironmentTarget"], + "name": "construct_env_aware_scope_subprocess_environment", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_test": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["TestSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_test", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_scope_": { + "description": null, + "documentation": "Options to control the overall behavior of Pants.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_", + "output_type": "GlobalOptions", + "provider": "pants.core" + }, + "construct_scope_add_trailing_comma": { + "description": null, + "documentation": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_add_trailing_comma", + "output_type": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "construct_scope_anonymous_telemetry": { + "description": null, + "documentation": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + }, + "construct_scope_apache_thrift": { + "description": null, + "documentation": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_autoflake": { + "description": null, + "documentation": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_autoflake", + "output_type": "Autoflake", + "provider": "pants.backend.python.lint.autoflake" + }, + "construct_scope_bandit": { + "description": null, + "documentation": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_bandit", + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + }, + "construct_scope_black": { + "description": null, + "documentation": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_black", + "output_type": "Black", + "provider": "pants.core" + }, + "construct_scope_buf": { + "description": null, + "documentation": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_buf", + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "construct_scope_build_deprecations_fixer": { + "description": null, + "documentation": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for: - Renamed targets - Renamed fields", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_build_deprecations_fixer", + "output_type": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "construct_scope_buildifier": { + "description": null, + "documentation": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_buildifier", + "output_type": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "construct_scope_check": { + "description": null, + "documentation": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_check", + "output_type": "CheckSubsystem", + "provider": "pants.core" + }, + "construct_scope_count_loc": { + "description": null, + "documentation": "Count lines of code.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_count_loc", + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_coursier": { + "description": null, + "documentation": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_coursier", + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_coverage_py": { + "description": null, + "documentation": "Configuration for Python test coverage measurement.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_debug_adapter": { + "description": null, + "documentation": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_debug_adapter", + "output_type": "DebugAdapterSubsystem", + "provider": "pants.core" + }, + "construct_scope_debugpy": { + "description": null, + "documentation": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_debugpy", + "output_type": "DebugPy", + "provider": "pants.backend.python" + }, + "construct_scope_dependencies": { + "description": null, + "documentation": "List the dependencies of the input files/targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_dependencies", + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_dependents": { + "description": null, + "documentation": "List all targets that depend on any of the input files/targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_dependents", + "output_type": "DependentsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_docformatter": { + "description": null, + "documentation": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_docformatter", + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + }, + "construct_scope_docker": { + "description": null, + "documentation": "Options for interacting with Docker.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_docker", + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + }, + "construct_scope_dockerfile_parser": { + "description": null, + "documentation": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + }, + "construct_scope_download_terraform": { + "description": null, + "documentation": "Terraform (https://terraform.io)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_experimental_bsp": { + "description": null, + "documentation": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_experimental_bsp", + "output_type": "BSPGoal", + "provider": "pants.core" + }, + "construct_scope_experimental_deploy": { + "description": null, + "documentation": "Perform a deployment process.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_experimental_deploy", + "output_type": "DeploySubsystem", + "provider": "pants.core" + }, + "construct_scope_export": { + "description": null, + "documentation": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_export", + "output_type": "ExportSubsystem", + "provider": "pants.core" + }, + "construct_scope_export_codegen": { + "description": null, + "documentation": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_type": "ExportCodegenSubsystem", + "provider": "pants.core" + }, + "construct_scope_filedeps": { + "description": null, + "documentation": "List all source and BUILD files a target depends on.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_filedeps", + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_filter": { + "description": null, + "documentation": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_filter", + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_fix": { + "description": null, + "documentation": "Autofix source code.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_fix", + "output_type": "FixSubsystem", + "provider": "pants.core" + }, + "construct_scope_flake8": { + "description": null, + "documentation": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_flake8", + "output_type": "Flake8", + "provider": "pants.backend.python.lint.flake8" + }, + "construct_scope_fmt": { + "description": null, + "documentation": "Autoformat source code.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_fmt", + "output_type": "FmtSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_lockfiles": { + "description": null, + "documentation": "Generate lockfiles for third-party dependencies.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_go_generate": { + "description": null, + "documentation": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the //go:generate directives.\n\nSee https://go.dev/blog/generate for details.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_go_generate", + "output_type": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_go_test": { + "description": null, + "documentation": "Options for Go tests.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_go_test", + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_gofmt": { + "description": null, + "documentation": "Gofmt-specific options.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_gofmt", + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_golang": { + "description": null, + "documentation": "Options for Golang support.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_golang", + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_google_java_format": { + "description": null, + "documentation": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "construct_scope_grpc_python_plugin": { + "description": null, + "documentation": "The gRPC Protobuf plugin for Python.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_hadolint": { + "description": null, + "documentation": "A linter for Dockerfiles.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_hadolint", + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + }, + "construct_scope_helm": { + "description": null, + "documentation": "The Helm command line (https://helm.sh)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm", + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_k8s_parser": { + "description": null, + "documentation": "Analyses K8S manifests rendered by Helm.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm_k8s_parser", + "output_type": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_post_renderer": { + "description": null, + "documentation": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm_post_renderer", + "output_type": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_unittest": { + "description": null, + "documentation": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm_unittest", + "output_type": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_ipython": { + "description": null, + "documentation": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_ipython", + "output_type": "IPython", + "provider": "pants.backend.python" + }, + "construct_scope_isort": { + "description": null, + "documentation": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_isort", + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + }, + "construct_scope_jarjar": { + "description": null, + "documentation": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_jarjar", + "output_type": "JarJar", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_java_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_java_infer", + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_javac": { + "description": null, + "documentation": "The javac Java source compiler.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_javac", + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_junit": { + "description": null, + "documentation": "The JUnit test framework (https://junit.org)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_junit", + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_jvm": { + "description": null, + "documentation": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_jvm", + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_kotlin": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_kotlin", + "output_type": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlin_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Kotlin targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_kotlin_infer", + "output_type": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlinc": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_kotlinc", + "output_type": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_ktlint": { + "description": null, + "documentation": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_ktlint", + "output_type": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "construct_scope_lambdex": { + "description": null, + "documentation": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_lambdex", + "output_type": "Lambdex", + "provider": "pants.backend.awslambda.python" + }, + "construct_scope_lint": { + "description": null, + "documentation": "Run linters/formatters/fixers in check mode.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_lint", + "output_type": "LintSubsystem", + "provider": "pants.core" + }, + "construct_scope_list": { + "description": null, + "documentation": "Lists all targets matching the file or target arguments.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_list", + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_mypy": { + "description": null, + "documentation": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_mypy", + "output_type": "MyPy", + "provider": "pants.backend.python.typecheck.mypy" + }, + "construct_scope_mypy_protobuf": { + "description": null, + "documentation": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_nodejs": { + "description": null, + "documentation": "The Node.js Javascript runtime (including Corepack).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_nodejs", + "output_type": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_openapi": { + "description": null, + "documentation": "The OpenAPI Specification (https://swagger.io/specification/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_openapi", + "output_type": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi" + }, + "construct_scope_package": { + "description": null, + "documentation": "Create a distributable package.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_package", + "output_type": "PackageSubsystem", + "provider": "pants.core" + }, + "construct_scope_paths": { + "description": null, + "documentation": "List the paths between two addresses.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_paths", + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_peek": { + "description": null, + "documentation": "Display BUILD target info", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_peek", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_pex": { + "description": null, + "documentation": "How Pants uses Pex to run Python subprocesses.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pex", + "output_type": "PexSubsystem", + "provider": "pants.core" + }, + "construct_scope_pex_binary_defaults": { + "description": null, + "documentation": "Default settings for creating PEX executables.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + }, + "construct_scope_pex_cli": { + "description": null, + "documentation": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_type": "PexCli", + "provider": "pants.core" + }, + "construct_scope_preamble": { + "description": null, + "documentation": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's string.Template substitutions): - $year: The current year (only used when actually writing the year to the file).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_preamble", + "output_type": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble" + }, + "construct_scope_protobuf_java_grpc": { + "description": null, + "documentation": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_protobuf_java_grpc", + "output_type": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "construct_scope_protoc": { + "description": null, + "documentation": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_protoc", + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_publish": { + "description": null, + "documentation": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_publish", + "output_type": "PublishSubsystem", + "provider": "pants.core" + }, + "construct_scope_py_constraints": { + "description": null, + "documentation": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "construct_scope_pydocstyle": { + "description": null, + "documentation": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pydocstyle", + "output_type": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "construct_scope_pylint": { + "description": null, + "documentation": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pylint", + "output_type": "Pylint", + "provider": "pants.backend.python.lint.pylint" + }, + "construct_scope_pyoxidizer": { + "description": null, + "documentation": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "construct_scope_pytest": { + "description": null, + "documentation": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pytest", + "output_type": "PyTest", + "provider": "pants.backend.python" + }, + "construct_scope_python": { + "description": null, + "documentation": "Options for Pants's Python backend.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python", + "output_type": "PythonSetup", + "provider": "pants.core" + }, + "construct_scope_python_bootstrap": { + "description": null, + "documentation": "Options used to locate Python interpreters\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_dump_source_analysis": { + "description": null, + "documentation": "Dump source analysis for python_source targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_dump_source_analysis", + "output_type": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_python_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_infer", + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_python_native_code": { + "description": null, + "documentation": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_type": "PythonNativeCodeSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_protobuf": { + "description": null, + "documentation": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.17/docs/protobuf-python.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_python_repos": { + "description": null, + "documentation": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_repos", + "output_type": "PythonRepos", + "provider": "pants.core" + }, + "construct_scope_python_thrift": { + "description": null, + "documentation": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_pyupgrade": { + "description": null, + "documentation": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_type": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "construct_scope_regex_lint": { + "description": null, + "documentation": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_repl": { + "description": null, + "documentation": "Open a REPL with the specified code loadable.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_repl", + "output_type": "ReplSubsystem", + "provider": "pants.core" + }, + "construct_scope_roots": { + "description": null, + "documentation": "List the repo's registered source roots.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_roots", + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_ruff": { + "description": null, + "documentation": "The Ruff Python formatter (https://github.com/charliermarsh/ruff).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_ruff", + "output_type": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "construct_scope_run": { + "description": null, + "documentation": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_run", + "output_type": "RunSubsystem", + "provider": "pants.core" + }, + "construct_scope_scala": { + "description": null, + "documentation": "Scala programming language", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scala", + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scala_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalac": { + "description": null, + "documentation": "The Scala compiler.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalac", + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalafmt": { + "description": null, + "documentation": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "construct_scope_scalapb": { + "description": null, + "documentation": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalapb", + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "construct_scope_scalatest": { + "description": null, + "documentation": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalatest", + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scc": { + "description": null, + "documentation": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scc", + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + }, + "construct_scope_setup_py_generation": { + "description": null, + "documentation": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools": { + "description": null, + "documentation": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_setuptools", + "output_type": "Setuptools", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools_scm": { + "description": null, + "documentation": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_setuptools_scm", + "output_type": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_shell_setup": { + "description": null, + "documentation": "Options for Pants's Shell support.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + }, + "construct_scope_shell_test": { + "description": null, + "documentation": "Options for Pants' Shell test support.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shell_test", + "output_type": "ShellTestSubsystem", + "provider": "pants.backend.shell" + }, + "construct_scope_shellcheck": { + "description": null, + "documentation": "A linter for shell scripts.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + }, + "construct_scope_shfmt": { + "description": null, + "documentation": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shfmt", + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + }, + "construct_scope_shunit2": { + "description": null, + "documentation": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shunit2", + "output_type": "Shunit2", + "provider": "pants.backend.shell" + }, + "construct_scope_source": { + "description": null, + "documentation": "Configuration for roots of source trees.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_source", + "output_type": "SourceRootConfig", + "provider": "pants.core" + }, + "construct_scope_spectral": { + "description": null, + "documentation": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_spectral", + "output_type": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_stats": { + "description": null, + "documentation": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_stats", + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + }, + "construct_scope_subprocess_environment": { + "description": null, + "documentation": "Environment settings for forked subprocesses.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + }, + "construct_scope_tailor": { + "description": null, + "documentation": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_tailor", + "output_type": "TailorSubsystem", + "provider": "pants.core" + }, + "construct_scope_terraform_fmt": { + "description": null, + "documentation": "Terraform fmt options.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_hcl2_parser": { + "description": null, + "documentation": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_validate": { + "description": null, + "documentation": "Terraform validate options.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_test": { + "description": null, + "documentation": "Run tests.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_test", + "output_type": "TestSubsystem", + "provider": "pants.core" + }, + "construct_scope_thrift": { + "description": null, + "documentation": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_thrift", + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_twine": { + "description": null, + "documentation": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_twine", + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_update_build_files": { + "description": null, + "documentation": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.17/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_workunit_logger": { + "description": null, + "documentation": "Workunit Logger subsystem. Useful for debugging pants itself.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_workunit_logger", + "output_type": "WorkunitLogger", + "provider": "pants.backend.experimental.tools.workunit_logger" + }, + "construct_scope_yamllint": { + "description": null, + "documentation": "A linter for YAML files (https://yamllint.readthedocs.io)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_yamllint", + "output_type": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "construct_scope_yapf": { + "description": null, + "documentation": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_yapf", + "output_type": "Yapf", + "provider": "pants.core" + }, + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request": { + "description": "Running run_in_sandbox target", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunInSandboxRequest, {EnvironmentName: .., RunFieldSet: ..})", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., AdhocProcessRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateFilesFromAdhocToolRequest"], + "name": "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["SystemBinaryFieldSet"], + "name": "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.awslambda.python.rules.package_python_awslambda": { + "description": "Create Python AWS Lambda", + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, BuildLambdexRequest, ..)", + "Get(BuiltPackage, BuildPythonFaaSRequest, ..)" + ], + "input_types": ["PythonAwsLambdaFieldSet", "Lambdex"], + "name": "pants.backend.awslambda.python.rules.package_python_awslambda", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RegisteredTargetTypes", "UnionMembership"], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix": { + "description": "Fix deprecated field names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RenameFieldsInFileRequest", "RenamedFieldTypes"], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RegisteredTargetTypes"], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix": { + "description": "Fix deprecated target type names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RenameTargetsInFileRequest", "RenamedTargetTypes"], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fmt.black.register.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Black"], + "name": "pants.backend.build_files.fmt.black.register.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.black" + }, + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt": { + "description": "Format with Buildifier", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Buildifier", "Platform"], + "name": "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "pants.backend.build_files.fmt.yapf.register.yapf_fmt": { + "description": "Format with Yapf", + "documentation": null, + "input_gets": [ + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Yapf"], + "name": "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Yapf", "BuildFileOptions"], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.codegen.export_codegen_goal.export_codegen": { + "description": "`export-codegen` goal", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "FilteredTargets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_type": "ExportCodegen", + "provider": "pants.core" + }, + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf": { + "description": "Generate Go source files from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets": { + "description": "Map import paths for all Go Protobuf targets.", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "ProtobufGoModuleImportPathsMappingsHook", + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": ["GoCodegenBuildProtobufRequest"], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "PackageAnalyzerSetup", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProtobufJavaRuntimeForResolve, ProtobufJavaRuntimeForResolveRequest, ..)", + "Get(ProtobufJavaGrpcRuntimeForResolve, ProtobufJavaGrpcRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferProtobufJavaRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaGrpcRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "output_type": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "output_type": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GrpcJavaToolLockfileSentinel", + "JavaProtobufGrpcSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf": { + "description": "Generate Java from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc", + "ProtobufJavaGrpcPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GrpcJavaToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["Platform"], + "name": "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "output_type": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "BufSubsystem"], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format": { + "description": "Format with buf format", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "BufSubsystem", "DiffBinary", "Platform"], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_type": "FixResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "BufSubsystem"], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf": { + "description": "Lint with buf lint", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "BufSubsystem", "Platform"], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_type": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies": { + "description": "Inferring Protobuf dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["InferProtobufDependencies", "ProtobufMapping", "Protoc"], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files": { + "description": "Creating map of Protobuf file names to Protobuf targets", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": ["AllProtobufTargets"], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules": { + "description": "Creating map of Protobuf targets to generated Python modules", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf": { + "description": "Generate Python from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaPBRuntimeForResolve, ScalaPBRuntimeForResolveRequest, ..)" + ], + "input_types": ["InferScalaPBRuntimeDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPBRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "output_type": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf": { + "description": "Generate Scala from Protobuf", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalapbcToolLockfileSentinel", "ScalaPBSubsystem"], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": ["MaterializeJvmPluginRequest"], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["MaterializeJvmPluginsRequest"], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["ScalaPBSubsystem", "InternalJdk"], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.tailor.find_putative_targets": { + "description": "Determine candidate Protobuf targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets": { + "description": "Find all Protobuf targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GeneratorSettingsRequest", "Protoc"], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules": { + "description": "Creating map of Thrift targets to generated Python modules", + "documentation": null, + "input_gets": ["Get(ParsedThrift, ParsedThriftRequest, ..)"], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift": { + "description": "Generate Python from Thrift", + "documentation": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["GenerateThriftSourcesRequest", "ApacheThriftSetup"], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem", + "EnvironmentAware", + "EnvironmentTarget" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies": { + "description": "Inferring Thrift dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files": { + "description": "Creating map of Thrift file names to Thrift targets", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": ["AllThriftTargets"], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets": { + "description": "Determine candidate Thrift targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets": { + "description": "Find all Thrift targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GeneratorSettingsRequest", "ThriftSubsystem"], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["ParsedThriftRequest"], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.docker.goals.package_image.build_docker_image": { + "description": null, + "documentation": "Build a Docker image using `docker build`.", + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "DockerPackageFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "KeepSandboxes", + "UnionMembership" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.publish.push_docker_images": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerRunFieldSet", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.tailor.find_putative_targets": { + "description": "Determine candidate Docker targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.lint.hadolint.rules.run_hadolint": { + "description": "Lint with Hadolint", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "Hadolint", "Platform"], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_type": "LintResult", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": ["DockerfileInfoRequest"], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["DockerfileParser"], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": ["Get(Process, VenvPexProcess, ..)"], + "input_types": ["DockerfileParseRequest", "ParserSetup"], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.target_types.all_docker_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.docker.target_types.all_docker_targets", + "output_type": "AllDockerImageTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies": { + "description": null, + "documentation": "Inspects the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": ["InferDockerDependencies", "AllPackageableTargets"], + "name": "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.get_docker": { + "description": "Finding the `docker` binary and related tooling", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": ["DockerOptions", "EnvironmentAware"], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_args.docker_build_args": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DockerBuildArgsRequest", "DockerOptions"], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": ["DockerBuildContextRequest"], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GenerateDockerContextFiles"], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile": { + "description": null, + "documentation": null, + "input_gets": ["Get(Snapshot, CreateDigest, ..)"], + "input_types": ["GenerateDockerfileRequest"], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)" + ], + "input_types": [ + "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.go_sources.load_go_binary.setup_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": ["LoadedGoBinaryRequest", "GoRoot"], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.check.check_go": { + "description": "Check Go compilation", + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": ["GoCheckRequest"], + "name": "pants.backend.go.goals.check.check_go", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.go_generate": { + "description": "`go-generate` goal", + "documentation": null, + "input_gets": [ + "Get(RunPackageGeneratorsResult, RunPackageGeneratorsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["Targets", "Workspace"], + "name": "pants.backend.go.goals.generate.go_generate", + "output_type": "GoGenerateGoal", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.merge_digests_with_overwrite": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["OverwriteMergeDigests"], + "name": "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "output_type": "Digest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.run_go_package_generators": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, OverwriteMergeDigests, ..)" + ], + "input_types": [ + "RunPackageGeneratorsRequest", + "GoRoot", + "EnvironmentAware" + ], + "name": "pants.backend.go.goals.generate.run_go_package_generators", + "output_type": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.package_binary.package_go_binary": { + "description": "Package Go binary", + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["GoBinaryFieldSet"], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.create_go_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": ["Get(BuiltPackage, PackageFieldSet, ..)"], + "input_types": ["GoBinaryFieldSet"], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_package_target": { + "description": null, + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": ["FindPutativeGoPackageTargetRequest", "AllOwnedSources"], + "name": "pants.backend.go.goals.tailor.find_putative_go_package_target", + "output_type": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_targets": { + "description": "Determine candidate Go targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FindPutativeGoPackageTargetResult, FindPutativeGoPackageTargetRequest, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources", + "GolangSubsystem" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.prepare_go_test_binary": { + "description": "Prepare Go test binary", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(GenerateCoverageSetupCodeResult, GenerateCoverageSetupCodeRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": ["PrepareGoTestBinaryRequest", "PackageAnalyzerSetup"], + "name": "pants.backend.go.goals.test.prepare_go_test_binary", + "output_type": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.run_go_tests": { + "description": "Test with Go", + "documentation": null, + "input_gets": [ + "Get(FalliblePrepareGoTestBinaryResult, PrepareGoTestBinaryRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "GoTestSubsystem", + "TestExtraEnv", + "GoRoot" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.lint.gofmt.rules.gofmt_fmt": { + "description": "Format with gofmt", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "GofmtSubsystem", "GoRoot"], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.generate_targets_from_go_mod": { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "documentation": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": ["GenerateTargetsFromGoModRequest", "UnionMembership"], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_map_import_paths_by_module": { + "description": "Analyze and map Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis": { + "description": "Analyze Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMappings, GoModuleImportPathsMappingsHook, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.backend.go.target_type_rules.go_merge_import_paths_analysis", + "output_type": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_dependencies": { + "description": "Infer dependencies for first-party Go packages", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": ["InferGoPackageDependenciesRequest"], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies": { + "description": "Infer dependencies for third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": ["InferGoThirdPartyPackageDependenciesRequest"], + "name": "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.map_import_paths_to_packages": { + "description": "Map Go targets owned by module to import paths", + "documentation": null, + "input_gets": [], + "input_types": [ + "GoImportPathMappingRequest", + "AllGoModuleImportPathsMappings" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_type": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["AssembleGoAssemblyFilesRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "output_type": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["GenerateAssemblySymabisRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "output_type": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary": { + "description": "Determine first-party package used by `go_binary` target", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["GoBinaryMainPackageRequest"], + "name": "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": ["InferGoBinaryMainDependencyRequest"], + "name": "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "GoBuildOptionsFromTargetRequest", + "GoRoot", + "GolangSubsystem", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "output_type": "GoBuildOptions", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.build_go_package": { + "description": "Compile with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(ApplyCodeCoverageResult, ApplyCodeCoverageRequest, ..)", + "Get(CheckForGolangAssemblyResult, CheckForGolangAssemblyRequest, ..)", + "Get(CGoCompileResult, CGoCompileRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleGenerateAssemblySymabisResult, GenerateAssemblySymabisRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(FallibleAssembleGoAssemblyFilesResult, AssembleGoAssemblyFilesRequest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["BuildGoPackageRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly": { + "description": null, + "documentation": "Return true if any of the given `s_files` look like it could be a Golang-format assembly\nlanguage file.\n\nThis is used by the cgo rules as a heuristic to determine if the user is passing Golang assembly\nformat instead of gcc assembly format.", + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["CheckForGolangAssemblyRequest", "SetupAsmCheckBinary"], + "name": "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "output_type": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id": { + "description": null, + "documentation": null, + "input_gets": ["Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)"], + "input_types": ["GoCompileActionIdRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.render_embed_config": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["RenderEmbedConfigRequest"], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.required_built_go_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FallibleBuiltGoPackage"], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "output_type": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FallibleBuildGoPackageRequest"], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["_ResolveStdlibEmbedConfigRequest"], + "name": "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "output_type": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request": { + "description": "Set up Go compilation request", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(_ResolveStdlibEmbedConfigResult, _ResolveStdlibEmbedConfigRequest, ..)" + ], + "input_types": ["BuildGoPackageRequestForStdlibRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.cgo_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CGoPkgConfigFlagsResult, CGoPkgConfigFlagsRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(BashBinary)", + "Get(CGoCompilerWrapperScript)", + "Get(SetupCompilerCmdResult, SetupCompilerCmdRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": ["CGoCompileRequest", "GoRoot", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.cgo.cgo_compile_request", + "output_type": "CGoCompileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.cgo_wrapper_compile_script_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "CGoCompilerWrapperScriptRequest", + "CGoCompilerWrapperScript" + ], + "name": "pants.backend.go.util_rules.cgo.cgo_wrapper_compile_script_request", + "output_type": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["CheckCompilerSupportsFlagRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "output_type": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": [], + "name": "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "output_type": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.setup_compiler_cmd": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CheckCompilerSupportsOptionResult, CheckCompilerSupportsFlagRequest, ..)" + ], + "input_types": ["SetupCompilerCmdRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "output_type": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path": { + "description": null, + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["CGoBinaryPathRequest", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "output_type": "BinaryPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["CGoPkgConfigFlagsRequest"], + "name": "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "output_type": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["GenerateCoverageSetupCodeRequest"], + "name": "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "output_type": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(ApplyCodeCoverageToFileResult, ApplyCodeCoverageToFileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ApplyCodeCoverageRequest"], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "output_type": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["ApplyCodeCoverageToFileRequest"], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "output_type": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": ["RenderGoCoverageProfileToHtmlRequest"], + "name": "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "output_type": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports": { + "description": "Merge Go coverage data", + "documentation": null, + "input_gets": [ + "Get(RenderGoCoverageReportResult, RenderGoCoverageReportRequest, ..)" + ], + "input_types": ["GoCoverageDataCollection"], + "name": "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(RenderGoCoverageProfileToHtmlResult, RenderGoCoverageProfileToHtmlRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "RenderGoCoverageReportRequest", + "DistDir", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "output_type": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["FirstPartyPkgAnalysisRequest", "PackageAnalyzerSetup"], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": ["FirstPartyPkgImportPathRequest"], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["FirstPartyPkgDigestRequest"], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(PathEnvironmentVariable)" + ], + "input_types": ["GolangSubsystem", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "output_type": "GoBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.determine_go_mod_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["GoModInfoRequest"], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets": { + "description": "Find all `go_mod` targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllUnexpandedTargets"], + "name": "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "output_type": "AllGoModTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod": { + "description": null, + "documentation": null, + "input_gets": ["Get(UnexpandedTargets, RawSpecs, ..)"], + "input_types": ["NearestAncestorGoModRequest"], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "output_type": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_owning_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(NearestAncestorGoModResult, NearestAncestorGoModRequest, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(Address, AddressInput, ..)" + ], + "input_types": ["OwningGoModRequest", "AllGoModTargets"], + "name": "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.goroot.setup_goroot": { + "description": "Find Go binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["GolangSubsystem", "GoBootstrap", "EnvironmentTarget"], + "name": "pants.backend.go.util_rules.goroot.setup_goroot", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltGoPackage, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["SdkImplicitLinkerDependenciesHook"], + "name": "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "output_type": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages": { + "description": "Analyze Go standard library packages.", + "documentation": null, + "input_gets": ["Get(ProcessResult, GoSdkProcess, ..)"], + "input_types": ["GoStdLibPackagesRequest"], + "name": "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "output_type": "GoStdLibPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_config.generate_import_config": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["ImportConfigRequest"], + "name": "pants.backend.go.util_rules.import_config.generate_import_config", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.link_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ImplicitLinkerDependencies, ImplicitLinkerDependenciesHook, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["LinkGoBinaryRequest", "LinkerSetup", "UnionMembership"], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.setup_go_linker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["BashBinary", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.link.setup_go_linker", + "output_type": "LinkerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer": { + "description": null, + "documentation": null, + "input_gets": ["Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)"], + "input_types": ["GoRoot"], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.compute_go_tool_id": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, GoSdkProcess, ..)"], + "input_types": ["GoSdkToolIDRequest"], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["GoRoot"], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.setup_go_sdk_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "EnvironmentAware", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.tests_analysis.generate_testmain": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["GenerateTestMainRequest"], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": ["AnalyzeThirdPartyModuleRequest", "PackageAnalyzerSetup"], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["AnalyzeThirdPartyPackageRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, GoSdkProcess, ..)"], + "input_types": ["ModuleDescriptorsRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages": { + "description": "Download and analyze all third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": ["AllThirdPartyPackagesRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.extract_package_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": ["ThirdPartyPkgAnalysisRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function": { + "description": "Create Python Google Cloud Function", + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, BuildLambdexRequest, ..)", + "Get(BuiltPackage, BuildPythonFaaSRequest, ..)" + ], + "input_types": ["PythonGoogleCloudFunctionFieldSet", "Lambdex"], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping": { + "description": null, + "documentation": null, + "input_gets": ["Get(HelmChartMetadata, HelmChartMetaSourceField, ..)"], + "input_types": ["AllHelmChartTargets"], + "name": "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "output_type": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata": { + "description": "Inferring Helm chart dependencies", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "InferHelmChartDependenciesRequest", + "FirstPartyHelmChartMapping", + "ThirdPartyHelmArtifactMapping", + "HelmSubsystem" + ], + "name": "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.analyse_deployment": { + "description": "Analyse Helm deployment", + "documentation": null, + "input_gets": [ + "Get(RenderedHelmFiles, HelmDeploymentRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ParsedKubeManifest, ParseKubeManifestRequest, ..)" + ], + "input_types": ["AnalyseHelmDeploymentRequest"], + "name": "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "output_type": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmDeploymentReport, AnalyseHelmDeploymentRequest, ..)" + ], + "input_types": [ + "FirstPartyHelmDeploymentMappingRequest", + "AllDockerImageTargets" + ], + "name": "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "output_type": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies": { + "description": "Find the dependencies needed by a Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)" + ], + "input_types": ["InferHelmDeploymentDependenciesRequest"], + "name": "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)" + ], + "input_types": [ + "InferHelmUnitTestChartDependencyRequest", + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.deploy.run_helm_deploy": { + "description": "Run Helm deploy process", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmPostRenderer, HelmDeploymentPostRendererRequest, ..)", + "Get(InteractiveProcess, HelmDeploymentRequest, ..)" + ], + "input_types": ["DeployHelmDeploymentFieldSet", "HelmSubsystem"], + "name": "pants.backend.helm.goals.deploy.run_helm_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.partition_helm_lint": { + "description": null, + "documentation": null, + "input_gets": ["Get(HelmChart, HelmChartRequest, ..)"], + "input_types": ["PartitionRequest"], + "name": "pants.backend.helm.goals.lint.partition_helm_lint", + "output_type": "Partitions", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.run_helm_lint": { + "description": "Lint Helm charts", + "documentation": null, + "input_gets": ["Get(FallibleProcessResult, HelmProcess, ..)"], + "input_types": ["Batch", "HelmSubsystem"], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.package.run_helm_package": { + "description": "Package Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["HelmPackageFieldSet"], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.publish.publish_helm_chart": { + "description": "Push Helm chart to OCI registries", + "documentation": null, + "input_gets": ["Get(Process, HelmProcess, ..)"], + "input_types": ["PublishHelmChartRequest", "HelmSubsystem"], + "name": "pants.backend.helm.goals.publish.publish_helm_chart", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.tailor.find_putative_helm_targets": { + "description": "Determine candidate Helm chart targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeHelmChartTargetsRequest", + "AllOwnedSources", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["HelmArtifact", "HelmSubsystem"], + "name": "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "output_type": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping": { + "description": null, + "documentation": null, + "input_gets": ["Get(ResolvedHelmArtifact, HelmArtifact, ..)"], + "input_types": ["AllHelmArtifactTargets"], + "name": "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "output_type": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch.fetch_helm_artifact": { + "description": "Fetch Helm artifact", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ResolvedHelmArtifact, HelmArtifact, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["FetchHelmArtifactRequest"], + "name": "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "output_type": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["HelmKubeParserSubsystem"], + "name": "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "output_type": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest": { + "description": "Parse Kubernetes resource manifest", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["ParseKubeManifestRequest", "_HelmKubeParserTool"], + "name": "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "output_type": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher": { + "description": "Configure Helm post-renderer", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupHelmPostRenderer", + "_HelmPostRendererTool", + "CatBinary" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "output_type": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool": { + "description": "Setup Helm post renderer binaries", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["HelmPostRendererSubsystem"], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "output_type": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestPluginBinding", + "HelmUnitTestSubsystem", + "Platform" + ], + "name": "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "output_type": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_artifact_targets", + "output_type": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_chart_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_chart_targets", + "output_type": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_deployment_targets", + "output_type": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_unittest_test_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "output_type": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.run_helm_unittest": { + "description": "Run Helm Unittest", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["Batch", "TestSubsystem", "HelmUnitTestSubsystem"], + "name": "pants.backend.helm.test.unittest.run_helm_unittest", + "output_type": "TestResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.create_chart_from_artifact": { + "description": "Compile third parth Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": ["FetchedHelmArtifact"], + "name": "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.find_chart_for_deployment": { + "description": "Find Helm deployment's chart", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)" + ], + "input_types": ["FindHelmDeploymentChart"], + "name": "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.get_helm_chart": { + "description": "Compile Helm chart", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["HelmChartRequest", "HelmSubsystem"], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["ParseHelmChartMetadataDigest"], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": ["HelmChartMetaSourceField"], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["HelmChartMetadata"], + "name": "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment": { + "description": "Prepare Helm deployment post-renderer", + "documentation": null, + "input_gets": [ + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)", + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)" + ], + "input_types": [ + "HelmDeploymentPostRendererRequest", + "UnionMembership", + "DockerOptions" + ], + "name": "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "output_type": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(Process, HelmProcess, ..)"], + "input_types": ["_HelmDeploymentProcessWrapper"], + "name": "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.run_renderer": { + "description": "Render Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["_HelmDeploymentProcessWrapper"], + "name": "pants.backend.helm.util_rules.renderer.run_renderer", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process": { + "description": "Prepare Helm deployment renderer", + "documentation": null, + "input_gets": [ + "Get(HelmChart, FindHelmDeploymentChart, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": ["HelmDeploymentRequest", "HelmSubsystem"], + "name": "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "output_type": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.find_chart_source_root": { + "description": "Detect Helm chart source root", + "documentation": null, + "input_gets": ["Get(HydratedSources, HydrateSourcesRequest, ..)"], + "input_types": ["HelmChartRootRequest"], + "name": "pants.backend.helm.util_rules.sources.find_chart_source_root", + "output_type": "HelmChartRoot", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.get_helm_source_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["HelmChartSourceFilesRequest"], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.all_helm_plugins": { + "description": null, + "documentation": null, + "input_gets": ["Get(HelmPlugin, ExternalHelmPluginBinding, ..)"], + "input_types": ["UnionMembership"], + "name": "pants.backend.helm.util_rules.tool.all_helm_plugins", + "output_type": "HelmPlugins", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.download_external_helm_plugin": { + "description": "Download external Helm plugin", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["ExternalHelmPluginRequest"], + "name": "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "output_type": "HelmPlugin", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.helm_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["HelmProcess", "HelmBinary", "HelmSubsystem"], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.setup_helm": { + "description": "Download and configure Helm", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": ["HelmSubsystem", "HelmPlugins", "Platform"], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.java.bsp.rules.bsp_java_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["JavaBSPCompileRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_java_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["JavaBSPResourcesRequest", "BuildRoot"], + "name": "pants.backend.java.bsp.rules.bsp_java_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_javac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": ["JavacOptionsParams"], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JavaBSPBuildTargetsMetadataRequest"], + "name": "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.handle_bsp_java_options_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["HandleJavacOptionsRequest", "BuildRoot"], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.compile.javac.compile_java_source": { + "description": "Compile with javac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "JvmSubsystem", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.backend.java.dependency_inference.java_parser.build_processors", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JavaParserToolLockfileSentinel"], + "name": "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["SourceFiles"], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis": { + "description": "Inferring Java dependencies and exports by source analysis", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis": { + "description": "Inferring Java dependencies by source analysis", + "documentation": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": ["InferJavaSourceDependencies"], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets": { + "description": "Find all Java targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols": { + "description": "Map all first party Java targets to their packages", + "documentation": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.check.javac_check": { + "description": "Check javac compilation", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["JavacCheckRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.java.goals.check.javac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.tailor.find_putative_targets": { + "description": "Determine candidate Java targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources", + "JavacSubsystem" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt": { + "description": "Format with Google Java Format", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "GoogleJavaFormatSubsystem", "InternalJdk"], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries": { + "description": "Finding Node.js distribution binaries.", + "documentation": null, + "input_gets": ["Get(DownloadedExternalTool, ExternalToolRequest, ..)"], + "input_types": ["NodeJS", "Platform", "_BinaryPathsPerVersion"], + "name": "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "output_type": "NodeJSBinaries", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version": { + "description": "Testing for Node.js binaries.", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["NodeJSBootstrap"], + "name": "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "output_type": "_BinaryPathsPerVersion", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.node_process_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["NodeJSBinaries", "EnvironmentAware"], + "name": "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "output_type": "NodeJSProcessEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(VersionManagerSearchPaths, VersionManagerSearchPathsRequest, ..)", + "Get(PathEnvironmentVariable)" + ], + "input_types": ["EnvironmentAware"], + "name": "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "output_type": "NodeJSBootstrap", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool": { + "description": "Preparing Corepack managed tool.", + "documentation": null, + "input_gets": ["Get(ProcessResult, Process, ..)"], + "input_types": [ + "CorepackToolRequest", + "NodeJSProcessEnvironment", + "NodeJS" + ], + "name": "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "output_type": "CorepackToolDigest", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CorepackToolDigest, CorepackToolRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["NodeJSToolProcess", "NodeJSProcessEnvironment"], + "name": "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["NodeJS"], + "name": "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases", + "output_type": "UserChosenNodeJSResolveAliases", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source": { + "description": "Compile with kotlinc", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(KotlincPluginTargetsForTarget, KotlincPluginsForTargetRequest, ..)", + "Get(KotlincPlugins, KotlincPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinSubsystem", + "KotlincSubsystem", + "CompileKotlinSourceRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlincPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "output_type": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "output_type": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["KotlincPluginsRequest"], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "output_type": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "KotlincPluginsForTargetRequest", + "AllKotlincPluginTargets", + "JvmSubsystem", + "KotlincSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "output_type": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": ["KotlinParserCompiledClassfiles", "SourceFiles"], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "output_type": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KotlinParserToolLockfileSentinel"], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": [ + "FallibleKotlinSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "output_type": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "output_type": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis": { + "description": "Inferring Kotlin dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferKotlinSourceDependencies", + "KotlinInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency": { + "description": "Infer dependency on Kotlin runtime artifacts for Kotlin targets.", + "documentation": null, + "input_gets": [ + "Get(KotlinRuntimeForResolve, KotlinRuntimeForResolveRequest, ..)" + ], + "input_types": ["InferKotlinRuntimeDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "output_type": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets": { + "description": "Find all Kotlin targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "output_type": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols": { + "description": "Map all first party Kotlin targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyKotlinTargetsMappingRequest", + "AllKotlinTargets", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.check.kotlinc_check": { + "description": "Check compilation for Kotlin", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["KotlincCheckRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.kotlin.goals.check.kotlinc_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.tailor.find_putative_targets": { + "description": "Determine candidate Kotlin targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeKotlinTargetsRequest", + "AllOwnedSources", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KtlintToolLockfileSentinel", "KtlintSubsystem"], + "name": "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt": { + "description": "Format with Ktlint", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KtlintToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "KtlintSubsystem", "InternalJdk"], + "name": "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency": { + "description": "Infer dependency on Kotlin Junit support artifact.", + "documentation": null, + "input_gets": [ + "Get(KotlinJunitLibrariesForResolve, KotlinJunitLibrariesForResolveRequest, ..)" + ], + "input_types": ["InferKotlinJunitTestDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinJunitLibrariesForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "output_type": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["InferOpenApiDocumentDependenciesRequest"], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["InferOpenApiSourceDependenciesRequest"], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.parse_openapi_sources": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": ["ParseOpenApiSources"], + "name": "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "output_type": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.goals.tailor.find_putative_targets": { + "description": "Determine candidate OpenAPI targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)" + ], + "input_types": [ + "PutativeOpenApiTargetsRequest", + "AllOwnedSources", + "OpenApiSubsystem" + ], + "name": "pants.backend.openapi.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.lint.spectral.rules.run_spectral": { + "description": "Lint with Spectral", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, NodeJSToolProcess, ..)" + ], + "input_types": ["Batch", "SpectralSubsystem"], + "name": "pants.backend.openapi.lint.spectral.rules.run_spectral", + "output_type": "LintResult", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + "pants.backend.project_info.count_loc.count_loc": { + "description": "`count-loc` goal", + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsPaths", + "Platform" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependencies.dependencies": { + "description": "`dependencies` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": ["Console", "Addresses", "DependenciesSubsystem"], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.dependents_goal": { + "description": "`dependents` goal", + "documentation": null, + "input_gets": ["Get(Dependents, DependentsRequest, ..)"], + "input_types": ["Addresses", "DependentsSubsystem", "Console"], + "name": "pants.backend.project_info.dependents.dependents_goal", + "output_type": "DependentsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.find_dependents": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DependentsRequest", "AddressToDependents"], + "name": "pants.backend.project_info.dependents.find_dependents", + "output_type": "Dependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.map_addresses_to_dependents": { + "description": "Map all targets to their dependents", + "documentation": null, + "input_gets": ["Get(Addresses, DependenciesRequest, ..)"], + "input_types": ["AllUnexpandedTargets"], + "name": "pants.backend.project_info.dependents.map_addresses_to_dependents", + "output_type": "AddressToDependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filedeps.file_deps": { + "description": "`filedeps` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": ["Console", "FiledepsSubsystem", "BuildRoot", "Addresses"], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filter_targets.filter_targets": { + "description": "`filter` goal", + "documentation": null, + "input_gets": [], + "input_types": ["Addresses", "FilterSubsystem", "Console"], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_roots.list_roots": { + "description": "`roots` goal", + "documentation": null, + "input_gets": [], + "input_types": ["Console", "RootsSubsystem", "AllSourceRoots"], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_type": "Roots", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_targets.list_targets": { + "description": "`list` goal", + "documentation": null, + "input_gets": ["Get(UnexpandedTargets, Addresses, ..)"], + "input_types": ["Addresses", "ListSubsystem", "Console"], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_type": "List", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.paths": { + "description": "`paths` goal", + "documentation": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": ["Console", "PathsSubsystem"], + "name": "pants.backend.project_info.paths.paths", + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.get_target_data": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OptionalAddressFamily, AddressFamilyDir, ..)", + "Get(DependenciesRuleApplication, DependenciesRuleApplicationRequest, ..)" + ], + "input_types": ["UnexpandedTargets", "PeekSubsystem"], + "name": "pants.backend.project_info.peek.get_target_data", + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.peek": { + "description": "`peek` goal", + "documentation": null, + "input_gets": ["Get(TargetDatas, UnexpandedTargets, ..)"], + "input_types": ["Console", "PeekSubsystem", "UnexpandedTargets"], + "name": "pants.backend.project_info.peek.peek", + "output_type": "Peek", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.lint_with_regex_patterns": { + "description": "Lint with regex patterns", + "documentation": null, + "input_gets": ["Get(DigestContents, PathGlobs, ..)"], + "input_types": ["Batch", "RegexLintSubsystem"], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_type": "LintResult", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "RegexLintSubsystem"], + "name": "pants.backend.project_info.regex_lint.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.project_info" + }, + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects": { + "description": "Find all Python targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules": { + "description": "Creating map of first party Python targets to Python modules", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses": { + "description": "Creating map of third party targets to Python modules", + "documentation": null, + "input_gets": [], + "input_types": ["AllPythonTargets", "PythonSetup"], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": [ + "PythonInferSubsystem", + "GeneralPythonDependencyVisitorRequest" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "output_type": "PythonDependencyVisitor", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonDependencyVisitor, PythonDependencyVisitorRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "output_type": "ParserScript", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(NativeParsedPythonDependencies, Digest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ParsePythonDependenciesRequest", + "ParserScript", + "UnionMembership", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": ["UnownedImportPossibleOwnerRequest", "PythonSetup"], + "name": "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "output_type": "UnownedImportPossibleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies": { + "description": "Inferring dependencies on `conftest.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source": { + "description": "Inferring Python dependencies by analyzing source", + "documentation": null, + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies": { + "description": "Inferring dependencies on `__init__.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies": { + "description": null, + "documentation": "Find the owning targets for the parsed dependencies.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargetsByPath)" + ], + "input_types": [ + "ResolvedParsedPythonDependenciesRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "output_type": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points": { + "description": "Find all `python_distribution` targets with `stevedore_namespace` entry_points", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "output_type": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces": { + "description": "Find `python_distribution` targets with entry_points in selected `stevedore_namespace`s", + "documentation": null, + "input_gets": [], + "input_types": [ + "StevedoreNamespacesProviderTargetsRequest", + "StevedoreExtensions" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces", + "output_type": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies": { + "description": "Infer dependencies based on `stevedore_namespaces` field.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": ["InferStevedoreNamespacesDependencies"], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions": { + "description": "Create map of `stevedore_namespace` to `python_distribution` targets", + "documentation": null, + "input_gets": [], + "input_types": ["AllStevedoreExtensionTargets"], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions", + "output_type": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension": { + "description": "Generate entry_points.txt to imitate `python_distribution` installation.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(Paths, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["GenerateEntryPointsTxtFromStevedoreExtensionRequest"], + "name": "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["CoverageSubsystem"], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.generate_coverage_reports": { + "description": "Generate Pytest coverage reports", + "documentation": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "KeepSandboxes", + "DistDir" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.merge_coverage_data": { + "description": "Merge Pytest coverage data", + "documentation": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage": { + "description": null, + "documentation": null, + "input_gets": ["Get(VenvPex, PexRequest, ..)"], + "input_types": ["CoverageSubsystem"], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis": { + "description": "`python-dump-source-analysis` goal", + "documentation": null, + "input_gets": [ + "Get(PythonSourceAnalysis, PythonImportDependenciesInferenceFieldSet, ..)" + ], + "input_types": [ + "DumpPythonSourceAnalysisSubsystem", + "Targets", + "Console" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis", + "output_type": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single": { + "description": null, + "documentation": "Infer the dependencies for a single python fieldset, keeping all the intermediate results.", + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "PythonImportDependenciesInferenceFieldSet", + "PythonSetup" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "output_type": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.export.do_export": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(ProcessResult, PexProcess, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "VenvExportRequest", + "PexPEX", + "PexEnvironment", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.do_export", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_tool": { + "description": null, + "documentation": null, + "input_gets": ["Get(ExportResult, VenvExportRequest, ..)"], + "input_types": ["ExportPythonTool"], + "name": "pants.backend.python.goals.export.export_tool", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EditableLocalDists, EditableLocalDistsRequest, ..)", + "Get(ExportPythonTool, ExportPythonToolSentinel, ..)", + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "_ExportVenvForResolveRequest", + "PythonSetup", + "ExportSubsystem", + "UnionMembership" + ], + "name": "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "output_type": "MaybeExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv_for_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequest, RequirementsPexRequest, ..)", + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": ["_ExportVenvRequest", "PythonSetup"], + "name": "pants.backend.python.goals.export.export_virtualenv_for_targets", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenvs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeExportResult, _ExportVenvForResolveRequest, ..)", + "Get(ExportResult, _ExportVenvRequest, ..)", + "Get(ExportPythonTool, ExportPythonToolSentinel, ..)", + "Get(ExportResult, ExportPythonTool, ..)" + ], + "input_types": [ + "ExportVenvsRequest", + "PythonSetup", + "DistDir", + "UnionMembership", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_type": "ExportResults", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.lockfile.determine_python_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KnownPythonUserResolveNamesRequest", "PythonSetup"], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.generate_lockfile": { + "description": "Generate Python lockfile", + "documentation": null, + "input_gets": [ + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "GenerateLockfilesSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonSyntheticLockfileTargetsRequest", "PythonSetup"], + "name": "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "output_type": "SyntheticAddressMaps", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GeneratePythonLockfile"], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.core" + }, + "pants.backend.python.goals.package_dists.package_python_dist": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_dists.package_python_dist", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request": { + "description": null, + "documentation": null, + "input_gets": ["Get(Pex, PexFromTargetsRequest, ..)"], + "input_types": ["PexFromTargetsRequestForBuiltPackage"], + "name": "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.package_pex_binary.package_pex_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)" + ], + "input_types": ["PexBinaryFieldSet", "PexBinaryDefaults"], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_type": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.publish.twine_upload": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.pytest_runner.debug_python_test": { + "description": "Set up Pytest to run interactively", + "documentation": null, + "input_gets": ["Get(TestSetup, TestSetupRequest, ..)"], + "input_types": ["Batch"], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.debugpy_python_test": { + "description": "Set up debugpy to run an interactive Pytest session", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch", + "DebugPy", + "DebugAdapterSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.partition_python_tests": { + "description": "Partition Pytest", + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "PythonSetup"], + "name": "pants.backend.python.goals.pytest_runner.partition_python_tests", + "output_type": "Partitions", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": ["AllPytestPluginSetupsRequest", "UnionMembership"], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_python_tests": { + "description": "Run Pytest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["Batch", "TestSubsystem"], + "name": "pants.backend.python.goals.pytest_runner.run_python_tests", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_runtime_packages": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["RuntimePackagesPluginRequest"], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_ipython_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_python_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["PythonRepl", "PexEnvironment", "PythonSetup"], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexFromTargetsRequestForBuiltPackage, PexBinaryFieldSet, ..)", + "Get(BuiltPackage, PexFromTargetsRequestForBuiltPackage, ..)", + "Get(PythonExecutable, InterpreterConstraintsRequest, ..)" + ], + "input_types": ["PexBinaryFieldSet"], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)" + ], + "input_types": [ + "PythonRequirementFieldSet", + "PexEnvironment", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "DebugPy", + "DebugAdapterSubsystem", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["PythonSourceFieldSet", "PexEnvironment", "PythonSetup"], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["PythonSourceFieldSet", "PexEnvironment", "PythonSetup"], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.tailor.find_putative_targets": { + "description": "Determine candidate Python targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt": { + "description": "Format with add-trailing-comma", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "AddTrailingComma"], + "name": "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AddTrailingCommaExportSentinel", "AddTrailingComma"], + "name": "pants.backend.python.lint.add_trailing_comma.subsystem.add_trailing_comma_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.autoflake.rules.autoflake_fix": { + "description": "Fix with Autoflake", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Autoflake"], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.backend.python.lint.autoflake.subsystem.autoflake_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AutoflakeExportSentinel", "Autoflake"], + "name": "pants.backend.python.lint.autoflake.subsystem.autoflake_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint": { + "description": "Lint with Bandit", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["Batch", "Bandit"], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.rules.partition_bandit": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Bandit", "PythonSetup"], + "name": "pants.backend.python.lint.bandit.rules.partition_bandit", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.bandit_export": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for `export` goal)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": ["BanditExportSentinel", "Bandit", "PythonSetup"], + "name": "pants.backend.python.lint.bandit.subsystem.bandit_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile": { + "description": "Determine all Python interpreter versions used by Bandit in your project (for lockfile generation)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": ["BanditLockfileSentinel", "Bandit", "PythonSetup"], + "name": "pants.backend.python.lint.bandit.subsystem.setup_bandit_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.black.rules.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Black"], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.rules.partition_black": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Black", "PythonSetup"], + "name": "pants.backend.python.lint.black.rules.partition_black", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.black_export": { + "description": "Determine Black interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": ["BlackExportSentinel", "Black", "PythonSetup"], + "name": "pants.backend.python.lint.black.subsystem.black_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.subsystem.setup_black_lockfile": { + "description": "Determine Black interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": ["BlackLockfileSentinel", "Black", "PythonSetup"], + "name": "pants.backend.python.lint.black.subsystem.setup_black_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.docformatter.rules.docformatter_fmt": { + "description": "Format with docformatter", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Docformatter", "KeepSandboxes"], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.docformatter.subsystem.docformatter_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DocformatterExportSentinel", "Docformatter"], + "name": "pants.backend.python.lint.docformatter.subsystem.docformatter_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.flake8.rules.partition_flake8": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.partition_flake8", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.rules.run_flake8": { + "description": "Lint with Flake8", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["Batch", "Flake8", "Flake8FirstPartyPlugins"], + "name": "pants.backend.python.lint.flake8.rules.run_flake8", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_export": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for `export` goal)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": [ + "Flake8ExportSentinel", + "Flake8", + "Flake8FirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["Flake8"], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile": { + "description": "Determine all Python interpreter versions used by Flake8 in your project (for lockfile generation)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": [ + "Flake8LockfileSentinel", + "Flake8FirstPartyPlugins", + "Flake8", + "PythonSetup" + ], + "name": "pants.backend.python.lint.flake8.subsystem.setup_flake8_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.isort.rules.isort_fmt": { + "description": "Format with isort", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Isort"], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.isort.subsystem.isort_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["IsortExportSentinel", "Isort"], + "name": "pants.backend.python.lint.isort.subsystem.isort_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint": { + "description": "Lint with Pydocstyle", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["Batch", "Pydocstyle"], + "name": "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export": { + "description": "Determine all Python interpreter versions used by Pydocstyle in your project (for `export` goal)", + "documentation": null, + "input_gets": [], + "input_types": ["PydocstyleExportSentinel", "Pydocstyle"], + "name": "pants.backend.python.lint.pydocstyle.subsystem.pydocstyle_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile": { + "description": "Determine all Python interpreter versions used by Pydocstyle in your project (for lockfile generation)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": [ + "PydocstyleLockfileSentinel", + "Pydocstyle", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pydocstyle.subsystem.setup_pydocstyle_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.backend.python.lint.pylint.rules.partition_pylint": { + "description": "Determine if necessary to partition Pylint input", + "documentation": null, + "input_gets": ["Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)"], + "input_types": [ + "PartitionRequest", + "Pylint", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.partition_pylint", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.run_pylint": { + "description": "Lint using Pylint", + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PexResolveInfo, Pex, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Pylint", + "PylintFirstPartyPlugins", + "PexEnvironment" + ], + "name": "pants.backend.python.lint.pylint.rules.run_pylint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_export": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for `export` goal)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": [ + "PylintExportSentinel", + "Pylint", + "PylintFirstPartyPlugins", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["Pylint"], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile": { + "description": "Determine all Python interpreter versions used by Pylint in your project (for lockfile generation)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": [ + "PylintLockfileSentinel", + "PylintFirstPartyPlugins", + "Pylint", + "PythonSetup" + ], + "name": "pants.backend.python.lint.pylint.subsystem.setup_pylint_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix": { + "description": "Fix with pyupgrade", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "PyUpgrade"], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PyUpgradeExportSentinel", "PyUpgrade"], + "name": "pants.backend.python.lint.pyupgrade.subsystem.pyupgrade_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.backend.python.lint.ruff.rules.ruff_fix": { + "description": "Fix with ruff", + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, _RunRuffRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Ruff"], + "name": "pants.backend.python.lint.ruff.rules.ruff_fix", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.ruff_lint": { + "description": "Lint with ruff", + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, _RunRuffRequest, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.python.lint.ruff.rules.ruff_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.run_ruff": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["_RunRuffRequest", "Ruff"], + "name": "pants.backend.python.lint.ruff.rules.run_ruff", + "output_type": "FallibleProcessResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.subsystem.ruff_export": { + "description": "Determine all Python interpreter versions used by ruff in your project (for `export` goal)", + "documentation": null, + "input_gets": [], + "input_types": ["RuffExportSentinel", "Ruff"], + "name": "pants.backend.python.lint.ruff.subsystem.ruff_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.yapf.rules.yapf_fmt": { + "description": "Format with yapf", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Yapf"], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.lint.yapf.subsystem.yapf_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["YapfExportSentinel", "Yapf"], + "name": "pants.backend.python.lint.yapf.subsystem.yapf_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements": { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.python_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from requirements.txt or PEP 621 compliant pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints": { + "description": "`py-constraints` goal", + "documentation": null, + "input_gets": [ + "Get(AllTargets)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependents, DependentsRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary", + "Platform" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": ["Get(BuiltPackage, PackageFieldSet, ..)"], + "input_types": ["PyOxidizerFieldSet"], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.subsystems.ipython.setup_ipython_lockfile": { + "description": "Determine all Python interpreter versions used by iPython in your project (for lockfile generation)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": ["IPythonLockfileSentinel", "IPython", "PythonSetup"], + "name": "pants.backend.python.subsystems.ipython.setup_ipython_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.pytest.pytest_export": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for `export` goal)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": ["PytestExportSentinel", "PyTest", "PythonSetup"], + "name": "pants.backend.python.subsystems.pytest.pytest_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.pytest.setup_pytest_lockfile": { + "description": "Determine all Python interpreter versions used by Pytest in your project (for lockfile generation)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": ["PytestLockfileSentinel", "PyTest", "PythonSetup"], + "name": "pants.backend.python.subsystems.pytest.setup_pytest_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile": { + "description": "Determine all Python interpreter versions used by setuptools in your project (for lockfile generation)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": [ + "SetuptoolsLockfileSentinel", + "Setuptools", + "PythonSetup" + ], + "name": "pants.backend.python.subsystems.setuptools.setup_setuptools_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GenerateTargetsFromPexBinaries", "UnionMembership"], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency": { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies": { + "description": null, + "documentation": "Infer dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_files_generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonResolveFieldDefaultFactoryRequest", "PythonSetup"], + "name": "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_pex_entry_point": { + "description": "Determining the entry point for a `pex_binary` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["ResolvePexEntryPointRequest"], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points": { + "description": "Determining the entry points for a `python_distribution` target", + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": ["ResolvePythonDistributionEntryPointsRequest"], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.validate_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": ["Get(WrappedTarget, WrappedTargetRequest, ..)"], + "input_types": ["PythonValidateDependenciesRequest", "PythonSetup"], + "name": "pants.backend.python.target_types_rules.validate_python_dependencies", + "output_type": "ValidatedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment": { + "description": "Get mypyc build environment", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)" + ], + "input_types": [ + "MyPycDistBuildEnvironmentRequest", + "MyPyFirstPartyPlugins", + "MyPyConfigFile", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "output_type": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions": { + "description": "Determine if necessary to partition MyPy input", + "documentation": null, + "input_gets": ["Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)"], + "input_types": ["MyPyRequest", "MyPy", "PythonSetup"], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck": { + "description": "Typecheck using MyPy", + "documentation": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": ["MyPyRequest", "MyPy"], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "BuildRoot", + "MyPy", + "PythonSetup", + "MkdirBinary", + "MktempBinary", + "CpBinary", + "MvBinary", + "LnBinary", + "GlobalOptions" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_export": { + "description": "Determine MyPy interpreter constraints (for `export` goal)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": [ + "MyPyExportSentinel", + "MyPy", + "PythonSetup", + "MyPyFirstPartyPlugins" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": ["MyPy"], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["MyPy"], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile": { + "description": "Set up lockfile request for [mypy].extra_type_stubs", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": [ + "MyPyExtraTypeStubsLockfileSentinel", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_extra_type_stubs_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile": { + "description": "Determine MyPy interpreter constraints (for lockfile generation)", + "documentation": null, + "input_gets": ["Get(AllTargets)"], + "input_types": [ + "MyPyLockfileSentinel", + "MyPyFirstPartyPlugins", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_lockfile", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": ["AncestorFilesRequest"], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.find_build_system": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, DigestSubset, ..)"], + "input_types": ["BuildSystemRequest", "Setuptools"], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.run_pep517_build": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["DistBuildRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.faas.build_lambdex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PythonFaaSCompletePlatforms, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["BuildLambdexRequest", "Lambdex", "Platform"], + "name": "pants.backend.python.util_rules.faas.build_lambdex", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.build_python_faas": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PythonFaaSCompletePlatforms, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PexVenv, PexVenvRequest, ..)" + ], + "input_types": ["BuildPythonFaaSRequest"], + "name": "pants.backend.python.util_rules.faas.build_python_faas", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": ["Get(CompletePlatforms, UnparsedAddressInputs, ..)"], + "input_types": ["PythonFaaSCompletePlatforms"], + "name": "pants.backend.python.util_rules.faas.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency": { + "description": "Inferring dependency from the python FaaS `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonFaaSHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.resolve_python_faas_handler": { + "description": "Determining the handler for a python FaaS target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["ResolvePythonFaaSHandlerRequest"], + "name": "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "output_type": "ResolvedPythonFaaSHandler", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.local_dists.build_local_dists": { + "description": "Building local distributions", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": ["LocalDistsPexRequest"], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists": { + "description": "Building editable local distributions (PEP 660)", + "documentation": null, + "input_gets": [ + "Get(LocalDistPEP660Wheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "EditableLocalDistsRequest", + "ResolveSortedPythonDistributionTargets", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "output_type": "EditableLocalDists", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions": { + "description": "Find all Python Distribution targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions", + "output_type": "AllPythonDistributionTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(PEP660BuildResult, DistBuildRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "output_type": "LocalDistPEP660Wheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build": { + "description": null, + "documentation": "Run our PEP 517 / PEP 660 wrapper script to generate an editable wheel.\n\nThe PEP 517 / PEP 660 wraper script is responsible for building the editable wheel.\nThe backend wrapper script, along with the commands that install the editable wheel,\nneed to conform to the following specs so that Pants is a PEP 660 compliant frontend,\na PEP 660 compliant backend, and that it builds a compliant wheel and install.\n\nNOTE: PEP 660 does not address the `.data` directory, so the wrapper ignores it.\n\nRelevant Specs:\n https://peps.python.org/pep-0517/\n https://peps.python.org/pep-0660/\n https://packaging.python.org/en/latest/specifications/platform-compatibility-tags/\n https://packaging.python.org/en/latest/specifications/recording-installed-packages/\n https://packaging.python.org/en/latest/specifications/direct-url-data-structure/\n https://packaging.python.org/en/latest/specifications/binary-distribution-format/", + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["DistBuildRequest", "PythonSetup", "BuildRoot"], + "name": "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "output_type": "PEP660BuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve": { + "description": "Associate resolves with all Python Distribution targets in project", + "documentation": null, + "input_gets": ["Get(OwnedDependencies, DependencyOwner, ..)"], + "input_types": ["AllPythonDistributionTargets", "PythonSetup"], + "name": "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "output_type": "ResolveSortedPythonDistributionTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PyUpgradeLockfileSentinel", "PyUpgrade"], + "name": "pants.backend.python.util_rules.lockfile._pex_simple_lockfile_rules.lockfile_generator", + "output_type": "GeneratePythonLockfile", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": ["Get(SetupKwargs, SetupKwargsRequest, ..)"], + "input_types": ["ExportedTarget", "UnionMembership"], + "name": "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": ["GenerateSetupPyRequest"], + "name": "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.generate_chroot": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": ["DistBuildChrootRequest", "SetupPyGeneration"], + "name": "pants.backend.python.util_rules.package_dists.generate_chroot", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.generate_setup_py": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["GenerateSetupPyRequest"], + "name": "pants.backend.python.util_rules.package_dists.generate_setup_py", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_exporting_owner": { + "description": "Get exporting owner for target", + "documentation": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": ["OwnedDependency"], + "name": "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_owned_dependencies": { + "description": "Find all code to be published in the distribution", + "documentation": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": ["DependencyOwner", "UnionMembership"], + "name": "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_requirements": { + "description": "Compute distribution's 3rd party requirements", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.util_rules.package_dists.get_requirements", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": ["DistBuildChrootRequest", "UnionMembership"], + "name": "pants.backend.python.util_rules.package_dists.get_sources", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex.build_pex": { + "description": null, + "documentation": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(ReqStrings, PexRequirements, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": ["PexRequest", "PythonSetup", "PexSubsystem"], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_type": "BuildPexResult", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_optional_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(Pex, PexRequest, ..)"], + "input_types": ["OptionalPexRequest"], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_type": "OptionalPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(BuildPexResult, PexRequest, ..)"], + "input_types": ["PexRequest"], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_type": "Pex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_venv_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["VenvPexRequest", "BashBinary", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_type": "VenvPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, PexProcess, ..)"], + "input_types": ["PexPEX", "Pex"], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, VenvPexProcess, ..)"], + "input_types": ["VenvPex"], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["UnparsedAddressInputs"], + "name": "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": ["Get(CompletePlatforms, UnparsedAddressInputs, ..)"], + "input_types": ["PexCompletePlatformsField"], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.find_interpreter": { + "description": "Find Python interpreter for constraints", + "documentation": null, + "input_gets": [ + "Get(PythonExecutable, PythonProvider, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexSubsystem", + "EnvironmentTarget", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_type": "PythonExecutable", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.get_req_strings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": ["PexRequirements"], + "name": "pants.backend.python.util_rules.pex.get_req_strings", + "output_type": "ReqStrings", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_pex_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["PexProcess", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_venv_pex_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["VenvPexProcess", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.wrap_venv_prex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PexRequest", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_type": "VenvPexRequest", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.download_pex_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(DownloadedExternalTool, ExternalToolRequest, ..)"], + "input_types": ["PexCli", "Platform"], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_type": "PexPEX", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonBuildStandaloneBinary", + "EnvironmentAware", + "GlobalOptions", + "PexSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_environment.find_pex_python": { + "description": "Prepare environment for running PEXes", + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBuildStandaloneBinary", + "PexSubsystem", + "EnvironmentAware", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_type": "PexEnvironment", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve": { + "description": null, + "documentation": null, + "input_gets": ["Get(TransitiveTargets, TransitiveTargetsRequest, ..)"], + "input_types": ["ChosenPythonResolveRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_type": "PexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, PathGlobs, ..)"], + "input_types": ["PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RequirementsPexRequest"], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": ["_RepositoryPexRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets": { + "description": null, + "documentation": null, + "input_gets": ["Get(TransitiveTargets, TransitiveTargetsRequest, ..)"], + "input_types": ["InterpreterConstraintsRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ResolvePexConfigRequest", + "PythonSetup", + "PythonRepos", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "output_type": "ResolvePexConfig", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Resolve", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "output_type": "Lockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.load_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["LoadedLockfileRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_type": "LoadedLockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_venv.pex_venv": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": ["PexVenvRequest"], + "name": "pants.backend.python.util_rules.pex_venv.pex_venv", + "output_type": "PexVenv", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.python_sources.prepare_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["PythonSourceFilesRequest", "UnionMembership"], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.python_sources.strip_python_sources": { + "description": null, + "documentation": null, + "input_gets": ["Get(StrippedSourceFiles, SourceFiles, ..)"], + "input_types": ["PythonSourceFiles"], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets": { + "description": "Find all vcs_version targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "output_type": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeGitWorktree, GitWorktreeRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GeneratePythonFromSetuptoolsSCMRequest", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules": { + "description": null, + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "AllVCSVersionTargets", + "PythonSetup", + "PythonVCSVersionMappingMarker" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsMetadataRequest", + "BashBinary", + "JvmSubsystem", + "ScalaSubsystem", + "BuildRoot", + "ReadlinkBinary" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ScalaBSPCompileRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaMainClassesParams"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request", + "output_type": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ScalaBSPResourcesRequest", "BuildRoot"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaTestClassesParams"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request", + "output_type": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": ["ScalacOptionsParams"], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.collect_thirdparty_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ThirdpartyModulesRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "output_type": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["HandleScalacOptionsRequest", "BuildRoot", "Workspace"], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ScalaBSPDependencyModulesRequest", "BuildRoot"], + "name": "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "output_type": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.compile_scala_source": { + "description": "Compile with scalac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.fetch_scala_library": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": ["ScalaLibraryRequest"], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.fetch_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ScalaPluginsRequest"], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis": { + "description": "Inferring Scala dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency": { + "description": "Infer dependency on scala-library artifact for Scala target.", + "documentation": null, + "input_gets": [ + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": ["InferScalaLibraryDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies": { + "description": "Infer dependency on scala plugin artifacts for Scala target.", + "documentation": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": ["InferScalaPluginDependenciesRequest"], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "AnalyzeScalaSourceRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "SourceFilesRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "output_type": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaParserToolLockfileSentinel"], + "name": "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": [ + "FallibleScalaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets": { + "description": "Find all Scala targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols": { + "description": "Map all first party Scala targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.check.scalac_check": { + "description": "Check compilation for Scala", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["ScalacCheckRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.repl.create_scala_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ScalaRepl", "BashBinary", "ScalaSubsystem"], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.tailor.find_putative_targets": { + "description": "Determine candidate Scala targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files": { + "description": null, + "documentation": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": ["Get(Snapshot, PathGlobs, ..)"], + "input_types": ["GatherScalafmtConfigFilesRequest"], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalafmtToolLockfileSentinel", "ScalafmtSubsystem"], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": ["PartitionRequest", "ScalafmtSubsystem"], + "name": "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt": { + "description": "Format with scalafmt", + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "InternalJdk", "ScalafmtSubsystem"], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.scala_settings_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaInferSubsystem", "ScalaSettingsRequest"], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalatestToolLockfileSentinel", "Scalatest"], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.run_scalatest_test": { + "description": "Run Scalatest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["TestSubsystem", "Batch"], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaArtifactsForVersionRequest"], + "name": "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version", + "output_type": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.shell.dependency_inference.find_all_shell_targets": { + "description": "Find all Shell targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.infer_shell_dependencies": { + "description": "Inferring Shell dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": ["InferShellDependencies", "ShellMapping", "ShellSetup"], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.map_shell_files": { + "description": "Creating map of Shell file names to Shell targets", + "documentation": null, + "input_gets": [], + "input_types": ["AllShellTargets"], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.parse_shell_imports": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["ParseShellImportsRequest", "Shellcheck", "Platform"], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.tailor.find_putative_targets": { + "description": "Determine candidate shell targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources", + "ShellSetup" + ], + "name": "pants.backend.shell.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.test.test_shell_command": { + "description": "Test with shell command", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Process, ShellCommandProcessFromTargetRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "TestSubsystem", "TestExtraEnv"], + "name": "pants.backend.shell.goals.test.test_shell_command", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck": { + "description": "Lint with Shellcheck", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "Shellcheck", "Platform"], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_type": "LintResult", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt": { + "description": "Format with shfmt", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Shfmt", "Platform"], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell": { + "description": "Determine shunit2 shell", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["Shunit2RunnerRequest", "EnvironmentAware"], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2": { + "description": "Run tests with Shunit2", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "TestSubsystem"], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test": { + "description": "Setup Shunit2 to run interactively", + "documentation": null, + "input_gets": ["Get(TestSetup, TestSetupRequest, ..)"], + "input_types": ["Batch"], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target": { + "description": "Setup shunit2", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "EnvironmentAware", + "TestSubsystem", + "TestExtraEnv", + "GlobalOptions", + "Shunit2", + "Platform" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ShellGeneratorSettingsRequest", "ShellSetup"], + "name": "pants.backend.shell.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Process, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(AdhocProcessResult, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_shell_command_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)" + ], + "input_types": ["BashBinary", "RunShellCommand"], + "name": "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox": { + "description": "Running shell command", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., ShellCommandProcessFromTargetRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateFilesFromShellCommandRequest"], + "name": "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + }, + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["InferTerraformModuleDependenciesRequest"], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["TerraformHcl2Parser"], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources": { + "description": null, + "documentation": null, + "input_gets": ["Get(Process, VenvPexProcess, ..)"], + "input_types": ["ParseTerraformModuleSources", "ParserSetup"], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.check.terraform_check": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": ["TerraformCheckRequest", "TerraformValidateSubsystem"], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets": { + "description": "Determine candidate Terraform targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeTerraformTargetsRequest", + "TerraformTool", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourceFiles, SourceFilesRequest, ..)"], + "input_types": ["PartitionRequest", "TfFmtSubsystem"], + "name": "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt": { + "description": "Format with `terraform fmt`", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "TfFmtSubsystem"], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.tool.setup_terraform_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(DownloadedExternalTool, ExternalToolRequest, ..)"], + "input_types": ["TerraformProcess", "TerraformTool", "Platform"], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.tools.preamble.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "PreambleSubsystem"], + "name": "pants.backend.tools.preamble.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.preamble.rules.preamble_fmt": { + "description": "Add preambles", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["Batch", "PreambleSubsystem"], + "name": "pants.backend.tools.preamble.rules.preamble_fmt", + "output_type": "FixResult", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.workunit_logger.rules.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["WorkunitLoggerCallbackFactoryRequest", "WorkunitLogger"], + "name": "pants.backend.tools.workunit_logger.rules.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.backend.experimental.tools.workunit_logger" + }, + "pants.backend.tools.yamllint.rules.gather_config_files": { + "description": null, + "documentation": "Gather yamllint configuration files.", + "input_gets": ["Get(Snapshot, PathGlobs, ..)"], + "input_types": ["YamllintConfigFilesRequest", "Yamllint"], + "name": "pants.backend.tools.yamllint.rules.gather_config_files", + "output_type": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(YamllintConfigFiles, YamllintConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": ["PartitionRequest", "Yamllint"], + "name": "pants.backend.tools.yamllint.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.run_yamllint": { + "description": "Lint using yamllint", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, PexProcess, ..)" + ], + "input_types": ["Batch", "Yamllint"], + "name": "pants.backend.tools.yamllint.rules.run_yamllint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.subsystem.yamllint_export": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["YamllintExportSentinel", "Yamllint"], + "name": "pants.backend.tools.yamllint.subsystem.yamllint_export", + "output_type": "ExportPythonTool", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.bsp.rules.bsp_context": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["SessionValues"], + "name": "pants.bsp.rules.bsp_context", + "output_type": "BSPContext", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.bsp_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPCompileResult, CompileOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["CompileParams", "Workspace"], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_type": "CompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.compile_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPCompileResult, BSPCompileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileOneBSPTargetRequest", + "BSPContext", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.compile.compile_bsp_target", + "output_type": "BSPCompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.lifecycle.bsp_build_initialize": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["InitializeBuildParams", "UnionMembership"], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.bsp_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPResourcesResult, ResourcesForOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResourcesParams", "Workspace"], + "name": "pants.bsp.util_rules.resources.bsp_resources_request", + "output_type": "ResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.resources_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPResourcesResult, BSPResourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResourcesForOneBSPTargetRequest", "UnionMembership"], + "name": "pants.bsp.util_rules.resources.resources_bsp_target", + "output_type": "BSPResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": ["SourcesParams"], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_type": "SourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["DependencyModulesParams", "Workspace"], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DependencySourcesParams"], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_workspace_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateOneBSPBuildTargetResult, GenerateOneBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "BSPBuildTargets", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPBuildTargetsMetadataResult, BSPBuildTargetsMetadataRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "GenerateOneBSPBuildTargetRequest", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "output_type": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": ["MaterializeBuildTargetSourcesRequest", "BuildRoot"], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(BSPBuildTargetInternal, _ParseOneBSPMappingRequest, ..)" + ], + "input_types": ["BSPGoal"], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "output_type": "BSPBuildTargets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.parse_one_bsp_mapping": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["_ParseOneBSPMappingRequest"], + "name": "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses": { + "description": null, + "documentation": null, + "input_gets": ["Get(Targets, RawSpecsWithoutFileOwners, ..)"], + "input_types": [ + "BSPBuildTargetInternal", + "UnionMembership", + "FieldDefaults" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "output_type": "Targets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["BuildTargetIdentifier", "BSPBuildTargets"], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": ["BSPBuildTargetInternal"], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "output_type": "BSPBuildTargetSourcesInfo", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_one_dependency_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(BSPDependencyModulesResult, BSPDependencyModulesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResolveOneDependencyModuleRequest", "UnionMembership"], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + }, + "pants.core.goals.check.check": { + "description": "`check` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(CheckResults, {CheckRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "Workspace", + "FilteredTargets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_type": "Check", + "provider": "pants.core" + }, + "pants.core.goals.deploy.publish_process_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)" + ], + "input_types": ["_PublishProcessesForTargetRequest"], + "name": "pants.core.goals.deploy.publish_process_for_target", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.deploy.run_deploy": { + "description": "`experimental-deploy` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(DeployProcess, DeployFieldSet, ..)", + "Get(PublishProcesses, _PublishProcessesForTargetRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": ["Console", "DeploySubsystem"], + "name": "pants.core.goals.deploy.run_deploy", + "output_type": "Deploy", + "provider": "pants.core" + }, + "pants.core.goals.export.export": { + "description": "`export` goal", + "documentation": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir", + "ExportSubsystem" + ], + "name": "pants.core.goals.export.export", + "output_type": "Export", + "provider": "pants.core" + }, + "pants.core.goals.fix.convert_fix_result_to_lint_result": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FixResult"], + "name": "pants.core.goals.fix.convert_fix_result_to_lint_result", + "output_type": "LintResult", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix": { + "description": "`fix` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FixSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fix.fix", + "output_type": "Fix", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix_batch": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(FixResult, Batch, ..)" + ], + "input_types": ["_FixBatchRequest"], + "name": "pants.core.goals.fix.fix_batch", + "output_type": "_FixBatchResult", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt": { + "description": "`fmt` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_type": "Fmt", + "provider": "pants.core" + }, + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal": { + "description": "`generate-lockfiles` goal", + "documentation": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, {RequestedUserResolveNames: .., EnvironmentName: ..})", + "Get(WrappedGenerateLockfile, {GenerateToolLockfileSentinel: .., EnvironmentName: ..})", + "Get(GenerateLockfileResult, {GenerateLockfile: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem", + "ChosenLocalEnvironmentName", + "Console", + "GlobalOptions" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + }, + "pants.core.goals.lint.lint": { + "description": "`lint` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(LintResult, Batch, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Specs", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_type": "Lint", + "provider": "pants.core" + }, + "pants.core.goals.package.environment_aware_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(BuiltPackage, {PackageFieldSet: .., EnvironmentName: ..})" + ], + "input_types": ["EnvironmentAwarePackageRequest"], + "name": "pants.core.goals.package.environment_aware_package", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.goals.package.find_all_packageable_targets": { + "description": "Find all packageable targets in project", + "documentation": null, + "input_gets": ["Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)"], + "input_types": ["AllTargets"], + "name": "pants.core.goals.package.find_all_packageable_targets", + "output_type": "AllPackageableTargets", + "provider": "pants.core" + }, + "pants.core.goals.package.package_asset": { + "description": "`package` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["Workspace", "DistDir"], + "name": "pants.core.goals.package.package_asset", + "output_type": "Package", + "provider": "pants.core" + }, + "pants.core.goals.publish.package_for_publish": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(PublishProcesses, {PublishRequest: .., EnvironmentName: ..})" + ], + "input_types": ["PublishProcessesRequest", "ChosenLocalEnvironmentName"], + "name": "pants.core.goals.publish.package_for_publish", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.publish.run_publish": { + "description": "`publish` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "PublishSubsystem", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.publish.run_publish", + "output_type": "Publish", + "provider": "pants.core" + }, + "pants.core.goals.repl.run_repl": { + "description": "`repl` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "ReplSubsystem", + "FilteredTargets", + "UnionMembership", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.repl.run_repl", + "output_type": "Repl", + "provider": "pants.core" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RunShellCommand"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["PythonRequirementFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RunShellCommand"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run.run": { + "description": "`run` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(RunDebugAdapterRequest, RunFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "DebugAdapterSubsystem", + "GlobalOptions", + "Workspace", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.run.run", + "output_type": "Run", + "provider": "pants.core" + }, + "pants.core.goals.tailor.determine_all_owned_sources": { + "description": "Determine all files already owned by targets", + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["AllUnexpandedTargets"], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_type": "AllOwnedSources", + "provider": "pants.core" + }, + "pants.core.goals.tailor.edit_build_files": { + "description": "Edit BUILD files with new targets", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["EditBuildFilesRequest", "TailorSubsystem"], + "name": "pants.core.goals.tailor.edit_build_files", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + }, + "pants.core.goals.tailor.rename_conflicting_targets": { + "description": null, + "documentation": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": ["PutativeTargets", "AllUnexpandedTargets"], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + }, + "pants.core.goals.tailor.restrict_conflicting_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": ["PutativeTarget"], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + }, + "pants.core.goals.tailor.tailor": { + "description": "`tailor` goal", + "documentation": null, + "input_gets": [ + "Get(SpecsPaths, Specs, ..)", + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_type": "TailorGoal", + "provider": "pants.core" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test.build_runtime_package_dependencies": { + "description": "Build runtime package dependencies for tests", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)" + ], + "input_types": ["BuildPackageDependenciesRequest"], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + }, + "pants.core.goals.test.get_filtered_environment": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.goals.test.get_filtered_environment", + "output_type": "TestExtraEnv", + "provider": "pants.core" + }, + "pants.core.goals.test.run_tests": { + "description": "`test` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(Partitions, {PartitionRequest: .., EnvironmentName: ..})", + "Get(EnvironmentName, SingleEnvironmentNameRequest, ..)", + "Get(TestDebugRequest, {Batch: .., EnvironmentName: ..})", + "Get(TestDebugAdapterRequest, {Batch: .., EnvironmentName: ..})", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})", + "Get(TestResult, {Batch: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, {CoverageDataCollection: .., EnvironmentName: ..})", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "DebugAdapterSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.test.run_tests", + "output_type": "Test", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_black": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["FormatWithBlackRequest", "Black"], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_yapf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["FormatWithYapfRequest", "Yapf"], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields": { + "description": "Check for deprecated field type names", + "documentation": null, + "input_gets": ["Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)"], + "input_types": ["RenameDeprecatedFieldsRequest"], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets": { + "description": "Check for deprecated target type names", + "documentation": null, + "input_gets": ["Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)"], + "input_types": ["RenameDeprecatedTargetsRequest"], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.update_build_files": { + "description": "Update all BUILD files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership", + "Specs" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(VersionManagerSearchPaths, VersionManagerSearchPathsRequest, ..)" + ], + "input_types": [ + "_ExpandInterpreterSearchPathsRequest", + "PathEnvironmentVariable" + ], + "name": "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "output_type": "_SearchPaths", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap.python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(_SearchPaths, _ExpandInterpreterSearchPathsRequest, ..)" + ], + "input_types": ["EnvironmentAware"], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_type": "PythonBootstrap", + "provider": "pants.core" + }, + "pants.core.target_types.find_all_assets": { + "description": "Find all assets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.core.target_types.find_all_assets", + "output_type": "AllAssetTargets", + "provider": "pants.core" + }, + "pants.core.target_types.find_all_assets_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllAssetTargetsRequest", "AllAssetTargets"], + "name": "pants.core.target_types.find_all_assets_request", + "output_type": "AllAssetTargets", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_file_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["GenerateFileSourceRequest", "Platform"], + "name": "pants.core.target_types.hydrate_file_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_resource_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["GenerateResourceSourceRequest", "Platform"], + "name": "pants.core.target_types.hydrate_resource_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.map_assets_by_path": { + "description": "Mapping assets by path", + "documentation": null, + "input_gets": [], + "input_types": ["AllAssetTargets"], + "name": "pants.core.target_types.map_assets_by_path", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + }, + "pants.core.target_types.package_archive_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": ["ArchiveFieldSet"], + "name": "pants.core.target_types.package_archive_target", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.target_types.relocate_files": { + "description": "Relocating loose files for `relocated_files` targets", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["RelocateFilesViaCodegenRequest"], + "name": "pants.core.target_types.relocate_files", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.download_python_binary": { + "description": "Downloading Python for scripts", + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ProcessResult, Process, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "_DownloadPythonBuildStandaloneBinaryRequest", + "Platform", + "TarBinary", + "PythonBootstrapSubsystem", + "BashBinary" + ], + "name": "pants.core.util_rules.adhoc_binaries.download_python_binary", + "output_type": "_PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonBuildStandaloneBinary"], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GunzipBinaryRequest", "GunzipBinary"], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_PythonBuildStandaloneBinary, _DownloadPythonBuildStandaloneBinaryRequest, ..)" + ], + "input_types": ["EnvironmentTarget"], + "name": "pants.core.util_rules.adhoc_binaries.get_python_for_scripts", + "output_type": "PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["AddExtraSandboxContentsToProcess"], + "name": "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["MergeExtraSandboxContents"], + "name": "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "output_type": "ExtraSandboxContents", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["AdhocProcessRequest", "BashBinary"], + "name": "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(RunInSandboxRequest, RunFieldSet, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResolveExecutionDependenciesRequest", "BashBinary"], + "name": "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "output_type": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.run_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, AdhocProcessRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, {FallibleProcessResult: .., ProductDescription: ..})", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["AdhocProcessRequest"], + "name": "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest": { + "description": null, + "documentation": "Backwards-compatibility helper.", + "input_gets": [], + "input_types": ["Digest"], + "name": "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest", + "output_type": "MaybeExtractArchiveRequest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.create_archive": { + "description": "Creating an archive file", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ZipBinary)", + "Get(BashBinary)", + "Get(TarBinary)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["CreateArchive"], + "name": "pants.core.util_rules.archive.create_archive", + "output_type": "Digest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.maybe_extract_archive": { + "description": "Extracting an archive file", + "documentation": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary)", + "Get(TarBinary)", + "Get(GunzipBinary)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["MaybeExtractArchiveRequest"], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_type": "ExtractedArchive", + "provider": "pants.core" + }, + "pants.core.util_rules.asdf.resolve_asdf_tool_paths": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["AsdfToolPathsRequest", "BuildRoot"], + "name": "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "output_type": "AsdfToolPathsResult", + "provider": "pants.core" + }, + "pants.core.util_rules.config_files.find_config_file": { + "description": "Find config files", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": ["ConfigFilesRequest"], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_type": "ConfigFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.distdir.get_distdir": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GlobalOptions", "BuildRoot"], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_type": "DistDir", + "provider": "pants.core" + }, + "pants.core.util_rules.external_tool.download_external_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["ExternalToolRequest"], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "ShellTestSubsystem"], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Shellcheck"], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "Shfmt"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths": { + "description": null, + "documentation": "Inspects the directory of a version manager tool like pyenv or nvm to find installations.", + "input_gets": [], + "input_types": ["VersionManagerSearchPathsRequest"], + "name": "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths", + "output_type": "VersionManagerSearchPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.search_paths.validate_search_paths": { + "description": null, + "documentation": "Checks for special search path strings, and errors if any are invalid for the environment.\n\nThis will return:\n* The search paths, unaltered, for local/undefined environments, OR\n* The search paths, with invalid tokens removed, if the provided value was unaltered from the\n default value in the options system.\n* The search paths unaltered, if the search paths are all valid tokens for this environment\n\nIf the environment is non-local and there are invalid tokens for those environments, raise\n`ValueError`.", + "input_gets": [], + "input_types": ["ValidateSearchPathsRequest"], + "name": "pants.core.util_rules.search_paths.validate_search_paths", + "output_type": "ValidatedSearchPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.source_files.determine_source_files": { + "description": "Get all relevant source files", + "documentation": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["SourceFilesRequest"], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_type": "SourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_file_name": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourceRoot, SourceRootRequest, ..)"], + "input_types": ["StrippedFileNameRequest"], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_type": "StrippedFileName", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_source_roots": { + "description": null, + "documentation": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["SourceFiles"], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_sources_paths": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourceRoot, SourceRootRequest, ..)"], + "input_types": ["SourcesPaths"], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + }, + "pants.core.util_rules.subprocess_environment.get_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.create_binary_shims": { + "description": null, + "documentation": "Creates a bin directory with shims for all requested binaries.\n\nThis can be provided to a `Process` as an `immutable_input_digest`, or can be merged into the\ninput digest.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["BinaryShimsRequest", "BashBinary"], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_type": "BinaryShims", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_bash": { + "description": "Finding the `bash` binary", + "documentation": null, + "input_gets": [], + "input_types": ["BashBinaryRequest", "BashBinary"], + "name": "pants.core.util_rules.system_binaries.find_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["BinaryPathRequest", "EnvironmentTarget"], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_type": "BinaryPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat": { + "description": "Finding the `cat` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cat", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["CatBinaryRequest", "CatBinary"], + "name": "pants.core.util_rules.system_binaries.find_cat_wrapper", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod": { + "description": "Finding the `chmod` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ChmodBinaryRequest", "ChmodBinary"], + "name": "pants.core.util_rules.system_binaries.find_chmod_wrapper", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cp": { + "description": "Finding the `cp` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cp", + "output_type": "CpBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff": { + "description": "Finding the `diff` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DiffBinaryRequest", "DiffBinary"], + "name": "pants.core.util_rules.system_binaries.find_diff_wrapper", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_git", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GitBinaryRequest", "GitBinary"], + "name": "pants.core.util_rules.system_binaries.find_git_wrapper", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_ln": { + "description": "Finding the `ln` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_ln", + "output_type": "LnBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir": { + "description": "Finding the `mkdir` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["MkdirBinaryRequest", "MkdirBinary"], + "name": "pants.core.util_rules.system_binaries.find_mkdir_wrapper", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mktemp": { + "description": "Finding the `mktempt` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mktemp", + "output_type": "MktempBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mv": { + "description": "Finding the `mv` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mv", + "output_type": "MvBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_open": { + "description": "Finding the `open` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_open", + "output_type": "OpenBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_python": { + "description": "Finding a `python` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["PythonBootstrap"], + "name": "pants.core.util_rules.system_binaries.find_python", + "output_type": "PythonBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink": { + "description": "Finding the `readlink` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_readlink", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ReadlinkBinaryRequest", "ReadlinkBinary"], + "name": "pants.core.util_rules.system_binaries.find_readlink_wrapper", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar": { + "description": "Finding the `tar` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["Platform"], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["TarBinaryRequest", "TarBinary"], + "name": "pants.core.util_rules.system_binaries.find_tar_wrapper", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_touch": { + "description": "Finding the `touch` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_touch", + "output_type": "TouchBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip": { + "description": "Finding the `unzip` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["UnzipBinaryRequest", "UnzipBinary"], + "name": "pants.core.util_rules.system_binaries.find_unzip_wrapper", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip": { + "description": "Finding the `zip` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ZipBinaryRequest", "ZipBinary"], + "name": "pants.core.util_rules.system_binaries.find_zip_wrapper", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.get_bash": { + "description": "Finding the `bash` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.maybe_find_git", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["MaybeGitBinaryRequest", "MaybeGitBinary"], + "name": "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateWrapSourceSourcesRequest"], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "output_type": "GeneratedSources", + "provider": "pants.backend.python" + }, + "pants.engine.internals.graph._determine_target_adaptor_and_type": { + "description": null, + "documentation": null, + "input_gets": ["Get(TargetAdaptor, TargetAdaptorRequest, ..)"], + "input_types": ["_RequestAdaptorAndType", "RegisteredTargetTypes"], + "name": "pants.engine.internals.graph._determine_target_adaptor_and_type", + "output_type": "_AdaptorAndType", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.coarsened_targets": { + "description": "Resolve coarsened targets", + "documentation": null, + "input_gets": ["Get(_DependencyMapping, _DependencyMappingRequest, ..)"], + "input_types": ["CoarsenedTargetsRequest", "ChosenLocalEnvironmentName"], + "name": "pants.engine.internals.graph.coarsened_targets", + "output_type": "CoarsenedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.coarsened_targets_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Addresses"], + "name": "pants.engine.internals.graph.coarsened_targets_request", + "output_type": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.determine_explicitly_provided_dependencies": { + "description": null, + "documentation": null, + "input_gets": ["Get(Address, AddressInput, ..)"], + "input_types": [ + "DependenciesRequest", + "UnionMembership", + "RegisteredTargetTypes", + "SubprojectRoots" + ], + "name": "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "output_type": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_subproject_roots": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GlobalOptions"], + "name": "pants.engine.internals.graph.extract_subproject_roots", + "output_type": "SubprojectRoots", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_unmatched_build_file_globs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GlobalOptions"], + "name": "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "output_type": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.field_defaults": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldDefaultFactoryResult, FieldDefaultFactoryRequest, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.engine.internals.graph.field_defaults", + "output_type": "FieldDefaults", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_targets": { + "description": "Find all targets in the project", + "documentation": null, + "input_gets": ["Get(Targets, RawSpecsWithoutFileOwners, ..)"], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_targets", + "output_type": "AllTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_targets_deprecated": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargetsRequest", "AllTargets"], + "name": "pants.engine.internals.graph.find_all_targets_deprecated", + "output_type": "AllTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_unexpanded_targets": { + "description": "Find all (unexpanded) targets in the project", + "documentation": null, + "input_gets": ["Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)"], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_unexpanded_targets", + "output_type": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_unexpanded_targets_deprecated": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargetsRequest", "AllUnexpandedTargets"], + "name": "pants.engine.internals.graph.find_all_unexpanded_targets_deprecated", + "output_type": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_owners": { + "description": "Find which targets own certain files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FilteredTargets, RawSpecsWithoutFileOwners, ..)", + "Get(Targets, RawSpecsWithoutFileOwners, ..)", + "Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)" + ], + "input_types": ["OwnersRequest", "ChosenLocalEnvironmentName"], + "name": "pants.engine.internals.graph.find_owners", + "output_type": "Owners", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_valid_field_sets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FieldSetsPerTargetRequest", "UnionMembership"], + "name": "pants.engine.internals.graph.find_valid_field_sets", + "output_type": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.generate_file_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(TargetFilesGeneratorSettings, TargetFilesGeneratorSettingsRequest, ..)" + ], + "input_types": ["GenerateFileTargets", "UnionMembership"], + "name": "pants.engine.internals.graph.generate_file_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.hydrate_sources": { + "description": "Hydrate the `sources` field", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(GeneratedSources, GenerateSourcesRequest, ..)" + ], + "input_types": [ + "HydrateSourcesRequest", + "UnmatchedBuildFileGlobs", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.hydrate_sources", + "output_type": "HydratedSources", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_all_generator_target_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AddressFamilies, RawSpecsWithoutFileOwners, ..)", + "Get(ResolvedTargetGeneratorRequests, ResolveTargetGeneratorRequests, ..)" + ], + "input_types": ["ResolveAllTargetGeneratorRequests"], + "name": "pants.engine.internals.graph.resolve_all_generator_target_requests", + "output_type": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_dependencies": { + "description": "Resolve direct dependencies of target", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(InferredDependencies, {InferDependenciesRequest: .., EnvironmentName: ..})", + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})", + "Get(Address, AddressInput, ..)", + "Get(ValidatedDependencies, {ValidateDependenciesRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "DependenciesRequest", + "TargetTypesToGenerateTargetsRequests", + "UnionMembership", + "SubprojectRoots", + "FieldDefaults", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_dependencies", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_generator_target_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_AdaptorAndType, _RequestAdaptorAndType, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "ResolveTargetGeneratorRequests", + "UnionMembership", + "TargetTypesToGenerateTargetsRequests", + "UnmatchedBuildFileGlobs" + ], + "name": "pants.engine.internals.graph.resolve_generator_target_requests", + "output_type": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_source_paths": { + "description": "Resolve `sources` field file names", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": ["SourcesPathsRequest", "UnmatchedBuildFileGlobs"], + "name": "pants.engine.internals.graph.resolve_source_paths", + "output_type": "SourcesPaths", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "WrappedTargetRequest", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_target", + "output_type": "WrappedTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_for_bootstrapping": { + "description": null, + "documentation": null, + "input_gets": ["Get(_AdaptorAndType, _RequestAdaptorAndType, ..)"], + "input_types": ["WrappedTargetRequest", "UnionMembership"], + "name": "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "output_type": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_parametrizations": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_AdaptorAndType, _RequestAdaptorAndType, ..)", + "Get(ResolvedTargetGeneratorRequests, ResolveTargetGeneratorRequests, ..)", + "Get(GeneratedTargets, GenerateTargetsRequest, ..)" + ], + "input_types": ["_TargetParametrizationsRequest", "UnionMembership"], + "name": "pants.engine.internals.graph.resolve_target_parametrizations", + "output_type": "_TargetParametrizations", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "UnexpandedTargets", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_targets", + "output_type": "Targets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unexpanded_targets": { + "description": null, + "documentation": null, + "input_gets": ["Get(WrappedTarget, WrappedTargetRequest, ..)"], + "input_types": ["Addresses"], + "name": "pants.engine.internals.graph.resolve_unexpanded_targets", + "output_type": "UnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unparsed_address_inputs": { + "description": "Resolve addresses", + "documentation": null, + "input_gets": [ + "Get(MaybeAddress, AddressInput, ..)", + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": ["UnparsedAddressInputs", "SubprojectRoots"], + "name": "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.target_types_to_generate_targets_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["UnionMembership"], + "name": "pants.engine.internals.graph.target_types_to_generate_targets_requests", + "output_type": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_dependency_mapping": { + "description": null, + "documentation": "This uses iteration, rather than recursion, so that we can tolerate dependency cycles.\n\nUnlike a traditional BFS algorithm, we batch each round of traversals via `MultiGet` for\nimproved performance / concurrency.", + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(UnexpandedTargets, DependenciesRequest, ..)" + ], + "input_types": ["_DependencyMappingRequest"], + "name": "pants.engine.internals.graph.transitive_dependency_mapping", + "output_type": "_DependencyMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_targets": { + "description": "Resolve transitive targets", + "documentation": "Find all the targets transitively depended upon by the target roots.", + "input_gets": [ + "Get(_DependencyMapping, _DependencyMappingRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)" + ], + "input_types": ["TransitiveTargetsRequest", "ChosenLocalEnvironmentName"], + "name": "pants.engine.internals.graph.transitive_targets", + "output_type": "TransitiveTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.process.fallible_to_exec_result_or_raise": { + "description": null, + "documentation": "Converts a FallibleProcessResult to a ProcessResult or raises an error.", + "input_gets": [], + "input_types": [ + "FallibleProcessResult", + "ProductDescription", + "KeepSandboxes" + ], + "name": "pants.engine.process.fallible_to_exec_result_or_raise", + "output_type": "ProcessResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.get_multi_platform_request_description": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Process"], + "name": "pants.engine.process.get_multi_platform_request_description", + "output_type": "ProductDescription", + "provider": "pants.backend.experimental.helm" + }, + "pants.goal.stats_aggregator.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.jvm.bsp.compile.notify_for_classpath_entry": { + "description": null, + "documentation": null, + "input_gets": ["Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)"], + "input_types": ["BSPClasspathEntryRequest", "BSPContext"], + "name": "pants.jvm.bsp.compile.notify_for_classpath_entry", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["CoarsenedTargets", "ClasspathEntryRequestFactory"], + "name": "pants.jvm.classpath.classpath", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.loose_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["ClasspathEntry", "UnzipBinary"], + "name": "pants.jvm.classpath.loose_classfiles", + "output_type": "LooseClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.calculate_jvm_request_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["UnionMembership"], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.classpath_dependency_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.compile_classpath_entries": { + "description": null, + "documentation": null, + "input_gets": ["Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)"], + "input_types": ["ClasspathEntryRequests"], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.required_classfiles": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FallibleClasspathEntry"], + "name": "pants.jvm.compile.required_classfiles", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping": { + "description": null, + "documentation": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "output_type": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets": { + "description": "Find all jvm_artifact targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields": { + "description": "Find all targets with experimental_provides fields in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllJvmArtifactTargets", "JvmSubsystem"], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings": { + "description": null, + "documentation": null, + "input_gets": ["Get(SymbolMap, FirstPartyMappingRequest, ..)"], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem", + "ThirdPartySymbolMapping" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "output_type": "SymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.determine_jvm_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KnownJVMUserResolveNamesRequest", "JvmSubsystem"], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.generate_jvm_lockfile": { + "description": "Generate JVM lockfile", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["GenerateJvmLockfile", "GenerateLockfilesSubsystem"], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GenerateJvmLockfile"], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.build_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "output_type": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JarToolGenerateLockfileSentinel"], + "name": "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.run_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "JarToolRequest", + "InternalJdk", + "JarToolCompiledClassfiles" + ], + "name": "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.fetch_nailgun": { + "description": null, + "documentation": null, + "input_gets": ["Get(ClasspathEntry, CoursierLockfileEntry, ..)"], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.internal_jdk": { + "description": null, + "documentation": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": ["Get(JdkEnvironment, JdkRequest, ..)"], + "input_types": ["JvmSubsystem"], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.jvm_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess", + "JvmSubsystem", + "GlobalOptions" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.prepare_jdk_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "EnvironmentAware", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest", + "EnvironmentTarget" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.deploy_jar_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": ["DeployJarClasspathEntryRequest"], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.package_deploy_jar": { + "description": null, + "documentation": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Creating a deploy jar with a valid ZIP index and deduplicated entries\n3. (optionally) Stripping the jar of all metadata that may cause it to be non-reproducible (https://reproducible-builds.org)\n4. (optionally) Apply shading rules to the bytecode inside the jar file", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, JarToolRequest, ..)", + "Get(Digest, StripJarRequest, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["JvmSubsystem", "DeployJarFieldSet"], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.package_war": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["PackageWarFileFieldSet", "BashBinary", "ZipBinary"], + "name": "pants.jvm.package.war.package_war", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_content": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["RenderWarContentRequest"], + "name": "pants.jvm.package.war.render_war_content", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_deployment_descriptor": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["RenderWarDeploymentDescriptorRequest"], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile": { + "description": null, + "documentation": "Fetch every artifact in a lockfile.", + "input_gets": ["Get(ClasspathEntry, CoursierLockfileEntry, ..)"], + "input_types": ["CoursierResolvedLockfile"], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord": { + "description": null, + "documentation": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": ["CoursierLockfileEntry"], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile": { + "description": null, + "documentation": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": ["ArtifactRequirements"], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier": { + "description": "Fetch with coursier", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["CoursierFetchRequest"], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": ["CoursierResolveKey"], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["ToolClasspathRequest"], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ArtifactRequirements"], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets": { + "description": null, + "documentation": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": ["Get(Digest, PathGlobs, ..)"], + "input_types": ["CoarsenedTargets", "JvmSubsystem"], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["BashBinary", "Coursier", "CoursierFetchProcess"], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.setup_coursier": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBuildStandaloneBinary", + "Platform" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": ["GatherJvmCoordinatesRequest"], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": ["GenerateJvmLockfileFromTool"], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resources.assemble_resources_jar": { + "description": "Assemble resources", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "BashBinary", + "TouchBinary", + "JvmSubsystem", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run.create_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(Classpath, CoarsenedTargets, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["GenericJvmRunRequest", "UnzipBinary"], + "name": "pants.jvm.run.create_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["DeployJarFieldSet"], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JarJarGeneratorLockfileSentinel", "JarJar"], + "name": "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.rules.shade_jar": { + "description": "Applies shading rules to a JAR file", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarJarGeneratorLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ShadeJarRequest", "InternalJdk", "JarJar"], + "name": "pants.jvm.shading.rules.shade_jar", + "output_type": "ShadedJar", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.jvm.strip_jar.strip_jar.build_processors", + "output_type": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["StripJarToolLockfileSentinel"], + "name": "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.strip_jar": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "StripJarCompiledClassfiles", + "InternalJdk", + "StripJarRequest" + ], + "name": "pants.jvm.strip_jar.strip_jar.strip_jar", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, GenericJvmRunRequest, ..)"], + "input_types": ["KotlinFieldSet"], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.jvm.target_types.jvm_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JvmResolveFieldDefaultFactoryRequest", "JvmSubsystem"], + "name": "pants.jvm.target_types.jvm_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.generate_junit_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JunitToolLockfileSentinel", "JUnit"], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.run_junit_test": { + "description": "Run JUnit", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["TestSubsystem", "Batch"], + "name": "pants.jvm.test.junit.run_junit_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["Batch"], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.util_rules.digest_to_file_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": ["ExtractFileDigest"], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + }, + "pants.source.source_root.all_roots": { + "description": "Compute all source roots", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["SourceRootConfig"], + "name": "pants.source.source_root.all_roots", + "output_type": "AllSourceRoots", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_root": { + "description": null, + "documentation": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["SourceRootRequest", "SourceRootConfig"], + "name": "pants.source.source_root.get_optional_source_root", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_roots": { + "description": null, + "documentation": "Rule to request source roots that may not exist.", + "input_gets": ["Get(OptionalSourceRoot, SourceRootRequest, ..)"], + "input_types": ["SourceRootsRequest"], + "name": "pants.source.source_root.get_optional_source_roots", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_root": { + "description": null, + "documentation": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": ["Get(OptionalSourceRoot, SourceRootRequest, ..)"], + "input_types": ["SourceRootRequest"], + "name": "pants.source.source_root.get_source_root", + "output_type": "SourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_roots": { + "description": null, + "documentation": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": ["Get(OptionalSourceRootsResult, SourceRootsRequest, ..)"], + "input_types": ["SourceRootsRequest"], + "name": "pants.source.source_root.get_source_roots", + "output_type": "SourceRootsResult", + "provider": "pants.core" + }, + "pants.vcs.git.get_git_worktree": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GitWorktreeRequest", "MaybeGitBinary"], + "name": "pants.vcs.git.get_git_worktree", + "output_type": "MaybeGitWorktree", + "provider": "pants.core" + } + }, + "name_to_target_type_info": { + "_generator_sources_helper": { + "alias": "_generator_sources_helper", + "description": "A private helper target type used by some target generators.\n\nThis tracks their `source` / `sources` field so that `--changed-since --changed-dependents` works properly for generated targets.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.python", + "summary": "A private helper target type used by some target generators." + }, + "_lockfile": { + "alias": "_lockfile", + "description": "A target for lockfiles in order to include them in the dependency graph of other targets.\n\nThis tracks them so that `--changed-since --changed-dependents` works properly for targets relying on a particular lockfile.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A target for lockfiles in order to include them in the dependency graph of other targets." + }, + "_lockfiles": { + "alias": "_lockfiles", + "description": "Generate a `_lockfile` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.lock']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `_lockfile` target for each file in the `sources` field." + }, + "adhoc_tool": { + "alias": "adhoc_tool", + "description": "Execute any runnable target for its side effects.\n\nExample BUILD file:\n\n adhoc_tool(\n runnable=\":python_source\",\n args=[\"\"],\n execution_dependencies=[\":scripts\"],\n output_directories=[\"results/\"],\n output_files=[\"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runnable", + "default": null, + "description": "Address to a target that can be invoked by the `run` goal (and does not set `run_in_sandbox_behavior=NOT_SUPPORTED`). This will be executed along with any arguments specified by `args`, in a sandbox with that target's transitive dependencies, along with the transitive dependencies specified by `execution_dependencies`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "args", + "default": "()", + "description": "Extra arguments to pass into the `runnable` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that need to be present (as transitive dependencies) whenever the outputs of this target are consumed (including as dependencies).\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\nValues are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stdout", + "default": null, + "description": "A filename to capture the contents of `stdout` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stderr", + "default": null, + "description": "A filename to capture the contents of `stderr` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "Execute any runnable target for its side effects." + }, + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "duplicate_policy", + "default": "(duplicate_rule(pattern='^META-INF/services/', action='concat_text'), duplicate_rule(pattern='^META-INF/LICENSE', action='skip'))", + "description": "A list of the rules to apply when duplicate file entries are found in the final assembled JAR file.\n\nWhen defining a duplicate policy, just add `duplicate_rule` directives to this field as follows:\n\nExample:\n\n duplicate_policy=[\n duplicate_rule(pattern=\"^META-INF/services\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^reference\\.conf\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^org/apache/commons\", action=\"throw\"),\n ]\n\nWhere:\n\n* The `pattern` field is treated as a regular expression\n* The `action` field must be one of `['skip', 'replace', 'concat', 'concat_text', 'throw']`.\n\nNote that the order in which the rules are listed is relevant.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.DeployJarDuplicateRule] | None" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the final JAR artifact.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_environment": { + "alias": "docker_environment", + "description": "Configuration of a Docker environment used for building your code.\n\nEnvironment configuration includes both Docker-specific information (including the image and platform choice), as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this Docker environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nBefore running Pants using this environment, if you are using Docker Desktop, make sure the option **Enable default Docker socket** is enabled, you can find it in **Docker Desktop Settings > Advanced** panel. That option tells Docker to create a socket at `/var/run/docker.sock` which Pants can use to communicate with Docker.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image", + "default": null, + "description": "The docker image ID to use when this environment is loaded.\n\nThis value may be any image identifier that the local Docker installation can accept. This includes image names with or without tags (e.g. `centos6` or `centos6:latest`), or image names with an immutable digest (e.g. `centos@sha256:`).\n\nThe choice of image ID can affect the reproducibility of builds. Consider using an immutable digest if reproducibility is needed, but regularly ensure that the image is free of relevant bugs or security vulnerabilities.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "platform", + "default": null, + "description": "If set, Docker will always use the specified platform when pulling and running the image.\n\nIf unset, Pants will default to the CPU architecture of your local host machine. For example, if you are running on Apple Silicon, it will use `linux_arm64`, whereas running on Intel macOS will use `linux_x86_64`. This mirrors Docker's behavior when `--platform` is left off.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this Docker environment cannot be used because either the global option `--docker-execution` is false, or the field `platform` is not compatible with the local host's CPU architecture (this is only an issue when the local host is Linux; macOS is fine).\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific Docker environment cannot be used.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a Docker environment used for building your code." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, it will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "\nAny tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.17/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the `[docker].registries` configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. `\"/\"`.\n\nIt uses the `[docker].default_repository` by default.\n\nRepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory`, `parent_directory`, and `default_repository`.\n\nRegistries may also configure the repository value for specific registries.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nLabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: `default|[=|[,]]`)\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If true, do not push this image to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pull", + "default": "False", + "description": "If true, then docker will always attempt to pull a newer version of the image.\n\nNOTE: This option cannot be used on images that build off of \"transitive\" base images referenced by address (i.e. `FROM path/to/your/base/Dockerfile`).", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "squash", + "default": "False", + "description": "If true, then docker will squash newly built layers into a single new layer.\n\nNote that this option is only supported on a Docker daemon with experimental features enabled.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_test_shell_command": { + "alias": "experimental_test_shell_command", + "description": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot.\n\nExample BUILD file:\n\n experimental_test_shell_command(\n name=\"test\",\n tools=[\"test\"],\n command=\"test -r $CHROOT/some-data-file.txt\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `run_shell_command`, this target is intended to run shell commands as tests and will only run them via the `test` goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by `[shell-setup].executable_search_paths` (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this tests for target.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot." + }, + "experimental_wrap_as_go_package_sources": { + "alias": "experimental_wrap_as_go_package_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .go, .s, .S, .sx, .c, .h, .hh, .hpp, .hxx, .cc, .cpp, .cxx, .m, .f, .F, .for, .f90, .syso\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`." + }, + "experimental_wrap_as_java_sources": { + "alias": "experimental_wrap_as_java_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .java\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`." + }, + "experimental_wrap_as_kotlin_sources": { + "alias": "experimental_wrap_as_kotlin_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .kt\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`." + }, + "experimental_wrap_as_python_sources": { + "alias": "experimental_wrap_as_python_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .py, .pyi\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`." + }, + "experimental_wrap_as_resources": { + "alias": "experimental_wrap_as_resources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files from `inputs` will be matched.\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`." + }, + "experimental_wrap_as_scala_sources": { + "alias": "experimental_wrap_as_scala_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .scala\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an `http_source` is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (e.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (`linux_arm64`, `linux_x86_64`, `macos_arm64`, `macos_x86_64`) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `file` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.go', '*_test.go', '!test_ignore.go']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "test_race", + "default": null, + "description": "Enable compiling this package's test binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_artifact": { + "alias": "helm_artifact", + "description": "A third party Helm artifact.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registry", + "default": null, + "description": "Either registry alias (prefixed by `@`) configured in `[helm.registries]` for the Helm artifact or the full OCI registry URL.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repository", + "default": null, + "description": "Either a HTTP(S) URL to a classic repository, or a path inside an OCI registry (when `registry` is provided).", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "Artifact name of the chart, without version number.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The `version` part of a third party Helm chart.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A third party Helm artifact." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'values.yml', 'templates/*.yaml', 'templates/*.yml', 'templates/*.tpl', 'crds/*.yaml', 'crds/*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['values.yaml', 'templates/*.yaml', '!values_ignore.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "repository", + "default": null, + "description": "Repository to use in the Helm registry where this chart is going to be published.\n\nIf no value is given and `[helm].default-registry-repository` is undefined too, then the chart will be pushed to the root of the OCI registry.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any OCI registries to use for the built chart.\n\nThe address is an `oci://` prefixed domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the `[helm].registries` configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [helm.registries.my-registry-alias]\n address = \"oci://myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n helm_chart(\n registries = [\n \"@my-registry-alias\",\n \"oci://myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this Helm chart to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_lint", + "default": "False", + "description": "If set to true, do not run any linting in this Helm chart when running `scie-pants-linux-x86_64 lint`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart." + }, + "helm_deployment": { + "alias": "helm_deployment", + "description": "A Helm chart deployment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "release_name", + "default": null, + "description": "Name of the release used in the deployment. If not set, the target name will be used instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.yaml', '*.yml')", + "description": "Helm configuration files for a given deployment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "namespace", + "default": null, + "description": "Kubernetes namespace for the given deployment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_crds", + "default": "False", + "description": "If true, then does not deploy the Custom Resource Definitions that are defined in the chart.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "values", + "default": null, + "description": "Individual values to use when rendering a given deployment.\n\nValue names should be defined using dot-syntax as in the following example:\n\n helm_deployment(\n values={\n \"nameOverride\": \"my_custom_name\",\n \"image.pullPolicy\": \"Always\",\n },\n )\n\nValues can be dynamically calculated using interpolation as shown in the following example:\n\n helm_deployment(\n values={\n \"configmap.deployedAt\": \"{env.DEPLOY_TIME}\",\n },\n )\n\nCheck the Helm backend documentation on what are the options available and its caveats when making usage of dynamic values in your deployments.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "create_namespace", + "default": "False", + "description": "If true, the namespace will be created if it doesn't exist.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "no_hooks", + "default": "False", + "description": "If true, none of the lifecycle hooks of the given chart will be included in the deployment.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": null, + "description": "Timeout in seconds when running a Helm deployment.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "post_renderers", + "default": null, + "description": "List of runnable targets to be used to post-process the helm chart after being rendered by Helm.\n\nThis is equivalent to the same post-renderer feature already available in Helm with the difference that this supports a list of executables instead of a single one.\n\nWhen more than one post-renderer is given, they will be combined into a single one in which the input of each of them would be output of the previous one.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "enable_dns", + "default": "False", + "description": "Enables DNS lookups when using the `getHostByName` template function.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart deployment." + }, + "helm_unittest_test": { + "alias": "helm_unittest_test", + "description": "A single helm-unittest suite file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A single helm-unittest suite file." + }, + "helm_unittest_tests": { + "alias": "helm_unittest_tests", + "description": "Generates a `helm_unittest_test` target per each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.yaml',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*_test.yaml', '!ignore_test.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `helm_unittest_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"configmap_test.yaml\": {\"timeout\": 120},\n (\"deployment_test.yaml\", \"pod_test.yaml\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `helm_unittest_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "Generates a `helm_unittest_test` target per each file in the `sources` field." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.java', 'New*.java', '!OldExample.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.java', '!TestIgnore.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "excludes", + "default": null, + "description": "A list of unversioned coordinates (i.e. `group:artifact`) that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nThese values are passed directly to Coursier, and if specified incorrectly will show a parse error from Coursier.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., `web.xml`) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the individual JAR artifacts embedded in the `WEB-INF/lib` folder.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "kotlin_junit_test": { + "alias": "kotlin_junit_test", + "description": "A single Kotlin test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin test, run with JUnit." + }, + "kotlin_junit_tests": { + "alias": "kotlin_junit_tests", + "description": "Generate a `kotlin_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.kt', '!TestIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_junit_test` target for each file in the `sources` field." + }, + "kotlin_source": { + "alias": "kotlin_source", + "description": "A single Kotlin source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin source file containing application or library code." + }, + "kotlin_sources": { + "alias": "kotlin_sources", + "description": "Generate a `kotlin_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.kt', 'New*.kt', '!OldIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_source` target for each file in the `sources` field." + }, + "kotlinc_plugin": { + "alias": "kotlinc_plugin", + "description": "A plugin for `kotlinc`.\n\nTo enable a `kotlinc` plugin, define a target with this target type, and set the `artifact` field to the address of a `jvm_artifact` target that provides the plugin. Set the `plugin_id` field to the ID of the plugin if that name cannot be inferred from the `name` of this target.\n\nThe standard `kotlinc` plugins are available via the following artifact coordinates and IDs:\n\n* All-open: `org.jetbrains.kotlin:kotlin-allopen:VERSION` (ID: `all-open`)\n* No-arg: `org.jetbrains.kotlin:kotlin-noarg:VERSION` (ID: `no-arg`)\n* SAM with receiver: `org.jetbrains.kotlin:kotlin-sam-with-receiver:VERSION` (ID: `sam-with-receiver`)\n* kapt (annotation processor): `org.jetbrains.kotlin:org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:VERSION` (ID: `kapt3`)\n* Serialization: `org.jetbrains.kotlin:kotlin-serialization:VERSION` (ID: `serialization`)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `kotlinc`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_id", + "default": null, + "description": "The ID for `kotlinc` to use when setting options for the plugin.\n\nIf not set, the plugin ID defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "plugin_args", + "default": null, + "description": "Optional list of argument to pass to the plugin.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A plugin for `kotlinc`." + }, + "local_environment": { + "alias": "local_environment", + "description": "Configuration of a local execution environment for specific platforms.\n\nEnvironment configuration includes the platforms the environment is compatible with, and optionally a fallback environment, along with environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOnly one `local_environment` may be defined in `[environments-preview].names` per platform, and when `__local__` is specified as the environment, the `local_environment` that matches the current platform (if defined) will be selected.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatible_platforms", + "default": "('linux_arm64', 'linux_x86_64', 'macos_arm64', 'macos_x86_64')", + "description": "Which platforms this environment can be used with.\n\nThis is used for Pants to automatically determine which environment target to use for the user's machine when the environment is set to the special value `__local__`. Currently, there cannot be more than one environment target registered in `[environments-preview].names` for a particular platform. If there is no environment target for a certain platform, Pants will use the options system instead to determine environment variables and executable search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this local environment cannot be used because the field `compatible_platforms` is not compatible with the local host.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific local environment cannot be used.\n\nTip: when targeting Linux, it can be particularly helpful to fallback to a `docker_environment` or `remote_environment` target. That allows you to prefer using the local host when possible, which often has less overhead (particularly compared to Docker). If the local host is not compatible, then Pants will use Docker or remote execution to still run in a similar environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a local execution environment for specific platforms." + }, + "openapi_document": { + "alias": "openapi_document", + "description": "A single OpenAPI document file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI document file." + }, + "openapi_documents": { + "alias": "openapi_documents", + "description": "Generate an `openapi_document` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('openapi.json', 'openapi.yaml', 'openapi.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['openapi.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_document` target for each file in the `sources` field." + }, + "openapi_source": { + "alias": "openapi_source", + "description": "A single OpenAPI source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI source file." + }, + "openapi_sources": { + "alias": "openapi_sources", + "description": "Generate an `openapi_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.json', '*.yaml', '*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_source` target for each file in the `sources` field." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants. The generated targets will have the correct version based on the `version` in your `pants.toml`, and they will work with dependency inference.\n\nBecause the Plugin API is not yet stable, the version is set automatically for you to improve stability. If you're currently using a dev release, the version will be set to that exact dev release. If you're using an alpha release, release candidate (rc), or stable release, the version will allow any non-dev-release release within the release series, e.g. `>=2.17.0rc0,<2.18`.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n }\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same `entry_point` in multiple keys, so long as you don't override the same field more than one time for the `entry_point`.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore errors when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.17/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore errors when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like `'path.to.module'` and `'path.to.module:func'`, or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) `'app.py'`, Pants will convert into the module `path.to.app`;\n 2) `'app.py:func'`, Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "args", + "default": null, + "description": "Freeze these command-line args into the PEX. Allows you to run generic entry points on specific arguments without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "env", + "default": null, + "description": "Freeze these environment variables into the PEX. Allows you to run generic entry points on a specific environment without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry `pyproject.toml`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry `pyproject.toml`." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.17/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.17/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.proto', 'new_*.proto', '!old_ignore*.proto']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `protobuf_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.proto\": {\"grpc\": True},\n \"bar.proto\": {\"description\": \"our user model\"},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.17/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the value of the `binary_name` field. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary that will be output by PyOxidizer. If not set, this will default to the name of this target.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by `$` or surrounded with `${ }`.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted `entry_point` passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or `[]`).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets `filesystem_resources`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.17/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.17/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: `'path.to.module'`.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.17/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like `'path.to.module:handler_func'` or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. `'cloud_function.py:handler_func'`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nThis is re-exported at `lambda_function.handler` in the resulting package to be used as the configured handler of the Lambda in AWS. It can also be accessed under its source-root-relative module path, for example: `path.to.module.handler_func`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the Pex. This is most useful with Lambda Layers to make code uploads smaller when deps are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.\n\nIn general you'll want to define either a `runtime` or one `complete_platforms` but not both. Specifying a `runtime` is simpler, but less accurate. If you have issues either packaging the AWS Lambda PEX or running it as a deployed AWS Lambda function, you should try using `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nN.B.: If specifying `complete_platforms` to work around packaging failures encountered when using the `runtime` field, ensure you delete the `runtime` field from the target.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.17/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (`\"path.to.module:func\"`) or a Pants target address to a `pex_binary` target.\n\nExample:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a `pex_binary` target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n scie-pants-linux-x86_64 dependencies ", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.17/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing `setup.py`, `setup.cfg`, `pyproject.toml` files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "env_vars", + "default": null, + "description": "Environment variables to set when running the PEP-517 build backend.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the `long_description` field in `setup.py`.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": "''", + "description": "The path to the directory to write the distribution file to, relative the dist directory.\n\nIf undefined, this defaults to the empty path, i.e. the output goes at the top level of the dist dir.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + }, + { + "alias": "uses_mypyc", + "default": "False", + "description": "If true, this distribution is built using mypyc.\n\nIn this case, Pants will build the distribution in an environment that includes mypy, as configured in the `[mypy]` subsystem, including plugins, config files, extra type stubs, and the distribution's own requirements (which normally would not be needed at build time, but in this case may provide necessary type annotations).\n\nYou will typically set this field on distributions whose `setup.py` uses `mypyc.build.mypycify()`. See https://mypyc.readthedocs.io/en/latest/index.html .", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.17/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like `'path.to.module:handler_func'` or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. `'cloud_function.py:handler_func'`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nThis is re-exported at `main.handler` in the resulting package to used as the configured handler of the Google Cloud Function in GCP. It can also be accessed under its source-root-relative module path, for example: `path.to.module.handler_func`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.\n\nIn general you'll want to define either a `runtime` or one `complete_platforms` but not both. Specifying a `runtime` is simpler, but less accurate. If you have issues either packaging the Google Cloud Function PEX or running it as a deployed Google Cloud Function, you should try using `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "'python310' | 'python311' | 'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nN.B.: If specifying `complete_platforms` to work around packaging failures encountered when using the `runtime` field, ensure you delete the `runtime` field from the target.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be `'event'` or `'http'`. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to `--trigger-http`.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like `'path.to.module'` and `'path.to.module:func'`, or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) `'app.py'`, Pants will convert into the module `path.to.app`;\n 2) `'app.py:func'`, Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant `pyproject.toml` file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser.\n\nFurther details about pip-style requirements files are available from the PyPA documentation: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.\n\nFurther details about PEP 621 and `pyproject.toml` files are available from the PEP itself: https://peps.python.org/pep-0621/. If the `project.optional-dependencies` table is included, Pants will save the key/name of the optional dependency group as a tag on the generated `python_requirement`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant `pyproject.toml` file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'new_*.py', '!old_ignore.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.17/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single test runner process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other test `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same test runner process. Compatible tests may not end up in the same test runner batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all `entry_points` on `python_distribution` targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the `entry_points` only need to be defined on one `python_distribution` even if the test only needs some of the `entry_points` namespaces on it.\n\nPlus, an `entry_points.txt` file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The `entry_points.txt` file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools `entry_points` metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (`my.stevedore.extension`) is similar to a Python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test_*.py', '*_test.py', 'tests.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo_test.py\": {\"timeout\": 120},\n \"bar_test.py\": {\"timeout\": 200},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all `entry_points` on `python_distribution` targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the `entry_points` only need to be defined on one `python_distribution` even if the test only needs some of the `entry_points` namespaces on it.\n\nPlus, an `entry_points.txt` file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The `entry_points.txt` file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools `entry_points` metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (`my.stevedore.extension`) is similar to a Python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single test runner process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other test `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same test runner process. Compatible tests may not end up in the same test runner batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "remote_environment": { + "alias": "remote_environment", + "description": "Configuration of a remote execution environment used for building your code.\n\nEnvironment configuration includes platform properties and a fallback environment, as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this remote environment.\n\nNote that you must also configure remote execution with the global options like `remote_execution` and `remote_execution_address`.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOften, it is only necessary to have a single `remote_environment` target for your repository, but it can be useful to have >1 so that you can set different `extra_platform_properties`. For example, with some servers, you could use this to configure a different Docker image per environment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platform", + "default": "'linux_x86_64'", + "description": "The platform used by the remote execution environment.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "extra_platform_properties", + "default": "()", + "description": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when remote execution is disabled via the global option `--remote-execution`.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when remote execution is disabled.\n\nTip: if you are using a Docker image with your remote execution environment (usually enabled by setting the field `extra_platform_properties`), then it can be useful to fallback to an equivalent `docker_image` target so that you have a consistent execution environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cache_binary_discovery", + "default": "False", + "description": "If true, will cache system binary discovery, e.g. finding Python interpreters.\n\nWhen safe to do, it is preferable to set this option to `True` for faster performance by avoiding wasted work. Otherwise, Pants will search for system binaries whenever the Pants daemon is restarted.\n\nHowever, it is only safe to set this to `True` if the remote execution environment has a stable environment, e.g. the server will not change versions of installed system binaries. Otherwise, you risk caching results that become stale when the server changes its environment, which may break your builds. With some remote execution servers, you can specify a Docker image to run with via the field `extra_platform_properties`; if you are able to specify what Docker image to use, and also use a pinned tag of the image, it is likely safe to set this field to true.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a remote execution environment used for building your code." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an `http_source` is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (e.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (`linux_arm64`, `linux_x86_64`, `macos_arm64`, `macos_x86_64`) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `resource` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "run_shell_command": { + "alias": "run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `shell_command`, in addition to `workdir` you only have the `command` and `execution_dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful.\n\nSee also `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.scala', '!TestIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scala_junit_tests` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_junit_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.scala', 'New*.scala', '!OldIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scala_sources` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_sources` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching `('*Spec.scala', '*Suite.scala')`).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Spec.scala', '!SuiteIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scalatest_tests` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scalatest_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching `('*Spec.scala', '*Suite.scala')`)." + }, + "shell_command": { + "alias": "shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n execution_dependencies=[\":scripts\"],\n output_files=[\"logs/my-script.log\"],\n output_directories=[\"results\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that need to be present (as transitive dependencies) whenever the outputs of this target are consumed (including as dependencies).\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by `[shell-setup].executable_search_paths` (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\nValues are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.sh', 'new_*.sh', '!old_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shell_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test.sh', 'test_*.sh', '!test_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shunit2_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo_test.sh\": {\"timeout\": 120},\n \"bar_test.sh\": {\"timeout\": 200},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "system_binary": { + "alias": "system_binary", + "description": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`.\n\nPants will search for binaries with name `binary_name` in the search paths provided, as well as default search paths. If `fingerprint` is specified, each binary that is located will be executed with the arguments from `fingerprint_args`. Any binaries whose output does not match the pattern will be excluded.\n\nThe first non-excluded binary will be the one that is resolved.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary to find.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "extra_search_paths", + "default": "()", + "description": "Extra search paths to look for the binary. These take priority over Pants' default search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint", + "default": null, + "description": "A regular expression which will be used to match the fingerprint outputs from candidate binaries found during the search process.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "fingerprint_args", + "default": "()", + "description": "Specifies arguments that will be used to run the binary during the search process.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint_dependencies", + "default": null, + "description": "Specifies any runnable dependencies that need to be available on the `PATH` when the binary is run, so that the search process may complete successfully. The name of the target must be the name of the runnable dependency that is called by this binary.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.tf', 'new_*.tf', '!old_ignore.tf']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.17/docs/thrift-python", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.thrift', 'new_*.thrift', '!old_ignore.thrift']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `thrift_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.17/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + }, + "vcs_version": { + "alias": "vcs_version", + "description": "Generates a version string from VCS state.\n\nUses a constrained but useful subset of the full functionality of setuptools_scm (https://github.com/pypa/setuptools_scm). These constraints avoid pitfalls in the interaction of setuptools_scm with Pants's hermetic environments.\n\nIn particular, we ignore any existing setuptools_scm config. Instead you must provide a subset of that config in this target's fields.\n\nIf you need functionality that is not currently exposed here, please reach out to us at https://www.pantsbuild.org/v2.17/docs/getting-help.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "tag_regex", + "default": "'^(?:[\\\\w-]+-)?(?P[vV]?\\\\d+(?:\\\\.\\\\d+){0,2}[^\\\\+]*)(?:\\\\+.*)?$'", + "description": "A Python regex string to extract the version string from a VCS tag.\n\nThe regex needs to contain either a single match group, or a group named version, that captures the actual version information.\n\nNote that this is unrelated to the tags field and Pants's own tags concept.\n\nSee https://github.com/pypa/setuptools_scm for implementation details.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "generate_to", + "default": null, + "description": "Generate the version data to this relative path, using the template field.\n\nNote that the generated output will not be written to disk in the source tree, but will be available as a generated dependency to code that depends on this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "template", + "default": null, + "description": "Generate the version data using this format string, which takes a version format kwarg.\n\nE.g., `'version = \"{version}\"'`", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python", + "summary": "Generates a version string from VCS state." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--backend-packages=\"['', '', ...]\""], + "env_var": "PANTS_BACKEND_PACKAGES", + "fromfile": false, + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--backend-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--backend-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.workunit_logger", + "pants.backend.experimental.tools.yamllint", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--plugins=\"['', '', ...]\""], + "env_var": "PANTS_PLUGINS", + "fromfile": false, + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]plugins-force-resolve"], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "fromfile": false, + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]show-log-target"], + "env_var": "PANTS_SHOW_LOG_TARGET", + "fromfile": false, + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--show-log-target", "--no-show-log-target"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "fromfile": false, + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--log-levels-by-target"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--log-levels-by-target"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]log-show-rust-3rdparty"], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "fromfile": false, + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ignore-warnings=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE_WARNINGS", + "fromfile": false, + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ignore-warnings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-warnings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-version="], + "env_var": "PANTS_VERSION", + "fromfile": false, + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.17/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.17.1rc3" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.17.1rc3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-bin-name="], + "env_var": "PANTS_BIN_NAME", + "fromfile": false, + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-bin-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-bin-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-workdir="], + "env_var": "PANTS_WORKDIR", + "fromfile": false, + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-workdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-workdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-physical-workdir-base="], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "fromfile": false, + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-physical-workdir-base"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-physical-workdir-base"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-distdir="], + "env_var": "PANTS_DISTDIR", + "fromfile": false, + "help": "Write end products, such as the results of `pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-distdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-distdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-subprocessdir="], + "env_var": "PANTS_SUBPROCESSDIR", + "fromfile": false, + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-subprocessdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-subprocessdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": ["/tmp/tmp.MpwSc5OGVo/pants.toml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-config-files=\"['', '', ...]\""], + "env_var": "PANTS_CONFIG_FILES", + "fromfile": false, + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/tmp/tmp.MpwSc5OGVo/pants.toml"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsrc"], + "env_var": "PANTS_PANTSRC", + "fromfile": false, + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsrc-files=\"[, , ...]\""], + "env_var": "PANTS_PANTSRC_FILES", + "fromfile": false, + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsrc-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pythonpath=\"['', '', ...]\""], + "env_var": "PANTS_PYTHONPATH", + "fromfile": false, + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pythonpath"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pythonpath"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]verify-config"], + "env_var": "PANTS_VERIFY_CONFIG", + "fromfile": false, + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": ["*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "fromfile": false, + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-record-option-scopes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--stats-record-option-scopes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["*"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [".*/", "/dist/", "__pycache__"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-ignore=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE", + "fromfile": false, + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc).\n\nPatterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored.\n\n`pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [".*/", "/dist/", "__pycache__"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pants-ignore-use-gitignore"], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "fromfile": false, + "help": "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.\n\nPatterns from `[GLOBAL].pants_ignore` take precedence over these files' rules. For example, you can use `!my_pattern` in `pants_ignore` to have Pants operate on files that are gitignored.\n\nWarning: this does not yet support reading nested gitignore files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--logdir="], + "env_var": "PANTS_LOGDIR", + "fromfile": false, + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "fromfile": false, + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "4GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-max-memory-usage="], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]print-stacktrace"], + "env_var": "PANTS_PRINT_STACKTRACE", + "fromfile": false, + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--engine-visualize-to="], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "fromfile": false, + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--engine-visualize-to"], + "target_field_name": null, + "typ": "dir_option", + "unscoped_cmd_line_args": ["--engine-visualize-to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-pailgun-port="], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "fromfile": false, + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-pailgun-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--pantsd-pailgun-port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "fromfile": false, + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-core="], + "env_var": "PANTS_RULE_THREADS_CORE", + "fromfile": false, + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-core"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-core"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-max="], + "env_var": "PANTS_RULE_THREADS_MAX", + "fromfile": false, + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-dir="], + "env_var": "PANTS_LOCAL_STORE_DIR", + "fromfile": false, + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-store-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-shard-count="], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "fromfile": false, + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-shard-count"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-shard-count"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-processes-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-files-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-directories-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-directories-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--named-caches-dir="], + "env_var": "PANTS_NAMED_CACHES_DIR", + "fromfile": false, + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--named-caches-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--named-caches-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-execution-root-dir="], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "fromfile": false, + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-execution-root-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-execution-root-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": ["fetch", "validate", "defer"], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cache-content-behavior="], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "fromfile": false, + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cache-content-behavior"], + "target_field_name": null, + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": ["--cache-content-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ca-certs-path="], + "env_var": "PANTS_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.17/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-total-child-memory-usage="], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-total-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-total-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-per-child-memory-usage="], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-per-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-per-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-local-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-local-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-local-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-remote-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-cache-namespace="], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "fromfile": false, + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-cache-namespace"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--process-execution-cache-namespace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]process-execution-local-enable-nailgun"], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "fromfile": false, + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "fromfile": false, + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-instance-name="], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "fromfile": false, + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use a Pants plugin which provides remote authentication to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-instance-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-instance-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-ca-certs-path="], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-oauth-bearer-token-path="], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "fromfile": false, + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-address="], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "fromfile": false, + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-store-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "fromfile": false, + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-store-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.17.1rc3" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-chunk-bytes="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "fromfile": false, + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-retries="], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "fromfile": false, + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-retries"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-retries"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-concurrency="], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-timeout-millis=", + "config_key": "remote_store_rpc_timeout_millis", + "default": 30000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote store RPCs (not including streaming requests) in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 30000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-batch-api-size-limit="], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "fromfile": false, + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": ["ignore", "first_only", "backoff"], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "fromfile": false, + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-warnings"], + "target_field_name": null, + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": ["--remote-cache-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-concurrency="], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-timeout-millis=", + "config_key": "remote_cache_rpc_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache RPCs in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-address="], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "fromfile": false, + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-execution-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "fromfile": false, + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-execution-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.17.1rc3" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-overall-deadline-secs="], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "fromfile": false, + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-overall-deadline-secs"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-rpc-concurrency="], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-append-only-caches-base-path=", + "config_key": "remote_execution_append_only_caches_base_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-append-only-caches-base-path=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH", + "fromfile": false, + "help": "Sets the base path to use when setting up an append-only cache for a process running remotely. If this option is not set, then append-only caches will not be used with remote execution. The option should be set to the absolute path of a writable directory in the remote execution environment where Pants can create append-only caches for use with remotely executing processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]watch-filesystem"], + "env_var": "PANTS_WATCH_FILESYSTEM", + "fromfile": false, + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-build-file-globs=" + ], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "fromfile": false, + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-build-file-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-build-file-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--unmatched-cli-globs="], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "fromfile": false, + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-cli-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-cli-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": ["BUILD", "BUILD.*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-patterns=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_PATTERNS", + "fromfile": false, + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["BUILD", "BUILD.*"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-ignore=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_IGNORE", + "fromfile": false, + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "fromfile": false, + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.17/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-file-prelude-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-file-prelude-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--subproject-roots=\"['', '', ...]\""], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "fromfile": false, + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subproject-roots"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--subproject-roots"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--loop-max="], + "env_var": "PANTS_LOOP_MAX", + "fromfile": false, + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--loop-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-report-interval="], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "fromfile": false, + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-level="], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "fromfile": false, + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["--streaming-workunits-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]streaming-workunits-complete-async"], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "fromfile": false, + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-execution", + "config_key": "docker_execution", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-execution"], + "env_var": "PANTS_DOCKER_EXECUTION", + "fromfile": false, + "help": "If true, `docker_environment` targets can be used to run builds inside a Docker container.\n\nIf false, anytime a `docker_environment` target is used, Pants will instead fallback to whatever the target's `fallback_environment` field is set to.\n\nThis can be useful, for example, if you want to always use Docker locally, but disable it in CI, or vice versa.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "fromfile": false, + "help": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.\n\nIf you are using the remote_environment target mechanism, set this value as a field on the target instead. This option will be ignored.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["-l=", "--level="], + "env_var": "PANTS_LEVEL", + "fromfile": false, + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["-l", "--level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["-l", "--level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spec-files=\"['', '', ...]\""], + "env_var": "PANTS_SPEC_FILES", + "fromfile": false, + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spec-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--spec-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsd"], + "env_var": "PANTS_PANTSD", + "fromfile": false, + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]concurrent"], + "env_var": "PANTS_CONCURRENT", + "fromfile": false, + "help": "Enable concurrent runs of Pants. With this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. As a result, enabling this option will increase the per-run startup cost, but will not block subsequent invocations.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]local-cache"], + "env_var": "PANTS_LOCAL_CACHE", + "fromfile": false, + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["always", "on_failure", "never"], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--keep-sandboxes="], + "env_var": "PANTS_KEEP_SANDBOXES", + "fromfile": false, + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--keep-sandboxes"], + "target_field_name": null, + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": ["--keep-sandboxes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--session-end-tasks-timeout=", + "config_key": "session_end_tasks_timeout", + "default": 3.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--session-end-tasks-timeout="], + "env_var": "PANTS_SESSION_END_TASKS_TIMEOUT", + "fromfile": false, + "help": "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 invocation to a configured remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--session-end-tasks-timeout"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--session-end-tasks-timeout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-execution"], + "env_var": "PANTS_REMOTE_EXECUTION", + "fromfile": false, + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-read"], + "env_var": "PANTS_REMOTE_CACHE_READ", + "fromfile": false, + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-write"], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "fromfile": false, + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]colors"], + "env_var": "PANTS_COLORS", + "fromfile": false, + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--colors", "--no-colors"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--colors", "--no-colors"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dynamic-ui"], + "env_var": "PANTS_DYNAMIC_UI", + "fromfile": false, + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["indicatif-spinner", "experimental-prodash"], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dynamic-ui-renderer="], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "fromfile": false, + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui-renderer"], + "target_field_name": null, + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": ["--dynamic-ui-renderer"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "fromfile": false, + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.17/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tag"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]loop"], + "env_var": "PANTS_LOOP", + "fromfile": false, + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop", "--no-loop"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--loop", "--no-loop"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]process-cleanup"], + "env_var": "PANTS_PROCESS_CLEANUP", + "fromfile": false, + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--process-cleanup", "--no-process-cleanup"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--remote-store-chunk-upload-timeout-seconds="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "fromfile": false, + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": "Unused: use the `remote_store_rpc_timeout_millis` option instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--remote-cache-read-timeout-millis="], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": "Use the `remote_cache_rpc_timeout_millis` option instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": ["--remote-cache-read-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-read-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "add-trailing-comma": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-install-from-resolve="], + "env_var": "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `add-trailing-comma` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-console-script=", + "config_key": "console_script", + "default": "add-trailing-comma", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-console-script="], + "env_var": "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-entry-point="], + "env_var": "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]add-trailing-comma-skip"], + "env_var": "PANTS_ADD_TRAILING_COMMA_SKIP", + "fromfile": false, + "help": "If true, don't use add-trailing-comma when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-skip", + "--no-add-trailing-comma-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to add-trailing-comma, e.g. `--add-trailing-comma-args='--py36-plus'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-version=", + "config_key": "version", + "default": "add-trailing-comma>=2.2.3,<3", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--add-trailing-comma-version="], + "env_var": "PANTS_ADD_TRAILING_COMMA_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--add-trailing-comma-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma>=2.2.3,<3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--add-trailing-comma-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--add-trailing-comma-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--add-trailing-comma-lockfile="], + "env_var": "PANTS_ADD_TRAILING_COMMA_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/add_trailing_comma/add_trailing_comma.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=add-trailing-comma`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[add-trailing-comma].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced add-trailing-comma`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--add-trailing-comma-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]add-trailing-comma-export"], + "env_var": "PANTS_ADD_TRAILING_COMMA_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with add-trailing-comma when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--add-trailing-comma-export", + "--no-add-trailing-comma-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "scope": "add-trailing-comma" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]anonymous-telemetry-enabled"], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "fromfile": false, + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.17/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--anonymous-telemetry-repo-id="], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "fromfile": false, + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.17/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--anonymous-telemetry-repo-id"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--repo-id"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--apache-thrift-expected-version="], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "fromfile": false, + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-thrift-search-paths"], + "target_field_name": "apache_thrift_thrift_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--thrift-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-install-from-resolve="], + "env_var": "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `autoflake` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-console-script="], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-entry-point="], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]autoflake-skip"], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "fromfile": false, + "help": "If true, don't use Autoflake when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-skip", "--no-autoflake-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": ["--remove-all-unused-imports"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["--remove-all-unused-imports"] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake>=1.4,<3", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--autoflake-version="], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--autoflake-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake>=1.4,<3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--autoflake-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--autoflake-lockfile="], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/autoflake/autoflake.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=autoflake`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[autoflake].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced autoflake`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--autoflake-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]autoflake-export"], + "env_var": "PANTS_AUTOFLAKE_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Autoflake when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--autoflake-export", + "--no-autoflake-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-install-from-resolve="], + "env_var": "PANTS_BANDIT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `bandit` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BANDIT_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-console-script="], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-entry-point="], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-config="], + "env_var": "PANTS_BANDIT_CONFIG", + "fromfile": false, + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]bandit-skip"], + "env_var": "PANTS_BANDIT_SKIP", + "fromfile": false, + "help": "If true, don't use Bandit when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-skip", "--no-bandit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-args=\"[, , ...]\""], + "env_var": "PANTS_BANDIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--bandit-version="], + "env_var": "PANTS_BANDIT_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--bandit-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["setuptools", "GitPython>=3.1.24"], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--bandit-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["setuptools", "GitPython>=3.1.24"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--bandit-lockfile="], + "env_var": "PANTS_BANDIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/bandit/bandit.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=bandit`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[bandit].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced bandit`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--bandit-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]bandit-export"], + "env_var": "PANTS_BANDIT_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Bandit when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--bandit-export", "--no-bandit-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-install-from-resolve="], + "env_var": "PANTS_BLACK_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `black` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BLACK_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-console-script="], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-entry-point="], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-config="], + "env_var": "PANTS_BLACK_CONFIG", + "fromfile": false, + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-config-discovery"], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-skip"], + "env_var": "PANTS_BLACK_SKIP", + "fromfile": false, + "help": "If true, don't use Black when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-skip", "--no-black-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-args=\"[, , ...]\""], + "env_var": "PANTS_BLACK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black>=22.6.0,<24", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--black-version="], + "env_var": "PANTS_BLACK_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--black-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black>=22.6.0,<24" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["typing-extensions>=3.10.0.0; python_version < \"3.10\""], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--black-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "typing-extensions>=3.10.0.0; python_version < \"3.10\"" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--black-lockfile="], + "env_var": "PANTS_BLACK_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/black/black.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[black].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced black`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--black-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]black-export"], + "env_var": "PANTS_BLACK_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Black when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--black-export", "--no-black-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-version="], + "env_var": "PANTS_BUF_VERSION", + "fromfile": false, + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-url-template="], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-config="], + "env_var": "PANTS_BUF_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Buf (https://docs.buf.build/configuration/overview).\n\nSetting this option will disable `[buf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-config-discovery"], + "env_var": "PANTS_BUF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant root config files during runs (`buf.yaml`, `buf.lock`, `buf.gen.yaml` and `buf.work.yaml`).\n\nUse `[buf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config-discovery", + "--no-buf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-format-skip"], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-skip", "--no-buf-format-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--format-skip", "--no-format-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-lint-skip"], + "env_var": "PANTS_BUF_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-skip", "--no-buf-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-skip", "--no-lint-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--format-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--lint-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "build-deprecations-fixer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]build-deprecations-fixer-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]build-deprecations-fixer-skip"], + "env_var": "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP", + "fromfile": false, + "help": "If true, don't use BUILD Deprecations Fixer when running `scie-pants-linux-x86_64 fix`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-deprecations-fixer-skip", + "--no-build-deprecations-fixer-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for: - Renamed targets - Renamed fields", + "is_goal": false, + "provider": "pants.backend.build_files.fix.deprecations", + "scope": "build-deprecations-fixer" + }, + "buildifier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-version="], + "env_var": "PANTS_BUILDIFIER_VERSION", + "fromfile": false, + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-url-template="], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buildifier-skip"], + "env_var": "PANTS_BUILDIFIER_SKIP", + "fromfile": false, + "help": "If true, don't use Buildifier when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-skip", "--no-buildifier-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "is_goal": false, + "provider": "pants.backend.build_files.fmt.buildifier", + "scope": "buildifier" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-since="], + "env_var": "PANTS_CHANGED_SINCE", + "fromfile": false, + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-since"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--since"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-diffspec="], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "fromfile": false, + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-diffspec"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--diffspec"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependents=", + "config_key": "dependents", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-dependents="], + "env_var": "PANTS_CHANGED_DEPENDENTS", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-dependents"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependents"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [ + { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": ["--changed-dependees="], + "env_var": "PANTS_CHANGED_DEPENDEES", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": "Use --dependents instead", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": ["--changed-dependees"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependees"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.17/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--check-only=\"['', '', ...]\""], + "env_var": "PANTS_CHECK_ONLY", + "fromfile": false, + "help": "Only run these checkers and skip all others.\n\nThe checker names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkers.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--check-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cli-alias=\"{'key1': val1, 'key2': val2, ...}\""], + "env_var": "PANTS_CLI_ALIAS", + "fromfile": false, + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependents=transitive\"\n\nThis would allow you to run `scie-pants-linux-x86_64 green all-changed`, which is shorthand for `scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependents=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cli-alias"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.0-M5-18-gfebf9838c", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-version="], + "env_var": "PANTS_COURSIER_VERSION", + "fromfile": false, + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.0-M5-18-gfebf9838c" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-url-template="], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-repos=\"['', '', ...]\""], + "env_var": "PANTS_COURSIER_REPOS", + "fromfile": false, + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-install-from-resolve="], + "env_var": "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `coverage-py` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-console-script="], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-entry-point="], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-output-dir="], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-config="], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "fromfile": false, + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-config-discovery"], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-filter=\"['', '', ...]\""], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "fromfile": false, + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']`.\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-filter"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--filter"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["console", "xml", "html", "raw", "json", "lcov"], + "comma_separated_choices": "console, xml, html, raw, json, lcov", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": ["console"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "fromfile": false, + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-report"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--report"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["console"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-global-report"], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "fromfile": false, + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--global-report", "--no-global-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-fail-under="], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "fromfile": false, + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-fail-under"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--fail-under"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=6.5,<8", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--coverage-py-version="], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--coverage-py-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=6.5,<8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--coverage-py-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--coverage-py-lockfile="], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/subsystems/coverage_py.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=coverage-py`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[coverage-py].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced coverage-py`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--coverage-py-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "debug-adapter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-host="], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "fromfile": false, + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-host"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--host"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-port="], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "fromfile": false, + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "is_goal": false, + "provider": "pants.core", + "scope": "debug-adapter" + }, + "debugpy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-install-from-resolve="], + "env_var": "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `debugpy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-console-script="], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-entry-point="], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DEBUGPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-version=", + "config_key": "version", + "default": "debugpy>=1.6.5,<1.7", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--debugpy-version="], + "env_var": "PANTS_DEBUGPY_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--debugpy-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy>=1.6.5,<1.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--debugpy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--debugpy-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--debugpy-lockfile="], + "env_var": "PANTS_DEBUGPY_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/subsystems/debugpy.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=debugpy`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[debugpy].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced debugpy`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--debugpy-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "debugpy" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-output-file="], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-sep="], + "env_var": "PANTS_DEPENDEES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-transitive"], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-closed"], + "env_var": "PANTS_DEPENDEES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-output-file="], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-sep="], + "env_var": "PANTS_DEPENDENCIES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-transitive"], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-closed"], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "dependents": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-output-file="], + "env_var": "PANTS_DEPENDENTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-sep="], + "env_var": "PANTS_DEPENDENTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-transitive"], + "env_var": "PANTS_DEPENDENTS_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-transitive", + "--no-dependents-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-closed"], + "env_var": "PANTS_DEPENDENTS_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-closed", + "--no-dependents-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependents" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-install-from-resolve="], + "env_var": "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `docformatter` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-console-script="], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-entry-point="], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docformatter-skip"], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "fromfile": false, + "help": "If true, don't use docformatter when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--docformatter-version="], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--docformatter-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--docformatter-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--docformatter-lockfile="], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/docformatter/docformatter.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=docformatter`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[docformatter].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced docformatter`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--docformatter-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]docformatter-export"], + "env_var": "PANTS_DOCFORMATTER_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with docformatter when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--docformatter-export", + "--no-docformatter-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-tools=\"['', '', ...]\""], + "env_var": "PANTS_DOCKER_TOOLS", + "fromfile": false, + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tools"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tools"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-tailor"], + "env_var": "PANTS_DOCKER_TAILOR", + "fromfile": false, + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tailor", "--no-docker-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find the Docker client and any tools required. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-executable-search-paths"], + "target_field_name": "docker_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-env-vars"], + "target_field_name": "docker_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "fromfile": true, + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n \"use_local_alias\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.\n\nIf `use_local_alias` is true, a built image is additionally tagged locally using the registry alias as the value for repository (i.e. the additional image tag is not pushed) and will be used for any `pants run` requests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-repository="], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "fromfile": false, + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-context-root="], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "fromfile": false, + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-context-root"], + "target_field_name": null, + "typ": "workspace_path", + "unscoped_cmd_line_args": ["--default-context-root"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "fromfile": false, + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-build-target-stage="], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "fromfile": false, + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-target-stage"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-target-stage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-build-verbose"], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "fromfile": false, + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--build-verbose", "--no-build-verbose"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "fromfile": false, + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--run-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dockerfile-parser-install-from-resolve="], + "env_var": "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `dockerfile-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--dockerfile-parser-version="], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--dockerfile-parser-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--dockerfile-parser-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--dockerfile-parser-lockfile="], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/docker/subsystems/dockerfile.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=dockerfile-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[dockerfile-parser].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced dockerfile-parser`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--dockerfile-parser-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.4.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-version="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "fromfile": false, + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.4.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-url-template="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]download-terraform-tailor"], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "fromfile": false, + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "environments-preview": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "names", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_ENVIRONMENTS_PREVIEW_NAMES", + "fromfile": false, + "help": "A mapping of logical names to addresses to environment targets. For example:\n\n [environments-preview.names]\n linux_local = \"//:linux_env\"\n macos_local = \"//:macos_env\"\n centos6 = \"//:centos6_docker_env\"\n linux_ci = \"build-support:linux_ci_env\"\n macos_ci = \"build-support:macos_ci_env\"\n\nTo use an environment for a given target, specify the name in the `environment` field on that target. Pants will consume the environment target at the address mapped from that name.\n\nPants will ignore any environment targets that are not given a name via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--environments-preview-names"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A highly experimental subsystem to allow setting environment variables and executable search paths for different environments, e.g. macOS vs. Linux.", + "is_goal": false, + "provider": "", + "scope": "environments-preview" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]experimental-bsp-server"], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "fromfile": false, + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--server", "--no-server"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": ["PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-runner-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--runner-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["PATH"] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "fromfile": false, + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-groups-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--groups-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-bsp" + }, + "experimental-deploy": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Perform a deployment process.", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-deploy" + }, + "experimental-explorer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-address="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "fromfile": false, + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-port="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "fromfile": false, + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run the Pants Explorer Web UI server.", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-explorer" + }, + "export": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-py-editable-in-resolve=\"['', '', ...]\"", + "config_key": "py_editable_in_resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-editable-in-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE", + "fromfile": false, + "help": "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.\n\nIf a resolve name is not in this list, 'python_distribution' targets will not be installed in the virtualenv. This defaults to an empty list for backwards compatibility and to prevent unnecessary work to generate and install the PEP-660 editable wheels.\n\nThis only applies when '[python].enable_resolves' is true and when exporting a 'mutable_virtualenv' ('symlinked_immutable_virtualenv' exports are not \"full\" virtualenvs because they must not be edited, and do not include 'pip').\n\nNOTE: If you are using legacy exports (not using the '--resolve' option), then this option has no effect. Legacy exports will not include any editable installs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-editable-in-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--py-editable-in-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--export-resolve=\"['', '', ...]\""], + "env_var": "PANTS_EXPORT_RESOLVE", + "fromfile": false, + "help": "Export the specified resolve(s). The export format is backend-specific, e.g., Python resolves are exported as virtualenvs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["mutable_virtualenv", "symlinked_immutable_virtualenv"], + "comma_separated_choices": "mutable_virtualenv, symlinked_immutable_virtualenv", + "comma_separated_display_args": "--export-py-resolve-format=", + "config_key": "py_resolve_format", + "default": "mutable_virtualenv", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-resolve-format=" + ], + "env_var": "PANTS_EXPORT_PY_RESOLVE_FORMAT", + "fromfile": false, + "help": "Export Python resolves using this format. Options are:\n - mutable_virtualenv: Export a standalone mutable virtualenv that you can\n further modify.\n - symlinked_immutable_virtualenv: Export a symlink into a cached Python virtualenv.\n This virtualenv will have no pip binary, and will be immutable. Any attempt to\n modify it will corrupt the cache! It may, however, take significantly less time\n to export than a standalone, mutable virtualenv.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-resolve-format"], + "target_field_name": null, + "typ": "PythonResolveExportFormat", + "unscoped_cmd_line_args": ["--py-resolve-format"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mutable_virtualenv" + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]export-symlink-python-virtualenv", + "config_key": "symlink_python_virtualenv", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.20.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]export-symlink-python-virtualenv"], + "env_var": "PANTS_EXPORT_SYMLINK_PYTHON_VIRTUALENV", + "fromfile": false, + "help": "Export a symlink into a cached Python virtualenv. This virtualenv will have no pip binary, and will be immutable. Any attempt to modify it will corrupt the cache! It may, however, take significantly less time to export than a standalone, mutable virtualenv will.", + "removal_hint": "Set the `[export].py_resolve_format` option to 'symlinked_immutable_virtualenv'", + "removal_version": "2.20.0.dev0", + "scoped_cmd_line_args": [ + "--export-symlink-python-virtualenv", + "--no-export-symlink-python-virtualenv" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--symlink-python-virtualenv", + "--no-symlink-python-virtualenv" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.core", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-output-file="], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-sep="], + "env_var": "PANTS_FILEDEPS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-absolute"], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "fromfile": false, + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--absolute", "--no-absolute"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-globs"], + "env_var": "PANTS_FILEDEPS_GLOBS", + "fromfile": false, + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-globs", "--no-filedeps-globs"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--globs", "--no-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-transitive"], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "fromfile": false, + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-output-file="], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-sep="], + "env_var": "PANTS_FILTER_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "fromfile": false, + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-target-type"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--target-type"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["all", "file", "BUILD"], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-granularity="], + "env_var": "PANTS_FILTER_GRANULARITY", + "fromfile": false, + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-granularity"], + "target_field_name": null, + "typ": "TargetGranularity", + "unscoped_cmd_line_args": ["--granularity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "fromfile": false, + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-address-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--address-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "fromfile": false, + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-tag-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "fix": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-batch-size="], + "env_var": "PANTS_FIX_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each fixer batch.\n\nFixer processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in fixer processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-only=\"['', '', ...]\""], + "env_var": "PANTS_FIX_ONLY", + "fromfile": false, + "help": "Only run these fixers and skip all others.\n\nThe fixer names are outputted at the final summary of running this goal, e.g. `autoflake` and `pyupgrade`. You can also run `fix --only=fake` to get a list of all activated fixers.\n\nYou can repeat this option, e.g. `fix --only=autoflake --only=pyupgrade` or `fix --only=['autoflake', 'pyupgrade']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fix-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]fix-skip-formatters"], + "env_var": "PANTS_FIX_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters.\n\nFYI: when running `scie-pants-linux-x86_64 fix fmt ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `fix` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-skip-formatters", + "--no-fix-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autofix source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fix" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-install-from-resolve="], + "env_var": "PANTS_FLAKE8_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `flake8` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-requirements=\"['', '', ...]\""], + "env_var": "PANTS_FLAKE8_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-console-script="], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-entry-point="], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-config="], + "env_var": "PANTS_FLAKE8_CONFIG", + "fromfile": false, + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "fromfile": false, + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-extra-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-config-discovery"], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add 'build-support/flake8' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.17/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n ```\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n ```\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[flake8].extra_requirements`.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Flake8 plugins such as 'flake8-plugins' so that the third-party requirements used by your plugin, like `flake8`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-skip"], + "env_var": "PANTS_FLAKE8_SKIP", + "fromfile": false, + "help": "If true, don't use Flake8 when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-skip", "--no-flake8-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-args=\"[, , ...]\""], + "env_var": "PANTS_FLAKE8_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=5.0.4,<7", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--flake8-version="], + "env_var": "PANTS_FLAKE8_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--flake8-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=5.0.4,<7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--flake8-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--flake8-lockfile="], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/flake8/flake8.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=flake8`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[flake8].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced flake8`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--flake8-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]flake8-export"], + "env_var": "PANTS_FLAKE8_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Flake8 when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--flake8-export", "--no-flake8-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.flake8", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-batch-size="], + "env_var": "PANTS_FMT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-only=\"['', '', ...]\""], + "env_var": "PANTS_FMT_ONLY", + "fromfile": false, + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--generate-lockfiles-custom-command="], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "fromfile": false, + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-custom-command"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--custom-command"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "fromfile": false, + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from backend-specific configuration such as `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff", + "config_key": "diff", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF", + "fromfile": false, + "help": "Print a summary of changed distributions after generating the lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff", + "--no-generate-lockfiles-diff" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--diff", "--no-diff"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff-include-unchanged", + "config_key": "diff_include_unchanged", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff-include-unchanged"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED", + "fromfile": false, + "help": "Include unchanged distributions in the diff summary output. Implies `diff=true`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff-include-unchanged", + "--no-generate-lockfiles-diff-include-unchanged" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff-include-unchanged", + "--no-diff-include-unchanged" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "go-generate": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-generate-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-generate-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_GENERATE_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking generator programs. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-generate-env-vars"], + "target_field_name": "go_generate_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the //go:generate directives.\n\nSee https://go.dev/blog/generate for details.", + "is_goal": true, + "provider": "pants.backend.experimental.go", + "scope": "go-generate" + }, + "go-test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{target_spec}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-coverage-output-dir="], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Go coverage reports to. Must be relative to the build root.\n\nReplacements:\n\n- `{distdir}` is replaced with the Pants `distdir`.\n\n- `{target_spec}` is replaced with the address of the applicable `go_package` target with `/` characters replaced with dots (`.`).\n\n- `{import_path}` is replaced with the applicable package's import path. Subdirectories will be made for any path components separated by `/` characters.\n\n- `{import_path_escaped}` is replaced with the applicable package's import path but with slashes converted to underscores. This is deprecated and only exists to support behavior from earlier versions.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--coverage-output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{target_spec}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-output-test-binary", + "config_key": "output_test_binary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-output-test-binary"], + "env_var": "PANTS_GO_TEST_OUTPUT_TEST_BINARY", + "fromfile": false, + "help": "Write the test binary to the test extra output directory.\n\nThis is similar to the `go test -c` option, but will still run the underlying test.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-output-test-binary", + "--no-go-test-output-test-binary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--output-test-binary", + "--no-output-test-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["set", "count", "atomic"], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-cover-mode="], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "fromfile": false, + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via --test-use-coverage. Valid values are `set`, `count`, and `atomic`:\n\n* `set`: bool: does this statement run?\n\n* `count`: int: how many times does this statement run?\n\n* `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-cover-mode"], + "target_field_name": null, + "typ": "GoCoverMode", + "unscoped_cmd_line_args": ["--cover-mode"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-coverage-html", + "config_key": "coverage_html", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-coverage-html"], + "env_var": "PANTS_GO_TEST_COVERAGE_HTML", + "fromfile": false, + "help": "If true, then convert coverage reports to HTML format and write a `coverage.html` file next to the raw coverage data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-html", + "--no-go-test-coverage-html" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--coverage-html", "--no-coverage-html"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-packages=\"['', '', ...]\"", + "config_key": "coverage_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_PACKAGES", + "fromfile": false, + "help": "A list of \"import path patterns\" for determining which import paths will be instrumented for code coverage.\n\nFrom `go help packages`:\n\nAn import path is a pattern if it includes one or more \"...\" wildcards, each of which can match any string, including the empty string and strings containing slashes. Such a pattern expands to all package directories found in the GOPATH trees with names matching the patterns.\n\nTo make common patterns more convenient, there are two special cases. First, /... at the end of the pattern can match an empty string, so that net/... matches both net and packages in its subdirectories, like net/http. Second, any slash-separated pattern element containing a wildcard never participates in a match of the \"vendor\" element in the path of a vendored package, so that ./... does not match packages in subdirectories of ./vendor or ./mycode/vendor, but ./vendor/... and ./mycode/vendor/... do. Note, however, that a directory named vendor that itself contains code is not a vendored package: cmd/vendor would be a command named vendor, and the pattern cmd/... matches it. See golang.org/s/go15vendor for more about vendoring.\n\nThis option is similar to the `go test -coverpkg` option, but without support currently for reserved import path patterns like `std` and `all`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--coverage-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-skip"], + "env_var": "PANTS_GO_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Go test binary when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-skip", "--no-go-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-race", + "config_key": "force_race", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-race"], + "env_var": "PANTS_GO_TEST_FORCE_RACE", + "fromfile": false, + "help": "If true, then always enable the Go data race detector when running tests regardless of the test-by-test `test_race` field on the relevant `go_package` target.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-race", + "--no-go-test-force-race" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-race", "--no-force-race"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-msan", + "config_key": "force_msan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-msan"], + "env_var": "PANTS_GO_TEST_FORCE_MSAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"memory sanitizer\" when running tests regardless of the test-by-test `msan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-msan", + "--no-go-test-force-msan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-msan", "--no-force-msan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-asan", + "config_key": "force_asan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-asan"], + "env_var": "PANTS_GO_TEST_FORCE_ASAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"address sanitizer\" when running tests regardless of the test-by-test `asan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-asan", + "--no-go-test-force-asan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-asan", "--no-force-asan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-block-profile", + "config_key": "block_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-block-profile"], + "env_var": "PANTS_GO_TEST_BLOCK_PROFILE", + "fromfile": false, + "help": "Capture a goroutine blocking profile from the execution of the test runner. The profile will be written to the file `block.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-block-profile", + "--no-go-test-block-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--block-profile", "--no-block-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-cpu-profile", + "config_key": "cpu_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-cpu-profile"], + "env_var": "PANTS_GO_TEST_CPU_PROFILE", + "fromfile": false, + "help": "Capture a CPU profile from the execution of the test runner. The profile will be written to the file `cpu.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cpu-profile", + "--no-go-test-cpu-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cpu-profile", "--no-cpu-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mem-profile", + "config_key": "mem_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mem-profile"], + "env_var": "PANTS_GO_TEST_MEM_PROFILE", + "fromfile": false, + "help": "Capture an allocation profile from the execution of the test runner after tests have passed. The profile will be written to the file `mem.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mem-profile", + "--no-go-test-mem-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mem-profile", "--no-mem-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mutex-profile", + "config_key": "mutex_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mutex-profile"], + "env_var": "PANTS_GO_TEST_MUTEX_PROFILE", + "fromfile": false, + "help": "Capture a mutex contention profile from the execution of the test runner when all tests are complete. The profile will be written to the file `mutex.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mutex-profile", + "--no-go-test-mutex-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mutex-profile", "--no-mutex-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-trace", + "config_key": "trace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-trace"], + "env_var": "PANTS_GO_TEST_TRACE", + "fromfile": false, + "help": "Capture an execution trace from the execution of the test runner. The trace will be written to the file `trace.out` in the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-trace", "--no-go-test-trace"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--trace", "--no-trace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]gofmt-skip"], + "env_var": "PANTS_GOFMT_SKIP", + "fromfile": false, + "help": "If true, don't use gofmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-skip", "--no-gofmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--gofmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--gofmt-args=\"[, , ...]\""], + "env_var": "PANTS_GOFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to gofmt, e.g. `--gofmt-args='-s -e'`.\n\nOnly the following style related options are supported: `-e`, `-r`, `-s`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-go-mod-targets"], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "fromfile": false, + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-package-targets"], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "fromfile": false, + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-binary-targets"], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-tool-name="], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "fromfile": false, + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-tool-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-tool-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-bin-relpath="], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "fromfile": false, + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-bin-relpath"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-bin-relpath"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-subprocess-env-vars"], + "target_field_name": "golang_subprocess_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--subprocess-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gcc-binary-name=", + "config_key": "cgo_gcc_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gcc-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GCC_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gcc-binary-name"], + "target_field_name": "golang_cgo_gcc_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gcc-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gxx-binary-name=", + "config_key": "cgo_gxx_binary_name", + "default": "g++", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gxx-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GXX_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C++ code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gxx-binary-name"], + "target_field_name": "golang_cgo_gxx_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gxx-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "g++" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-binary-name=", + "config_key": "cgo_fortran_binary_name", + "default": "gfortran", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-fortran-binary-name="], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile fortran code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-binary-name"], + "target_field_name": "golang_cgo_fortran_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-fortran-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gfortran" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-external-linker-binary-name=", + "config_key": "external_linker_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-external-linker-binary-name="], + "env_var": "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use as the \"external linker\" when invoking `go tool link`. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-external-linker-binary-name"], + "target_field_name": "golang_external_linker_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--external-linker-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-c-flags=\"['', '', ...]\"", + "config_key": "cgo_c_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-c-flags=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_CGO_C_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C code when Cgo is enabled. Equivalent to setting the CGO_CFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-c-flags"], + "target_field_name": "golang_cgo_c_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-c-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-cxx-flags=\"['', '', ...]\"", + "config_key": "cgo_cxx_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-cxx-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_CXX_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C++ code when Cgo is enabled. Equivalent to setting the CGO_CXXFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-cxx-flags"], + "target_field_name": "golang_cgo_cxx_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-cxx-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-flags=\"['', '', ...]\"", + "config_key": "cgo_fortran_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling Fortran code when Cgo is enabled. Equivalent to setting the CGO_FFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-flags"], + "target_field_name": "golang_cgo_fortran_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-fortran-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-linker-flags=\"['', '', ...]\"", + "config_key": "cgo_linker_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-linker-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_LINKER_FLAGS", + "fromfile": false, + "help": "Compiler options used when linking native code when Cgo is enabled. Equivalent to setting the CGO_LDFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-linker-flags"], + "target_field_name": "golang_cgo_linker_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-linker-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-minimum-expected-version="], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "fromfile": false, + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-minimum-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--minimum-expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-cgo-enabled", + "config_key": "cgo_enabled", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-cgo-enabled"], + "env_var": "PANTS_GOLANG_CGO_ENABLED", + "fromfile": false, + "help": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-enabled", + "--no-golang-cgo-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cgo-enabled", "--no-cgo-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable\n* ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binary with the version in BUILD_ROOT/.tool-versions", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-go-search-paths"], + "target_field_name": "golang_go_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--go-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-tool-search-paths=\"['', '', ...]\"", + "config_key": "cgo_tool_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-tool-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for tools needed by CGo (e.g., gcc, g++).\n\nSpecify absolute paths to directories with tools needed by CGo , e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-tool-search-paths"], + "target_field_name": "golang_cgo_tool_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-tool-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-version="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-lockfile="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-skip"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Google Java Format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-aosp"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "fromfile": false, + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--aosp", "--no-aosp"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-version="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "fromfile": false, + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-url-template="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-version="], + "env_var": "PANTS_HADOLINT_VERSION", + "fromfile": false, + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-url-template="], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-config="], + "env_var": "PANTS_HADOLINT_CONFIG", + "fromfile": false, + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-config-discovery"], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-skip"], + "env_var": "PANTS_HADOLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Hadolint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-skip", "--no-hadolint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.11.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-version="], + "env_var": "PANTS_HELM_VERSION", + "fromfile": false, + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-url-template="], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-extra-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-tailor"], + "env_var": "PANTS_HELM_TAILOR", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-tailor", "--no-helm-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "fromfile": true, + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-lint-strict"], + "env_var": "PANTS_HELM_LINT_STRICT", + "fromfile": false, + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-strict", "--no-lint-strict"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-default-registry-repository="], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "fromfile": false, + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-default-registry-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-registry-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as folows:\n\n * --atomic\n * --cleanup-on-fail\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n\nBefore attempting to use passthrough arguments, check the refence of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "helm-k8s-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-k8s-parser-install-from-resolve="], + "env_var": "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-k8s-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-version=", + "config_key": "version", + "default": "hikaru==0.11.0b", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--helm-k8s-parser-version="], + "env_var": "PANTS_HELM_K8S_PARSER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--helm-k8s-parser-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "hikaru==0.11.0b" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--helm-k8s-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--helm-k8s-parser-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--helm-k8s-parser-lockfile="], + "env_var": "PANTS_HELM_K8S_PARSER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/helm/subsystems/k8s_parser.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=helm-k8s-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[helm-k8s-parser].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced helm-k8s-parser`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--helm-k8s-parser-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Analyses K8S manifests rendered by Helm.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-k8s-parser" + }, + "helm-post-renderer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-post-renderer-install-from-resolve="], + "env_var": "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-post-renderer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-version=", + "config_key": "version", + "default": "yamlpath>=3.7.0,<4", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--helm-post-renderer-version="], + "env_var": "PANTS_HELM_POST_RENDERER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--helm-post-renderer-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamlpath>=3.7.0,<4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "ruamel.yaml>=0.15.96,!=0.17.0,!=0.17.1,!=0.17.2,!=0.17.5,<=0.17.21" + ], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--helm-post-renderer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--helm-post-renderer-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "ruamel.yaml>=0.15.96,!=0.17.0,!=0.17.1,!=0.17.2,!=0.17.5,<=0.17.21" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--helm-post-renderer-lockfile="], + "env_var": "PANTS_HELM_POST_RENDERER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/helm/subsystems/post_renderer.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=helm-post-renderer`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[helm-post-renderer].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced helm-post-renderer`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--helm-post-renderer-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-post-renderer" + }, + "helm-unittest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.2.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-version="], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "fromfile": false, + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.2.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-url-template="], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/quintush/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-color"], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "fromfile": false, + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--color", "--no-color"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["XUnit", "NUnit", "JUnit"], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "fromfile": false, + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-output-type"], + "target_field_name": null, + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": ["--output-type"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-skip"], + "env_var": "PANTS_HELM_UNITTEST_SKIP", + "fromfile": false, + "help": "If true, don't use helmunittestsubsystem when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-skip", + "--no-helm-unittest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/quintush/helm-unittest)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-unittest" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-install-from-resolve="], + "env_var": "PANTS_IPYTHON_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ipython` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-console-script="], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-entry-point="], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ipython-ignore-cwd"], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "fromfile": false, + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--ignore-cwd", "--no-ignore-cwd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython>=7.34,<8", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--ipython-version="], + "env_var": "PANTS_IPYTHON_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--ipython-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython>=7.34,<8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--ipython-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--ipython-lockfile="], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/subsystems/ipython.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=ipython`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[ipython].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced ipython`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--ipython-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-install-from-resolve="], + "env_var": "PANTS_ISORT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `isort` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-requirements=\"['', '', ...]\""], + "env_var": "PANTS_ISORT_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-console-script="], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-entry-point="], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "fromfile": false, + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-config"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-config-discovery"], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-skip"], + "env_var": "PANTS_ISORT_SKIP", + "fromfile": false, + "help": "If true, don't use isort when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-skip", "--no-isort-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-args=\"[, , ...]\""], + "env_var": "PANTS_ISORT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--isort-version="], + "env_var": "PANTS_ISORT_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--isort-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--isort-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--isort-lockfile="], + "env_var": "PANTS_ISORT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/isort/isort.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=isort`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[isort].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced isort`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--isort-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]isort-export"], + "env_var": "PANTS_ISORT_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with isort when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--isort-export", "--no-isort-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "jarjar": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-version=", + "config_key": "version", + "default": "1.8.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-version="], + "env_var": "PANTS_JARJAR_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[jarjar].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.8.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[jarjar].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-lockfile="], + "env_var": "PANTS_JARJAR_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/jvm/shading/jarjar.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=jarjar`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `jarjar` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jarjar-skip-manifest", + "config_key": "skip_manifest", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jarjar-skip-manifest"], + "env_var": "PANTS_JARJAR_SKIP_MANIFEST", + "fromfile": false, + "help": "Skip the processing of the JAR manifest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-skip-manifest", + "--no-jarjar-skip-manifest" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-manifest", "--no-skip-manifest"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["fatal", "skip", "omit", "move"], + "comma_separated_choices": "fatal, skip, omit, move", + "comma_separated_display_args": "--jarjar-misplaced-class-strategy=", + "config_key": "misplaced_class_strategy", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-misplaced-class-strategy=" + ], + "env_var": "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY", + "fromfile": false, + "help": "The strategy to use when processing class files that are in the wrong package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-misplaced-class-strategy"], + "target_field_name": null, + "typ": "MisplacedClassStrategy", + "unscoped_cmd_line_args": ["--misplaced-class-strategy"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jarjar" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-imports"], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-consumed-types"], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "fromfile": false, + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--java-infer-third-party-import-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--third-party-import-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]javac-tailor-source-targets"], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--javac-args=\"[, , ...]\""], + "env_var": "PANTS_JAVAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--javac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-version="], + "env_var": "PANTS_JUNIT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-lockfile="], + "env_var": "PANTS_JUNIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]junit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]junit-skip"], + "env_var": "PANTS_JUNIT_SKIP", + "fromfile": false, + "help": "If true, don't use JUnit when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-skip", "--no-junit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-tool-jdk="], + "env_var": "PANTS_JVM_TOOL_JDK", + "fromfile": false, + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-tool-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--tool-jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-jdk="], + "env_var": "PANTS_JVM_JDK", + "fromfile": false, + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jvm-reproducible-jars"], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "fromfile": false, + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-nailgun-remote-cache-speculation-delay=" + ], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "fromfile": false, + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-nailgun-remote-cache-speculation-delay" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--nailgun-remote-cache-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-global-options=\"['', '', ...]\""], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-global-options"], + "target_field_name": "jvm_global_options", + "typ": "list", + "unscoped_cmd_line_args": ["--global-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "fromfile": false, + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-default-resolve="], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-debug-args=\"['', '', ...]\""], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "fromfile": false, + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like ['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-debug-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--debug-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "kotlin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-tailor-source-targets"], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlin-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin" + }, + "kotlin-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-imports"], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-consumed-types"], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Kotlin targets.", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin-infer" + }, + "kotlinc": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlinc" + }, + "ktlint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-version="], + "env_var": "PANTS_KTLINT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.pinterest:ktlint:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.pinterest:ktlint:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-lockfile="], + "env_var": "PANTS_KTLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ktlint-skip"], + "env_var": "PANTS_KTLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Ktlint when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-skip", "--no-ktlint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "scope": "ktlint" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-install-from-resolve="], + "env_var": "PANTS_LAMBDEX_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `lambdex` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.12"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.12"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-console-script="], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-entry-point="], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": ["lambdex", "zip"], + "comma_separated_choices": "lambdex, zip", + "comma_separated_display_args": "--lambdex-layout=", + "config_key": "layout", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-layout="], + "env_var": "PANTS_LAMBDEX_LAYOUT", + "fromfile": false, + "help": "Explicitly control the layout used for `python_awslambda` and `python_google_cloud_function` targets. This option exists for the transition from Lambdex-based layout to the plain zip layout, as recommended by cloud vendors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-layout"], + "target_field_name": null, + "typ": "LambdexLayout", + "unscoped_cmd_line_args": ["--layout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex>=0.1.9", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--lambdex-version="], + "env_var": "PANTS_LAMBDEX_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--lambdex-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex>=0.1.9" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--lambdex-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--lambdex-lockfile="], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/subsystems/lambdex.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=lambdex`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[lambdex].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced lambdex`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--lambdex-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "provider": "pants.backend.awslambda.python", + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-batch-size="], + "env_var": "PANTS_LINT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-only=\"['', '', ...]\""], + "env_var": "PANTS_LINT_ONLY", + "fromfile": false, + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-formatters"], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fmt lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-fixers", + "config_key": "skip_fixers", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-fixers"], + "env_var": "PANTS_LINT_SKIP_FIXERS", + "fromfile": false, + "help": "If true, skip running all fixers in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fix lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fix` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-fixers", + "--no-lint-skip-fixers" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-fixers", "--no-skip-fixers"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run linters/formatters/fixers in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-output-file="], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-sep="], + "env_var": "PANTS_LIST_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]list-documented"], + "env_var": "PANTS_LIST_DOCUMENTED", + "fromfile": false, + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-documented", "--no-list-documented"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--documented", "--no-documented"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-install-from-resolve="], + "env_var": "PANTS_MYPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-requirements=\"['', '', ...]\""], + "env_var": "PANTS_MYPY_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-console-script="], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-entry-point="], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-config="], + "env_var": "PANTS_MYPY_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-config-discovery"], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`. Tip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your MyPy plugins such as 'mypy-plugins' so that the third-party requirements used by your plugin, like `mypy`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-skip"], + "env_var": "PANTS_MYPY_SKIP", + "fromfile": false, + "help": "If true, don't use MyPy when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-skip", "--no-mypy-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-args=\"[, , ...]\""], + "env_var": "PANTS_MYPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==1.1.1", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--mypy-version="], + "env_var": "PANTS_MYPY_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--mypy-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==1.1.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--mypy-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--mypy-lockfile="], + "env_var": "PANTS_MYPY_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/typecheck/mypy/mypy.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[mypy].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced mypy`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--mypy-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]mypy-export"], + "env_var": "PANTS_MYPY_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with MyPy when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--mypy-export", "--no-mypy-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0dev0.", + "deprecation_active": true, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "fromfile": false, + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement` target. Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nNOTE: Dependencies specified in this way are not visible to dependency inference, and cannot be referenced as explicit dependencies. See https://www.pantsbuild.org/v2.17/docs/python-check-goal for more information about problems this can cause, and how to work around them.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.\n\nWe recommend also enabling `[mypy].extra_type_stubs_lockfile` for a more reproducible build and less supply-chain security risk.", + "removal_hint": "Extra type stubs are now installed from a named resolve, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0dev0", + "scoped_cmd_line_args": ["--mypy-extra-type-stubs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-type-stubs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs-lockfile=", + "config_key": "extra_type_stubs_lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0dev0.", + "deprecation_active": true, + "display_args": ["--mypy-extra-type-stubs-lockfile="], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile for the option `[mypy].extra_type_stubs`.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this if you use `[mypy].extra_type_stubs`, though, as lockfiles are essential for reproducible builds and supply-chain security.\n\nTo use a lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-extra-type-stubs`.", + "removal_hint": "Extra type stubs are now installed from a named resolve, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0dev0", + "scoped_cmd_line_args": ["--mypy-extra-type-stubs-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--extra-type-stubs-lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python.typecheck.mypy", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-protobuf-install-from-resolve="], + "env_var": "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy-protobuf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==3.4.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--mypy-protobuf-version="], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--mypy-protobuf-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==3.4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--mypy-protobuf-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--mypy-protobuf-lockfile="], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=mypy-protobuf`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[mypy-protobuf].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced mypy-protobuf`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--mypy-protobuf-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "nodejs": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-version=", + "config_key": "version", + "default": "v16.15.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-version="], + "env_var": "PANTS_NODEJS_VERSION", + "fromfile": false, + "help": "Use this version of nodejs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v16.15.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_NODEJS_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-template=", + "config_key": "url_template", + "default": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-url-template="], + "env_var": "PANTS_NODEJS_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_RESOLVES", + "fromfile": false, + "help": "A mapping of names to lockfile paths used in your project.\n\nSpecifying a resolve name is optional. If unspecified, the default resolve name is calculated by taking the path from the source root to the directory containing the lockfile and replacing '/' with '.' in that path.\n\nExample: An npm lockfile located at `src/js/package/package-lock.json' will result in a resolve named `js.package`, assuming src/ is a source root.\n\nRun `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find any tools required to run nodejs processes. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-executable-search-paths"], + "target_field_name": "nodejs_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Node.js distributions.\n\nThis option is only used if a templated url download specified via [nodejs].known_versions does not contain a version matching the configured [nodejs].version range.\n\nYou can specify absolute paths to binaries and/or to directories containing binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Node.js versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binaries with the version in BUILD_ROOT/.tool-versions\n* ``, all NodeJS versions under $NVM_DIR/versions/node\n* ``, the nvm installation with the version in BUILD_ROOT/.nvmrc\nNote that the version in the .nvmrc file has to be on the form \"vX.Y.Z\".", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-search-path"], + "target_field_name": "nodejs_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-corepack-env-vars=\"[, , ...]\"", + "config_key": "corepack_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-corepack-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_COREPACK_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `corepack` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nReview https://github.com/nodejs/corepack#environment-variables for available variables.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-corepack-env-vars"], + "target_field_name": "nodejs_corepack_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--corepack-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-manager=", + "config_key": "package_manager", + "default": "npm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-package-manager="], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGER", + "fromfile": false, + "help": "Default Node.js package manager to use.\n\nYou can either rely on this default together with the [nodejs].package_managers option, or specify the `package.json#packageManager` tool and version in the package.json of your project.\n\nSpecifying conflicting package manager versions within a multi-package workspace is an error.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-manager"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--package-manager"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "npm" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "package_managers", + "default": { + "npm": "8.5.5" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGERS", + "fromfile": false, + "help": "A mapping of package manager versions to semver releases.\n\nMany organizations only need a single version of a package manager, which is a good default and often the simplest thing to do.\n\nThe version download is managed by Corepack. This mapping corresponds to the https://github.com/nodejs/corepack#known-good-releases setting, using the `--activate` flag.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-managers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--package-managers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "npm": "8.5.5" + } + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Node.js Javascript runtime (including Corepack).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "nodejs" + }, + "openapi": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-tailor-targets", + "config_key": "tailor_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]openapi-tailor-targets"], + "env_var": "PANTS_OPENAPI_TAILOR_TARGETS", + "fromfile": false, + "help": "If true, add `openapi_documents` and `openapi_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-tailor-targets", + "--no-openapi-tailor-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-targets", "--no-tailor-targets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The OpenAPI Specification (https://swagger.io/specification/).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi", + "scope": "openapi" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-output-file="], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-from="], + "env_var": "PANTS_PATHS_FROM", + "fromfile": false, + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-from"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--from"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-to="], + "env_var": "PANTS_PATHS_TO", + "fromfile": false, + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-to"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--peek-output-file="], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--peek-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-exclude-defaults"], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "fromfile": false, + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-include-dep-rules", + "config_key": "include_dep_rules", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-include-dep-rules"], + "env_var": "PANTS_PEEK_INCLUDE_DEP_RULES", + "fromfile": false, + "help": "Whether to include `_dependencies_rules`, `_dependents_rules` and `_applicable_dep_rules` that apply to the target and its dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-include-dep-rules", + "--no-peek-include-dep-rules" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--include-dep-rules", + "--no-include-dep-rules" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-verbosity="], + "env_var": "PANTS_PEX_VERBOSITY", + "fromfile": false, + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-verbosity"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--verbosity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-venv-use-symlinks"], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "fromfile": false, + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-executable-search-paths"], + "target_field_name": "pex_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-binary-defaults-emit-warnings"], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "fromfile": false, + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--emit-warnings", "--no-emit-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "fromfile": false, + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.137", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-version="], + "env_var": "PANTS_PEX_CLI_VERSION", + "fromfile": false, + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.135,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.137" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.137|macos_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|macos_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.137|macos_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|macos_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-url-template="], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.135,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "preamble": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]preamble-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]preamble-skip"], + "env_var": "PANTS_PREAMBLE_SKIP", + "fromfile": false, + "help": "If true, don't use preamble when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-skip", "--no-preamble-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "template_by_globs", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS", + "fromfile": true, + "help": "Which preamble template to use based on the path globs (relative to the build root).\n\nExample:\n\n {\n '*.rs': '// Copyright (c) $year\\n// Line 2\\n'\n '*.py:!__init__.py': '# Copyright (c) $year\\n# Line 2\\n',\n }\n\nIt might be helpful to load this config from a JSON or YAML file. To do that, set `[preamble].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-template-by-globs"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--template-by-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's string.Template substitutions): - $year: The current year (only used when actually writing the year to the file).", + "is_goal": false, + "provider": "pants.backend.tools.preamble", + "scope": "preamble" + }, + "protobuf-java-grpc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-version="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-lockfile="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.java", + "scope": "protobuf-java-grpc" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-version="], + "env_var": "PANTS_PROTOC_VERSION", + "fromfile": false, + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-url-template="], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-tailor"], + "env_var": "PANTS_PROTOC_TAILOR", + "fromfile": false, + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-tailor", "--no-protoc-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-dependency-inference"], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--publish-output="], + "env_var": "PANTS_PUBLISH_OUTPUT", + "fromfile": false, + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--publish-output"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--py-constraints-output-file="], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--py-constraints-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]py-constraints-summary"], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "fromfile": false, + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependents`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependents` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependents).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--summary", "--no-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pydocstyle": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-install-from-resolve="], + "env_var": "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pydocstyle` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-console-script=", + "config_key": "console_script", + "default": "pydocstyle", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-console-script="], + "env_var": "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-entry-point="], + "env_var": "PANTS_PYDOCSTYLE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-config="], + "env_var": "PANTS_PYDOCSTYLE_CONFIG", + "fromfile": false, + "help": "Path to a Pydocstyle config file (http://www.pydocstyle.org/en/stable/usage.html#configuration-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-config-discovery"], + "env_var": "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`setup.cfg`, `tox.ini`, `.pydocstyle`, `.pydocstyle.ini`, `.pydocstylerc`, `.pydocstylerc.ini`, and `pyproject.toml`) searching for the configuration file in this particular order.\n\nPlease note that even though `pydocstyle` keeps looking for a configuration file up the directory tree until one is found, Pants will only search for the config files in the repository root (from where you would normally run the `` command).\n\nUse `[pydocstyle].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config-discovery", + "--no-pydocstyle-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-skip"], + "env_var": "PANTS_PYDOCSTYLE_SKIP", + "fromfile": false, + "help": "If true, don't use Pydocstyle when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-skip", "--no-pydocstyle-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pydocstyle, e.g. `--pydocstyle-args='--select=D101,D102'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-version=", + "config_key": "version", + "default": "pydocstyle[toml]>=6.1.1,<7.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--pydocstyle-version="], + "env_var": "PANTS_PYDOCSTYLE_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pydocstyle-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle[toml]>=6.1.1,<7.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pydocstyle-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pydocstyle-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--pydocstyle-lockfile="], + "env_var": "PANTS_PYDOCSTYLE_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/pydocstyle/pydocstyle.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pydocstyle`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pydocstyle].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pydocstyle`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--pydocstyle-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]pydocstyle-export"], + "env_var": "PANTS_PYDOCSTYLE_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Pydocstyle when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pydocstyle-export", + "--no-pydocstyle-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pydocstyle", + "scope": "pydocstyle" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-install-from-resolve="], + "env_var": "PANTS_PYLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pylint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYLINT_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-console-script="], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-entry-point="], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-config="], + "env_var": "PANTS_PYLINT_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-config-discovery"], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.17/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.\n\nTip: it's often helpful to define a dedicated 'resolve' via `[python].resolves` for your Pylint plugins such as 'pylint-plugins' so that the third-party requirements used by your plugin, like `pylint`, do not mix with the rest of your project. Read that option's help message for more info on resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-skip"], + "env_var": "PANTS_PYLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Pylint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-skip", "--no-pylint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-args=\"[, , ...]\""], + "env_var": "PANTS_PYLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.13.0,<3", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--pylint-version="], + "env_var": "PANTS_PYLINT_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pylint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.13.0,<3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pylint-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--pylint-lockfile="], + "env_var": "PANTS_PYLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/pylint/pylint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pylint`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pylint].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pylint`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--pylint-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]pylint-export"], + "env_var": "PANTS_PYLINT_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Pylint when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--pylint-export", "--no-pylint-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pylint", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-install-from-resolve="], + "env_var": "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyoxidizer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.8,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.8,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-console-script="], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-entry-point="], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-version=", + "config_key": "version", + "default": "pyoxidizer>=0.18.0,<1", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--pyoxidizer-version="], + "env_var": "PANTS_PYOXIDIZER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pyoxidizer-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer>=0.18.0,<1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pyoxidizer-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pyoxidizer-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--pyoxidizer-lockfile="], + "env_var": "PANTS_PYOXIDIZER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/packaging/pyoxidizer/pyoxidizer.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pyoxidizer`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pyoxidizer].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pyoxidizer`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--pyoxidizer-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-install-from-resolve="], + "env_var": "PANTS_PYTEST_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytest` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYTEST_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-console-script="], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-entry-point="], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-junit-family="], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "fromfile": false, + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-junit-family"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--junit-family"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-execution-slot-var="], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "fromfile": false, + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-execution-slot-var"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--execution-slot-var"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-config="], + "env_var": "PANTS_PYTEST_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-config-discovery"], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-xdist-enabled"], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "fromfile": false, + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--xdist-enabled", "--no-xdist-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-skip"], + "env_var": "PANTS_PYTEST_SKIP", + "fromfile": false, + "help": "If true, don't use Pytest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-skip", "--no-pytest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest==7.0.1", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--pytest-version="], + "env_var": "PANTS_PYTEST_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pytest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest==7.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["pytest-cov>=2.12,!=2.12.1,<3.1", "pytest-xdist>=2.5,<3"], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pytest-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1", + "pytest-xdist>=2.5,<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--pytest-lockfile="], + "env_var": "PANTS_PYTEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/subsystems/pytest.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pytest`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pytest].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pytest`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--pytest-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]pytest-export"], + "env_var": "PANTS_PYTEST_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Pytest when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--pytest-export", "--no-pytest-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "fromfile": false, + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.17/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-versions-universe"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-versions-universe"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-resolves"], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "fromfile": false, + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "fromfile": false, + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.17/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-default-resolve="], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": [ + "20.3.4-patched", + "22.2.2", + "22.3", + "22.3.1", + "23.0", + "23.0.1", + "23.1", + "23.1.1", + "23.1.2", + "latest" + ], + "comma_separated_choices": "20.3.4-patched, 22.2.2, 22.3, 22.3.1, 23.0, 23.0.1, 23.1, 23.1.1, 23.1.2, latest", + "comma_separated_display_args": "--python-pip-version=", + "config_key": "pip_version", + "default": "23.1.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-pip-version="], + "env_var": "PANTS_PYTHON_PIP_VERSION", + "fromfile": false, + "help": "Use this version of Pip for resolving requirements and generating lockfiles.\n\nN.B.: The `latest` value selects the latest of the listed choices which is not necessarily the latest Pip version released on PyPI.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-pip-version"], + "target_field_name": null, + "typ": "PipVersion", + "unscoped_cmd_line_args": ["--pip-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "23.1.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python].interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use ['==3.9.*'] via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to ['==3.7.*'], then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "fromfile": false, + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-constraints-file"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-constraints-file"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve, you can also use the value `:all:` to disable all binary packages: `{'data-science': [':all:']}`.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-no-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-no-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve you can use the value `:all:` to disable all source packages: `{'data-science': [':all:']}`.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-only-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-only-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": ["error", "ignore", "warn"], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "fromfile": false, + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-invalid-lockfile-behavior"], + "target_field_name": null, + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": ["--invalid-lockfile-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-resolves-generate-lockfiles"], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "fromfile": false, + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-run-against-entire-lockfile"], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "fromfile": false, + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile\n changes, rather than just those that depend on the changed requirement.\n2) Requirements unneeded by a test/run/repl will be present on the sys.path, which\n might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-resolver-manylinux="], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "fromfile": false, + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolver-manylinux"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--resolver-manylinux"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-source-targets"], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-ignore-empty-init-files"], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "fromfile": false, + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-requirements-targets"], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "fromfile": false, + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-pex-binary-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-py-typed-targets", + "config_key": "tailor_py_typed_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-py-typed-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS", + "fromfile": false, + "help": "If true, add `resource` targets for marker files named `py.typed` with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-py-typed-targets", + "--no-python-tailor-py-typed-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-py-typed-targets", + "--no-tailor-py-typed-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-macos-big-sur-compatibility"], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "fromfile": false, + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-lockfile-targets", + "config_key": "enable_lockfile_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-lockfile-targets"], + "env_var": "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS", + "fromfile": false, + "help": "Create targets for all Python lockfiles defined in `[python].resolves`.\n\nThe lockfile targets will then be used as dependencies to the `python_requirement` targets that use them, invalidating source targets per resolve when the lockfile changes.\n\nIf another targets address is in conflict with the created lockfile target, it will shadow the lockfile target and it will not be available as a dependency for any `python_requirement` targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-lockfile-targets", + "--no-python-enable-lockfile-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-lockfile-targets", + "--no-enable-lockfile-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-default-run-goal-use-sandbox"], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "fromfile": false, + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-repl-history", + "config_key": "repl_history", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-repl-history"], + "env_var": "PANTS_PYTHON_REPL_HISTORY", + "fromfile": false, + "help": "Whether to use the standard Python command history file when running a repl.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repl-history", + "--no-python-repl-history" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--repl-history", "--no-repl-history"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-requirement-constraints="], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "fromfile": false, + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-requirement-constraints"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--requirement-constraints"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]python-resolve-all-constraints"], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "fromfile": false, + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "internal_python_build_standalone_info", + "default": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO", + "fromfile": false, + "help": "A map from platform to the information needed to download Python Build Standalone.\n\nPython Build Standalone is used to run Python-implemented Pants tools/scripts in docker environments (so that Python doesn't need to be installed).\n\nThe version of Python provided should match the default value's version, which is the highest Python Major/Minor version compatible with the Pants package's interpreter constraints. Additionally, the downloaded file should be extractable by `tar` using `-xvf` (most likely a `.tar.gz` file).\n\nThe schema is : (, , ) for each possible platform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-internal-python-build-standalone-info" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--internal-python-build-standalone-info"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": ["", ""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Python interpreters.\n\nWhich interpreters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-search-path"], + "target_field_name": "python_bootstrap_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["", ""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": ["python", "python3"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "fromfile": false, + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-names"], + "target_field_name": "python_bootstrap_names", + "typ": "list", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["python", "python3"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-dump-source-analysis": { + "advanced": [], + "basic": [ + { + "choices": ["raw_dependency_inference", "dependency_inference"], + "comma_separated_choices": "raw_dependency_inference, dependency_inference", + "comma_separated_display_args": "--python-dump-source-analysis-analysis-flavor=", + "config_key": "analysis_flavor", + "default": "dependency_inference", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-dump-source-analysis-analysis-flavor=" + ], + "env_var": "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR", + "fromfile": false, + "help": "The type of information that should be returned.\n\n* `dependency_inference`: The results of dependency inference, for every detected import in every file.\n\n* `raw_dependency_inference`: The raw intermediate results of the dependency inference process,\nat every stage they're available. Potentially useful for debugging the dependency inference process.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-dump-source-analysis-analysis-flavor" + ], + "target_field_name": null, + "typ": "AnalysisFlavor", + "unscoped_cmd_line_args": ["--analysis-flavor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dependency_inference" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Dump source analysis for python_source targets.", + "is_goal": true, + "provider": "pants.backend.experimental.python", + "scope": "python-dump-source-analysis" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-imports"], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-string-imports"], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--string-imports", "--no-string-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-string-imports-min-dots="], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "fromfile": false, + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-string-imports-min-dots"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--string-imports-min-dots"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-assets"], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "fromfile": false, + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--assets", "--no-assets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-assets-min-slashes="], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "fromfile": false, + "help": "If --assets is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-assets-min-slashes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--assets-min-slashes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": ["always", "content_only", "never"], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-init-files="], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "fromfile": false, + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-init-files"], + "target_field_name": null, + "typ": "InitFilesInference", + "unscoped_cmd_line_args": ["--init-files"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-conftests"], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "fromfile": false, + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--conftests", "--no-conftests"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-entry-points"], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "fromfile": false, + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--entry-points", "--no-entry-points"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["error", "warning", "ignore"], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "fromfile": false, + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "target_field_name": null, + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": ["--unowned-dependency-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + }, + { + "choices": ["none", "by_source_root"], + "comma_separated_choices": "none, by_source_root", + "comma_separated_display_args": "--python-infer-ambiguity-resolution=", + "config_key": "ambiguity_resolution", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ambiguity-resolution=" + ], + "env_var": "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION", + "fromfile": false, + "help": "When multiple sources provide the same symbol, how to choose the provider to use.\n\n`none`: Do not attempt to resolve this ambiguity. No dependency will be inferred, and warnings will be logged.\n\n`by_source_root`: Choose the provider with the closest common ancestor to the consumer's source root. If the provider is under the same source root then this will be the source root itself. This is useful when multiple projects in different source roots provide the same symbols (because of repeated first-party module paths or overlapping requirements.txt) and you want to resolve the ambiguity locally in each project.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ambiguity-resolution"], + "target_field_name": null, + "typ": "AmbiguityResolution", + "unscoped_cmd_line_args": ["--ambiguity-resolution"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-ignored-unowned-imports=\"['', '', ...]\"", + "config_key": "ignored_unowned_imports", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ignored-unowned-imports=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS", + "fromfile": false, + "help": "Unowned imports that should be ignored.\n\n If there are any unowned import statements and adding the `# pants: no-infer-dep`\n to the lines of the import is impractical, you can instead provide a list of imports\n that Pants should ignore. You can declare a specific import or a path to a package\n if you would like any of the package imports to be ignored.\n\n For example, you could ignore all the following imports of the code\n\n ```\n import src.generated.app\n from src.generated.app import load\n from src.generated.app import start\n from src.generated.client import connect\n ```\n\n by setting `ignored-unowned-imports=[\"src.generated.app\", \"src.generated.client.connect\"]`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ignored-unowned-imports"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignored-unowned-imports"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-use-rust-parser", + "config_key": "use_rust_parser", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-use-rust-parser"], + "env_var": "PANTS_PYTHON_INFER_USE_RUST_PARSER", + "fromfile": false, + "help": "Use the new Rust-based, multithreaded, in-process dependency parser.\n\nPants 2.17 introduced a new paradigm to dependency parsing for Python by leveraging a Rust-based parser that's called in the same process as Pants itself, instead of farming out to one-python-process-per-file.\n\nAs a result of the switch, cold-cache performance improved by a factor of about 12x, while hot-cache had no difference. Additionally, Pants can now infer dependencies from Python scripts with syntax errors.\n\nHowever, since this parser is completely different it has the potential of introducing differences in dependency inference. Although the Pants suite of tests only identified differences when using the `# pants: no-infer-dep` pragma, and string-based imports/assets, Out of an abundance of caution, this is behind a feature flag that will eventually be on-by-default then removed.\n\nIt is recommended that you run `scie-pants-linux-x86_64 peek :: > before.json` and then `scie-pants-linux-x86_64 --python-infer-use-rust-parser peek :: > after.json` and compare the two results. If all looks good, set `use_rust_parser` in `[python-infer]` in `pants.toml`. If you think there's a bug please file an issue: https://github.com/pantsbuild/pants/issues/new/choose.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-use-rust-parser", + "--no-python-infer-use-rust-parser" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-rust-parser", + "--no-use-rust-parser" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "fromfile": false, + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `CPPFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-cpp-flags"], + "target_field_name": "python_native_code_cpp_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cpp-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "fromfile": false, + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `LDFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-ld-flags"], + "target_field_name": "python_native_code_ld_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--ld-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-mypy-plugin"], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "fromfile": false, + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mypy-plugin", "--no-mypy-plugin"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.17/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": ["https://pypi.org/simple/"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "fromfile": false, + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-indexes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--indexes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["https://pypi.org/simple/"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "fromfile": false, + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what WHEELS_DIR points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.17/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.17/docs/options#pantsrc-file.\n\nNote: Only takes effect if using Pex lockfiles, i.e. using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-path-mappings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--path-mappings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-find-links=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "fromfile": false, + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-find-links"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--find-links"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-repos-repos=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "fromfile": false, + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-repos-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-thrift-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "fromfile": false, + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-thrift-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-install-from-resolve="], + "env_var": "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyupgrade` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-console-script="], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-entry-point="], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pyupgrade-skip"], + "env_var": "PANTS_PYUPGRADE_SKIP", + "fromfile": false, + "help": "If true, don't use pyupgrade when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-skip", "--no-pyupgrade-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.33.0,<4", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--pyupgrade-version="], + "env_var": "PANTS_PYUPGRADE_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pyupgrade-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.33.0,<4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--pyupgrade-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--pyupgrade-lockfile="], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/pyupgrade/pyupgrade.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=pyupgrade`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[pyupgrade].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced pyupgrade`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--pyupgrade-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]pyupgrade-export"], + "env_var": "PANTS_PYUPGRADE_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with pyupgrade when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": [ + "--pyupgrade-export", + "--no-pyupgrade-export" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]regex-lint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]regex-lint-skip"], + "env_var": "PANTS_REGEX_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use regex-lint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-skip", "--no-regex-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "fromfile": true, + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-config"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": ["none", "summary", "nonmatching", "names", "all"], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--regex-lint-detail-level="], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "fromfile": false, + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-detail-level"], + "target_field_name": null, + "typ": "DetailLevel", + "unscoped_cmd_line_args": ["--detail-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--repl-shell="], + "env_var": "PANTS_REPL_SHELL", + "fromfile": false, + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-shell"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shell"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]repl-restartable"], + "env_var": "PANTS_REPL_RESTARTABLE", + "fromfile": false, + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--restartable", "--no-restartable"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-output-file="], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-sep="], + "env_var": "PANTS_ROOTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "ruff": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-install-from-resolve="], + "env_var": "PANTS_RUFF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ruff` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-requirements=\"['', '', ...]\""], + "env_var": "PANTS_RUFF_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-console-script=", + "config_key": "console_script", + "default": "ruff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-console-script="], + "env_var": "PANTS_RUFF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-entry-point="], + "env_var": "PANTS_RUFF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-config="], + "env_var": "PANTS_RUFF_CONFIG", + "fromfile": false, + "help": "Path to the `pyproject.toml` or `ruff.toml` file to use for configuration (https://github.com/charliermarsh/ruff#configuration).\n\nSetting this option will disable `[ruff].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-config-discovery"], + "env_var": "PANTS_RUFF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`pyproject.toml`, and `ruff.toml`).\n\nUse `[ruff].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config-discovery", + "--no-ruff-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-skip"], + "env_var": "PANTS_RUFF_SKIP", + "fromfile": false, + "help": "If true, don't use Ruff when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-skip", "--no-ruff-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-args=\"[, , ...]\""], + "env_var": "PANTS_RUFF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Ruff, e.g. `--ruff-args='--exclude=foo --ignore=E501'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-version=", + "config_key": "version", + "default": "ruff>=0.0.213,<1", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--ruff-version="], + "env_var": "PANTS_RUFF_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--ruff-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff>=0.0.213,<1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--ruff-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--ruff-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--ruff-lockfile="], + "env_var": "PANTS_RUFF_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/ruff/ruff.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=ruff`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[ruff].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced ruff`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--ruff-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]ruff-export"], + "env_var": "PANTS_RUFF_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Ruff when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--ruff-export", "--no-ruff-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Ruff Python formatter (https://github.com/charliermarsh/ruff).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.ruff", + "scope": "ruff" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]run-debug-adapter"], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-debug-adapter", + "--no-run-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-tailor-source-targets"], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scala-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-imports"], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-consumed-types"], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-package-objects"], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "fromfile": false, + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-objects", + "--no-package-objects" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-force-add-siblings-as-dependencies" + ], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "fromfile": false, + "help": "If true, add a dependency on all scala_source targets generated by the same scala_sources target generator. If false, the dependencies will only be added if [scala-infer].imports is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalac-args=\"[, , ...]\""], + "env_var": "PANTS_SCALAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-version="], + "env_var": "PANTS_SCALAFMT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalameta:scalafmt-cli_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalameta:scalafmt-cli_2.13:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-lockfile="], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalafmt-skip"], + "env_var": "PANTS_SCALAFMT_SKIP", + "fromfile": false, + "help": "If true, don't use scalafmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-skip", "--no-scalafmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-version="], + "env_var": "PANTS_SCALAPB_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.thesamet.scalapb:scalapbc_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.thesamet.scalapb:scalapbc_2.13:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-lockfile="], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-plugins=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "fromfile": false, + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set --scalapb-runtime-dependencies appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-version="], + "env_var": "PANTS_SCALATEST_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalatest:scalatest_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalatest:scalatest_2.13:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-lockfile="], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalatest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalatest-skip"], + "env_var": "PANTS_SCALATEST_SKIP", + "fromfile": false, + "help": "If true, don't use Scalatest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-skip", "--no-scalatest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-version="], + "env_var": "PANTS_SCC_VERSION", + "fromfile": false, + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-url-template="], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]setup-py-generation-generate-setup-default"], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "fromfile": false, + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["exact", "compatible", "any"], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "fromfile": false, + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "target_field_name": null, + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": ["--first-party-dependency-version-scheme"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=63.1.0,<64.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--setuptools-version="], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--setuptools-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=63.1.0,<64.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["wheel>=0.35.1,<0.38"], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--setuptools-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["wheel>=0.35.1,<0.38"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--setuptools-lockfile="], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/subsystems/setuptools.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[setuptools].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced setuptools`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--setuptools-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "setuptools-scm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools-scm` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-console-script="], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-entry-point="], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-version=", + "config_key": "version", + "default": "setuptools-scm==7.1.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--setuptools-scm-version="], + "env_var": "PANTS_SETUPTOOLS_SCM_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--setuptools-scm-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools-scm==7.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--setuptools-scm-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--setuptools-scm-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--setuptools-scm-lockfile="], + "env_var": "PANTS_SETUPTOOLS_SCM_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/subsystems/setuptools_scm.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=setuptools-scm`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[setuptools-scm].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced setuptools-scm`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--setuptools-scm-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "setuptools-scm" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-dependency-inference"], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-tailor"], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "fromfile": false, + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-setup-executable-search-paths"], + "target_field_name": "shell_setup_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shell-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-test-skip"], + "env_var": "PANTS_SHELL_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Test with shell scripts when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-test-skip", "--no-shell-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants' Shell test support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-test" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-version="], + "env_var": "PANTS_SHELLCHECK_VERSION", + "fromfile": false, + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-url-template="], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-config-discovery"], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-skip"], + "env_var": "PANTS_SHELLCHECK_SKIP", + "fromfile": false, + "help": "If true, don't use Shellcheck when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-skip", "--no-shellcheck-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-version="], + "env_var": "PANTS_SHFMT_VERSION", + "fromfile": false, + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-url-template="], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-config-discovery"], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-skip"], + "env_var": "PANTS_SHFMT_SKIP", + "fromfile": false, + "help": "If true, don't use shfmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-skip", "--no-shfmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-args=\"[, , ...]\""], + "env_var": "PANTS_SHFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "shunit2": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-version=", + "config_key": "version", + "default": "b9102bb763cc603b3115ed30a5648bf950548097", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-version="], + "env_var": "PANTS_SHUNIT2_VERSION", + "fromfile": false, + "help": "Use this version of shunit2.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "b9102bb763cc603b3115ed30a5648bf950548097" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHUNIT2_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-template=", + "config_key": "url_template", + "default": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-url-template="], + "env_var": "PANTS_SHUNIT2_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.17/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHUNIT2_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shunit2-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-use-unsupported-version=" + ], + "env_var": "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shunit2 is not supported.\n\nSupported shunit2 versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shunit2-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shunit2-skip"], + "env_var": "PANTS_SHUNIT2_SKIP", + "fromfile": false, + "help": "If true, don't use shunit2 when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-skip", "--no-shunit2-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shunit2" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "fromfile": false, + "help": "A list of source root suffixes.\n\nA directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc.\n\nPrepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`.\n\nA `*` wildcard will match a single path segment, E.g., `src/*` will match `/src/python` and `/src/rust`.\n\nUse `/` to signify that the buildroot itself is a source root.\n\nSee https://www.pantsbuild.org/v2.17/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-root-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--root-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "fromfile": false, + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-marker-filenames"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--marker-filenames"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "spectral": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-version=", + "config_key": "version", + "default": "@stoplight/spectral-cli@6.5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-version="], + "env_var": "PANTS_SPECTRAL_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "@stoplight/spectral-cli@6.5.1" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]spectral-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]spectral-skip"], + "env_var": "PANTS_SPECTRAL_SKIP", + "fromfile": false, + "help": "If true, don't use Spectral when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-skip", "--no-spectral-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SPECTRAL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Spectral, e.g. `--spectral-args='--fail-severity=warn'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "spectral" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-log"], + "env_var": "PANTS_STATS_LOG", + "fromfile": false, + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-log", "--no-stats-log"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--log", "--no-log"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-memory-summary"], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "fromfile": false, + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--memory-summary", "--no-memory-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.17/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subprocess-environment-env-vars"], + "target_field_name": "subprocess_environment_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-name="], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "fromfile": false, + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-header="], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "fromfile": false, + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-header"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-header"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-indent="], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "fromfile": false, + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-indent"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-indent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "fromfile": false, + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.17/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-alias-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-ignore-paths=\"['', '', ...]\""], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "fromfile": false, + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-paths"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "fromfile": false, + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-adding-targets"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-adding-targets"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]tailor-check"], + "env_var": "PANTS_TAILOR_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-check", "--no-tailor-check"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-fmt-skip"], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform fmt` when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-install-from-resolve=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `terraform-hcl2-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--terraform-hcl2-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-version=", + "config_key": "version", + "default": "python-hcl2==4.3.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--terraform-hcl2-parser-version="], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--terraform-hcl2-parser-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-hcl2==4.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--terraform-hcl2-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-extra-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--terraform-hcl2-parser-lockfile="], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/terraform/hcl2.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=terraform-hcl2-parser`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[terraform-hcl2-parser].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced terraform-hcl2-parser`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--terraform-hcl2-parser-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-validate-skip"], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform validate` when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-report"], + "env_var": "PANTS_TEST_REPORT", + "fromfile": false, + "help": "Write test reports to --report-dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report", "--no-test-report"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--report", "--no-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-report-dir="], + "env_var": "PANTS_TEST_REPORT_DIR", + "fromfile": false, + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--report-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-default="], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "fromfile": false, + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-default"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-default"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-maximum="], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "fromfile": false, + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-maximum"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-maximum"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-batch-size="], + "env_var": "PANTS_TEST_BATCH_SIZE", + "fromfile": false, + "help": "The target maximum number of files to be included in each run of batch-enabled test runners.\n\nSome test runners can execute tests from multiple files in a single run. Test implementations will return all tests that _can_ run together as a single group - and then this may be further divided into smaller batches, based on this option. This is done:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch\n 3. to allow for parallelism in test runners which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" max batch size (rather than an exact value).\n\nNOTE: This parameter has no effect on test runners/plugins that do not implement support for batched testing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug"], + "env_var": "PANTS_TEST_DEBUG", + "fromfile": false, + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-debug", "--no-test-debug"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug", "--no-debug"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug-adapter"], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies --debug.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-force"], + "env_var": "PANTS_TEST_FORCE", + "fromfile": false, + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-force", "--no-test-force"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force", "--no-force"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["all", "failed", "none"], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-output="], + "env_var": "PANTS_TEST_OUTPUT", + "fromfile": false, + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-output"], + "target_field_name": null, + "typ": "ShowOutput", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-use-coverage"], + "env_var": "PANTS_TEST_USE_COVERAGE", + "fromfile": false, + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--use-coverage", "--no-use-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-open-coverage"], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "fromfile": false, + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--open-coverage", "--no-open-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-shard="], + "env_var": "PANTS_TEST_SHARD", + "fromfile": false, + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with --shard=0/3, --shard=1/3, --shard=2/3.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-shard"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shard"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-timeouts"], + "env_var": "PANTS_TEST_TIMEOUTS", + "fromfile": false, + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeouts", "--no-test-timeouts"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--timeouts", "--no-timeouts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-extra-env-vars"], + "target_field_name": "test_extra_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-tailor"], + "env_var": "PANTS_THRIFT_TAILOR", + "fromfile": false, + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--thrift-tailor", "--no-thrift-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-dependency-inference"], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-install-from-resolve="], + "env_var": "PANTS_TWINE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `twine` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-requirements=\"['', '', ...]\""], + "env_var": "PANTS_TWINE_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-console-script="], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-entry-point="], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-config="], + "env_var": "PANTS_TWINE_CONFIG", + "fromfile": false, + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-config-discovery"], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-ca-certs-path="], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use any certificates.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.17/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-skip"], + "env_var": "PANTS_TWINE_SKIP", + "fromfile": false, + "help": "If true, don't use Twine when running `scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-skip", "--no-twine-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-args=\"[, , ...]\""], + "env_var": "PANTS_TWINE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine>=4,<5", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--twine-version="], + "env_var": "PANTS_TWINE_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--twine-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine>=4,<5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["colorama>=0.4.3"], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--twine-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["colorama>=0.4.3"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--twine-lockfile="], + "env_var": "PANTS_TWINE_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/subsystems/twine.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=twine`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[twine].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced twine`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--twine-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-check"], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fmt"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "fromfile": false, + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--fmt", "--no-fmt"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["yapf", "black"], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--update-build-files-formatter="], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "fromfile": false, + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--update-build-files-formatter"], + "target_field_name": null, + "typ": "Formatter", + "unscoped_cmd_line_args": ["--formatter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fix-safe-deprecations"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "fromfile": false, + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.17/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "workunit-logger": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]workunit-logger-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]workunit-logger-enabled"], + "env_var": "PANTS_WORKUNIT_LOGGER_ENABLED", + "fromfile": false, + "help": "Whether to enable workunit logging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--workunit-logger-enabled", + "--no-workunit-logger-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--workunit-logger-logdir=", + "config_key": "logdir", + "default": ".pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--workunit-logger-logdir="], + "env_var": "PANTS_WORKUNIT_LOGGER_LOGDIR", + "fromfile": false, + "help": "Where to write the log to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--workunit-logger-logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".pants.d" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Workunit Logger subsystem. Useful for debugging pants itself.", + "is_goal": false, + "provider": "pants.backend.experimental.tools.workunit_logger", + "scope": "workunit-logger" + }, + "yamllint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-install-from-resolve="], + "env_var": "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yamllint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-console-script=", + "config_key": "console_script", + "default": "yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-console-script="], + "env_var": "PANTS_YAMLLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-entry-point="], + "env_var": "PANTS_YAMLLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-config-file-name=", + "config_key": "config_file_name", + "default": ".yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-config-file-name="], + "env_var": "PANTS_YAMLLINT_CONFIG_FILE_NAME", + "fromfile": false, + "help": "Name of a config file understood by yamllint (https://yamllint.readthedocs.io/en/stable/configuration.html). The plugin will search the ancestors of each directory in which YAML files are found for a config file of this name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-config-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--config-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".yamllint" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-include=\"['', '', ...]\"", + "config_key": "include", + "default": ["**/*.yml", "**/*.yaml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-include=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_INCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to lint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-include"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--include"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["**/*.yml", "**/*.yaml"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-exclude=\"['', '', ...]\"", + "config_key": "exclude", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-exclude=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_EXCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to exclude from linting.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-exclude"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--exclude"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAMLLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Yamllint, e.g. `--yamllint-args='-d relaxed'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yamllint-skip"], + "env_var": "PANTS_YAMLLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Yamllint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-skip", "--no-yamllint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-version=", + "config_key": "version", + "default": "yamllint==1.29.0", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--yamllint-version="], + "env_var": "PANTS_YAMLLINT_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--yamllint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint==1.29.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--yamllint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--yamllint-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--yamllint-lockfile="], + "env_var": "PANTS_YAMLLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/tools/yamllint/yamllint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=yamllint`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[yamllint].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced yamllint`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--yamllint-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]yamllint-export"], + "env_var": "PANTS_YAMLLINT_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with Yamllint when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--yamllint-export", "--no-yamllint-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A linter for YAML files (https://yamllint.readthedocs.io)", + "is_goal": false, + "provider": "pants.backend.experimental.tools.yamllint", + "scope": "yamllint" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-install-from-resolve="], + "env_var": "PANTS_YAPF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in [python].resolves, as described in https://www.pantsbuild.org/v2.17/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yapf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-requirements=\"['', '', ...]\""], + "env_var": "PANTS_YAPF_REQUIREMENTS", + "fromfile": false, + "help": "If install_from_resolve is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of python_requirement targets (or targets that generate or depend on python_requirement targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-console-script="], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-entry-point="], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-config="], + "env_var": "PANTS_YAPF_CONFIG", + "fromfile": false, + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-config-discovery"], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-skip"], + "env_var": "PANTS_YAPF_SKIP", + "fromfile": false, + "help": "If true, don't use yapf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-skip", "--no-yapf-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-args=\"[, , ...]\""], + "env_var": "PANTS_YAPF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf>=0.32.0,<1", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": ["--yapf-version="], + "env_var": "PANTS_YAPF_VERSION", + "fromfile": false, + "help": "Requirement string for the tool.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--yapf-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf>=0.32.0,<1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": ["toml"], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "fromfile": false, + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.", + "removal_version": "2.18.0.dev1", + "scoped_cmd_line_args": ["--yapf-extra-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["toml"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--yapf-lockfile="], + "env_var": "PANTS_YAPF_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.17.1rc3/src/python/pants/backend/python/lint/yapf/yapf.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 generate-lockfiles --resolve=yapf`.\n\nAlternatively, you can set this option to the path to a custom lockfile using pip's requirements.txt-style, ideally with `--hash`. Set `[python].invalid_lockfile_behavior = 'ignore'` so that Pants does not complain about missing lockfile headers.", + "removal_hint": "Custom tool versions are now installed from named resolves, as described at https://www.pantsbuild.org/v2.17/docs/python-lockfiles.\n\n1. If you have an existing resolve that includes the requirements for this tool,\n you can set `[yapf].install_from_resolve = \"\".\n This may be the case if the tool also provides a runtime library, and you want\n to specify the version in just one place.\n2. If not, you can set up a new resolve as described at the link above.\n\nEither way, the resolve you choose should provide the requirements currently set by the `version` and `extra-requirements` options for this tool, which you can see by running `pants help-advanced yapf`.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--yapf-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-export", + "config_key": "export", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.18.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]yapf-export"], + "env_var": "PANTS_YAPF_EXPORT", + "fromfile": false, + "help": "If true, export a virtual environment with yapf when running `scie-pants-linux-x86_64 export`.\n\nThis can be useful, for example, with IDE integrations to point your editor to the tool's binary.", + "removal_hint": "Use the export goal's --resolve option to select tools to export, instead of using this option to exempt a tool from export-by-default.", + "removal_version": "2.18.0.dev0", + "scoped_cmd_line_args": ["--yapf-export", "--no-yapf-export"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--export", "--no-export"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.18.x/reference/help-all.json b/versioned_docs/version-2.18.x/reference/help-all.json new file mode 100644 index 000000000..8ece951f2 --- /dev/null +++ b/versioned_docs/version-2.18.x/reference/help-all.json @@ -0,0 +1,97855 @@ +{ + "env_var_to_help_info": { + "PANTS_ADD_TRAILING_COMMA_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to add-trailing-comma, e.g. `--add-trailing-comma-args='--py36-plus'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-console-script=", + "config_key": "console_script", + "default": "add-trailing-comma", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-console-script="], + "env_var": "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma" + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-entry-point="], + "env_var": "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-install-from-resolve="], + "env_var": "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `add-trailing-comma` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]add-trailing-comma-skip"], + "env_var": "PANTS_ADD_TRAILING_COMMA_SKIP", + "fromfile": false, + "help": "If true, don't use add-trailing-comma when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-skip", + "--no-add-trailing-comma-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_ANONYMOUS_TELEMETRY_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]anonymous-telemetry-enabled"], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "fromfile": false, + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.18/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_ANONYMOUS_TELEMETRY_REPO_ID": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--anonymous-telemetry-repo-id="], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "fromfile": false, + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.18/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--anonymous-telemetry-repo-id"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--repo-id"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_APACHE_THRIFT_EXPECTED_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--apache-thrift-expected-version="], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "fromfile": false, + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + }, + "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-thrift-search-paths"], + "target_field_name": "apache_thrift_thrift_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--thrift-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_AUTOFLAKE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": ["--remove-all-unused-imports"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-args=\"[, , ...]\""], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["--remove-all-unused-imports"] + } + ] + } + }, + "PANTS_AUTOFLAKE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-console-script="], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + "PANTS_AUTOFLAKE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-entry-point="], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-install-from-resolve="], + "env_var": "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `autoflake` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_AUTOFLAKE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-requirements=\"['', '', ...]\""], + "env_var": "PANTS_AUTOFLAKE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_AUTOFLAKE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]autoflake-skip"], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "fromfile": false, + "help": "If true, don't use Autoflake when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-skip", "--no-autoflake-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BACKEND_PACKAGES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--backend-packages=\"['', '', ...]\""], + "env_var": "PANTS_BACKEND_PACKAGES", + "fromfile": false, + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--backend-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--backend-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.workunit_logger", + "pants.backend.experimental.tools.yamllint", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ] + } + ] + } + }, + "PANTS_BANDIT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-args=\"[, , ...]\""], + "env_var": "PANTS_BANDIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BANDIT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-config="], + "env_var": "PANTS_BANDIT_CONFIG", + "fromfile": false, + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BANDIT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-console-script="], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + "PANTS_BANDIT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-entry-point="], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BANDIT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-install-from-resolve="], + "env_var": "PANTS_BANDIT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `bandit` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BANDIT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BANDIT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BANDIT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]bandit-skip"], + "env_var": "PANTS_BANDIT_SKIP", + "fromfile": false, + "help": "If true, don't use Bandit when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-skip", "--no-bandit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BIN_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-bin-name="], + "env_var": "PANTS_BIN_NAME", + "fromfile": false, + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-bin-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-bin-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + "PANTS_BLACK_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-args=\"[, , ...]\""], + "env_var": "PANTS_BLACK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BLACK_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-config="], + "env_var": "PANTS_BLACK_CONFIG", + "fromfile": false, + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BLACK_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-config-discovery"], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_BLACK_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-console-script="], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + "PANTS_BLACK_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-entry-point="], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BLACK_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-install-from-resolve="], + "env_var": "PANTS_BLACK_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `black` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BLACK_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_BLACK_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BLACK_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BLACK_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-skip"], + "env_var": "PANTS_BLACK_SKIP", + "fromfile": false, + "help": "If true, don't use Black when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-skip", "--no-black-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUF_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-config="], + "env_var": "PANTS_BUF_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Buf (https://docs.buf.build/configuration/overview).\n\nSetting this option will disable `[buf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BUF_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-config-discovery"], + "env_var": "PANTS_BUF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant root config files during runs (`buf.yaml`, `buf.lock`, `buf.gen.yaml` and `buf.work.yaml`).\n\nUse `[buf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config-discovery", + "--no-buf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_BUF_FORMAT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-format-args=\"[, , ...]\""], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--format-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUF_FORMAT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-format-skip"], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-skip", "--no-buf-format-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--format-skip", "--no-format-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUF_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + "PANTS_BUF_LINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-lint-args=\"[, , ...]\""], + "env_var": "PANTS_BUF_LINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--lint-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUF_LINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-lint-skip"], + "env_var": "PANTS_BUF_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-skip", "--no-buf-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-skip", "--no-lint-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUF_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + "PANTS_BUF_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-url-template="], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + "PANTS_BUF_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_BUF_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-version="], + "env_var": "PANTS_BUF_VERSION", + "fromfile": false, + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + "PANTS_BUILDIFIER_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-args=\"[, , ...]\""], + "env_var": "PANTS_BUILDIFIER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUILDIFIER_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + "PANTS_BUILDIFIER_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buildifier-skip"], + "env_var": "PANTS_BUILDIFIER_SKIP", + "fromfile": false, + "help": "If true, don't use Buildifier when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-skip", "--no-buildifier-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + "PANTS_BUILDIFIER_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-url-template="], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_BUILDIFIER_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-version="], + "env_var": "PANTS_BUILDIFIER_VERSION", + "fromfile": false, + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]build-deprecations-fixer-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]build-deprecations-fixer-skip"], + "env_var": "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP", + "fromfile": false, + "help": "If true, don't use BUILD Deprecations Fixer when running `scie-pants-linux-x86_64 fix`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-deprecations-fixer-skip", + "--no-build-deprecations-fixer-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUILD_FILE_PRELUDE_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "fromfile": false, + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.18/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-file-prelude-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-file-prelude-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUILD_IGNORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-ignore=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_IGNORE", + "fromfile": false, + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUILD_PATTERNS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": ["BUILD", "BUILD.*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-patterns=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_PATTERNS", + "fromfile": false, + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["BUILD", "BUILD.*"] + } + ] + } + }, + "PANTS_CACHE_CONTENT_BEHAVIOR": { + "choices": ["fetch", "validate", "defer"], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cache-content-behavior="], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "fromfile": false, + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cache-content-behavior"], + "target_field_name": null, + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": ["--cache-content-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + "PANTS_CA_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ca-certs-path="], + "env_var": "PANTS_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.18/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_CHANGED_DEPENDEES": { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": ["--changed-dependees="], + "env_var": "PANTS_CHANGED_DEPENDEES", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": "Use --dependents instead", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": ["--changed-dependees"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependees"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + "PANTS_CHANGED_DEPENDENTS": { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependents=", + "config_key": "dependents", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-dependents="], + "env_var": "PANTS_CHANGED_DEPENDENTS", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-dependents"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependents"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + "PANTS_CHANGED_DIFFSPEC": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-diffspec="], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "fromfile": false, + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-diffspec"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--diffspec"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_CHANGED_SINCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-since="], + "env_var": "PANTS_CHANGED_SINCE", + "fromfile": false, + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-since"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--since"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_CHECK_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--check-only=\"['', '', ...]\""], + "env_var": "PANTS_CHECK_ONLY", + "fromfile": false, + "help": "Only run these checkers and skip all others.\n\nThe checker names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkers.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--check-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_CLI_ALIAS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cli-alias=\"{'key1': val1, 'key2': val2, ...}\""], + "env_var": "PANTS_CLI_ALIAS", + "fromfile": false, + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependents=transitive\"\n\nThis would allow you to run `scie-pants-linux-x86_64 green all-changed`, which is shorthand for `scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependents=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cli-alias"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_COLORS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]colors"], + "env_var": "PANTS_COLORS", + "fromfile": false, + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--colors", "--no-colors"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--colors", "--no-colors"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_CONCURRENT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]concurrent"], + "env_var": "PANTS_CONCURRENT", + "fromfile": false, + "help": "Enable concurrent runs of Pants. With this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. As a result, enabling this option will increase the per-run startup cost, but will not block subsequent invocations.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_CONFIG_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": ["/tmp/tmp.MpwSc5OGVo/pants.toml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-config-files=\"['', '', ...]\""], + "env_var": "PANTS_CONFIG_FILES", + "fromfile": false, + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/tmp/tmp.MpwSc5OGVo/pants.toml"] + } + ] + } + }, + "PANTS_COURSIER_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + "PANTS_COURSIER_REPOS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-repos=\"['', '', ...]\""], + "env_var": "PANTS_COURSIER_REPOS", + "fromfile": false, + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + }, + "PANTS_COURSIER_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + "PANTS_COURSIER_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-url-template="], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + "PANTS_COURSIER_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_COURSIER_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-version="], + "env_var": "PANTS_COURSIER_VERSION", + "fromfile": false, + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.6" + } + ] + } + }, + "PANTS_COVERAGE_PY_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-config="], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "fromfile": false, + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-config-discovery"], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_COVERAGE_PY_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-console-script="], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + "PANTS_COVERAGE_PY_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-entry-point="], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_FAIL_UNDER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-fail-under="], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "fromfile": false, + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting `fail_under` in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set `[report] precision` properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-fail-under"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--fail-under"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_FILTER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-filter=\"['', '', ...]\""], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "fromfile": false, + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']`.\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-filter"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--filter"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_COVERAGE_PY_GLOBAL_REPORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-global-report"], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "fromfile": false, + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--global-report", "--no-global-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-install-from-resolve="], + "env_var": "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `coverage-py` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_COVERAGE_PY_OUTPUT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-output-dir="], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + "PANTS_COVERAGE_PY_REPORT": { + "choices": ["console", "xml", "html", "raw", "json", "lcov"], + "comma_separated_choices": "console, xml, html, raw, json, lcov", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": ["console"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "fromfile": false, + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-report"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--report"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["console"] + } + ] + } + }, + "PANTS_COVERAGE_PY_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DEBUGPY_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-args=\"[, , ...]\""], + "env_var": "PANTS_DEBUGPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DEBUGPY_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-console-script="], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEBUGPY_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-entry-point="], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + }, + "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-install-from-resolve="], + "env_var": "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `debugpy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_DEBUGPY_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-requirements=\"['', '', ...]\""], + "env_var": "PANTS_DEBUGPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DEBUG_ADAPTER_HOST": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-host="], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "fromfile": false, + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-host"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--host"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + "PANTS_DEBUG_ADAPTER_PORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-port="], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "fromfile": false, + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + }, + "PANTS_DEPENDEES_CLOSED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-closed"], + "env_var": "PANTS_DEPENDEES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-closed", "--no-dependees-closed"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDEES_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-output-file="], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEPENDEES_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-sep="], + "env_var": "PANTS_DEPENDEES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_DEPENDEES_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-transitive"], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENCIES_CLOSED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-closed"], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENCIES_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-output-file="], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEPENDENCIES_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-sep="], + "env_var": "PANTS_DEPENDENCIES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_DEPENDENCIES_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-transitive"], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENTS_CLOSED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-closed"], + "env_var": "PANTS_DEPENDENTS_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-closed", "--no-dependents-closed"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENTS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-output-file="], + "env_var": "PANTS_DEPENDENTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEPENDENTS_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-sep="], + "env_var": "PANTS_DEPENDENTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_DEPENDENTS_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-transitive"], + "env_var": "PANTS_DEPENDENTS_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-transitive", + "--no-dependents-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DISTDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-distdir="], + "env_var": "PANTS_DISTDIR", + "fromfile": false, + "help": "Write end products, such as the results of `pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-distdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-distdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + "PANTS_DOCFORMATTER_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCFORMATTER_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-console-script="], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + "PANTS_DOCFORMATTER_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-entry-point="], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-install-from-resolve="], + "env_var": "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `docformatter` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_DOCFORMATTER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCFORMATTER_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docformatter-skip"], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "fromfile": false, + "help": "If true, don't use docformatter when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-skip", "--no-docformatter-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dockerfile-parser-install-from-resolve="], + "env_var": "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `dockerfile-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_DOCKERFILE_PARSER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_BUILD_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "fromfile": false, + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_BUILD_HOSTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "build_hosts", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_BUILD_HOSTS", + "fromfile": false, + "help": "Hosts entries to be added to the `/etc/hosts` file in all built images.\n\nExample:\n\n [docker]\n build_hosts = {\"docker\": \"10.180.0.1\", \"docker2\": \"10.180.0.2\"}\n\nUse the `extra_build_hosts` field on a `docker_image` target for additional image specific host entries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-hosts"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--build-hosts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_DOCKER_BUILD_NO_CACHE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-no-cache", + "config_key": "build_no_cache", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-build-no-cache"], + "env_var": "PANTS_DOCKER_BUILD_NO_CACHE", + "fromfile": false, + "help": "Do not use the Docker cache when building images.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-no-cache", + "--no-docker-build-no-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--build-no-cache", "--no-build-no-cache"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOCKER_BUILD_TARGET_STAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-build-target-stage="], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "fromfile": false, + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-target-stage"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-target-stage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCKER_BUILD_VERBOSE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-build-verbose"], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "fromfile": false, + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--build-verbose", "--no-build-verbose"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-context-root="], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "fromfile": false, + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-context-root"], + "target_field_name": null, + "typ": "workspace_path", + "unscoped_cmd_line_args": ["--default-context-root"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_DOCKER_DEFAULT_REPOSITORY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-repository="], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "fromfile": false, + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + "PANTS_DOCKER_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-env-vars=\"[, , ...]\""], + "env_var": "PANTS_DOCKER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-env-vars"], + "target_field_name": "docker_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find the Docker client and any tools required. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-executable-search-paths"], + "target_field_name": "docker_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_DOCKER_EXECUTION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-execution", + "config_key": "docker_execution", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-execution"], + "env_var": "PANTS_DOCKER_EXECUTION", + "fromfile": false, + "help": "If true, `docker_environment` targets can be used to run builds inside a Docker container.\n\nIf false, anytime a `docker_environment` target is used, Pants will instead fallback to whatever the target's `fallback_environment` field is set to.\n\nThis can be useful, for example, if you want to always use Docker locally, but disable it in CI, or vice versa.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-execution", "--no-docker-execution"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--docker-execution", "--no-docker-execution"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DOCKER_REGISTRIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "fromfile": true, + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n \"use_local_alias\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.\n\nIf `use_local_alias` is true, a built image is additionally tagged locally using the registry alias as the value for repository (i.e. the additional image tag is not pushed) and will be used for any `pants run` requests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_DOCKER_RUN_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-run-args=\"[, , ...]\""], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "fromfile": false, + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--run-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-tailor"], + "env_var": "PANTS_DOCKER_TAILOR", + "fromfile": false, + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tailor", "--no-docker-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DOCKER_TOOLS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-tools=\"['', '', ...]\""], + "env_var": "PANTS_DOCKER_TOOLS", + "fromfile": false, + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tools"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tools"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to terraform, e.g. `--download-terraform-args='-auto-approve'`.\n\nAdditional arguments to pass to the Terraform command line.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_EXTRA_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Terraform processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-extra-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]download-terraform-tailor"], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "fromfile": false, + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-url-template="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.4.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-version="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "fromfile": false, + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.4.6" + } + ] + } + }, + "PANTS_DYNAMIC_UI": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dynamic-ui"], + "env_var": "PANTS_DYNAMIC_UI", + "fromfile": false, + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DYNAMIC_UI_RENDERER": { + "choices": ["indicatif-spinner", "experimental-prodash"], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dynamic-ui-renderer="], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "fromfile": false, + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui-renderer"], + "target_field_name": null, + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": ["--dynamic-ui-renderer"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + "PANTS_ENGINE_VISUALIZE_TO": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--engine-visualize-to="], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "fromfile": false, + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--engine-visualize-to"], + "target_field_name": null, + "typ": "dir_option", + "unscoped_cmd_line_args": ["--engine-visualize-to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ENVIRONMENTS_PREVIEW_NAMES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "names", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_ENVIRONMENTS_PREVIEW_NAMES", + "fromfile": false, + "help": "A mapping of logical names to addresses to environment targets. For example:\n\n [environments-preview.names]\n linux_local = \"//:linux_env\"\n macos_local = \"//:macos_env\"\n centos6 = \"//:centos6_docker_env\"\n linux_ci = \"build-support:linux_ci_env\"\n macos_ci = \"build-support:macos_ci_env\"\n\nTo use an environment for a given target, specify the name in the `environment` field on that target. Pants will consume the environment target at the address mapped from that name.\n\nPants will ignore any environment targets that are not given a name via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--environments-preview-names"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "fromfile": false, + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-groups-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--groups-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": ["PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-runner-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--runner-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["PATH"] + } + ] + } + }, + "PANTS_EXPERIMENTAL_BSP_SERVER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]experimental-bsp-server"], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "fromfile": false, + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--server", "--no-server"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-address="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "fromfile": false, + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + "PANTS_EXPERIMENTAL_EXPLORER_PORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-port="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "fromfile": false, + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + }, + "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-py-editable-in-resolve=\"['', '', ...]\"", + "config_key": "py_editable_in_resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-editable-in-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE", + "fromfile": false, + "help": "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.\n\nIf a resolve name is not in this list, 'python_distribution' targets will not be installed in the virtualenv. This defaults to an empty list for backwards compatibility and to prevent unnecessary work to generate and install the PEP-660 editable wheels.\n\nThis only applies when '[python].enable_resolves' is true and when exporting a 'mutable_virtualenv' ('symlinked_immutable_virtualenv' exports are not \"full\" virtualenvs because they must not be edited, and do not include 'pip').\n\nNOTE: If you are using legacy exports (not using the '--resolve' option), then this option has no effect. Legacy exports will not include any editable installs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-editable-in-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--py-editable-in-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_EXPORT_PY_RESOLVE_FORMAT": { + "choices": ["mutable_virtualenv", "symlinked_immutable_virtualenv"], + "comma_separated_choices": "mutable_virtualenv, symlinked_immutable_virtualenv", + "comma_separated_display_args": "--export-py-resolve-format=", + "config_key": "py_resolve_format", + "default": "mutable_virtualenv", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-resolve-format=" + ], + "env_var": "PANTS_EXPORT_PY_RESOLVE_FORMAT", + "fromfile": false, + "help": "Export Python resolves using this format. Options are:\n - `mutable_virtualenv`: Export a standalone mutable virtualenv that you can\n further modify.\n - `symlinked_immutable_virtualenv`: Export a symlink into a cached Python virtualenv.\n This virtualenv will have no pip binary, and will be immutable. Any attempt to\n modify it will corrupt the cache! It may, however, take significantly less time\n to export than a standalone, mutable virtualenv.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-resolve-format"], + "target_field_name": null, + "typ": "PythonResolveExportFormat", + "unscoped_cmd_line_args": ["--py-resolve-format"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mutable_virtualenv" + } + ] + } + }, + "PANTS_EXPORT_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--export-resolve=\"['', '', ...]\""], + "env_var": "PANTS_EXPORT_RESOLVE", + "fromfile": false, + "help": "Export the specified resolve(s). The export format is backend-specific, e.g., Python resolves are exported as virtualenvs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_EXPORT_SYMLINK_PYTHON_VIRTUALENV": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]export-symlink-python-virtualenv", + "config_key": "symlink_python_virtualenv", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.20.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]export-symlink-python-virtualenv"], + "env_var": "PANTS_EXPORT_SYMLINK_PYTHON_VIRTUALENV", + "fromfile": false, + "help": "Export a symlink into a cached Python virtualenv. This virtualenv will have no pip binary, and will be immutable. Any attempt to modify it will corrupt the cache! It may, however, take significantly less time to export than a standalone, mutable virtualenv will.", + "removal_hint": "Set the `[export].py_resolve_format` option to 'symlinked_immutable_virtualenv'", + "removal_version": "2.20.0.dev0", + "scoped_cmd_line_args": [ + "--export-symlink-python-virtualenv", + "--no-export-symlink-python-virtualenv" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--symlink-python-virtualenv", + "--no-symlink-python-virtualenv" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILEDEPS_ABSOLUTE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-absolute"], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "fromfile": false, + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-absolute", "--no-filedeps-absolute"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--absolute", "--no-absolute"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILEDEPS_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-globs"], + "env_var": "PANTS_FILEDEPS_GLOBS", + "fromfile": false, + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-globs", "--no-filedeps-globs"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--globs", "--no-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILEDEPS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-output-file="], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FILEDEPS_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-sep="], + "env_var": "PANTS_FILEDEPS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_FILEDEPS_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-transitive"], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "fromfile": false, + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILTER_ADDRESS_REGEX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "fromfile": false, + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-address-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--address-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FILTER_GRANULARITY": { + "choices": ["all", "file", "BUILD"], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-granularity="], + "env_var": "PANTS_FILTER_GRANULARITY", + "fromfile": false, + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-granularity"], + "target_field_name": null, + "typ": "TargetGranularity", + "unscoped_cmd_line_args": ["--granularity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + "PANTS_FILTER_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-output-file="], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FILTER_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-sep="], + "env_var": "PANTS_FILTER_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_FILTER_TAG_REGEX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "fromfile": false, + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-tag-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FILTER_TARGET_TYPE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "fromfile": false, + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-target-type"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--target-type"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FIX_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-batch-size="], + "env_var": "PANTS_FIX_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each fixer batch.\n\nFixer processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in fixer processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_FIX_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-only=\"['', '', ...]\""], + "env_var": "PANTS_FIX_ONLY", + "fromfile": false, + "help": "Only run these fixers and skip all others.\n\nThe fixer names are outputted at the final summary of running this goal, e.g. `autoflake` and `pyupgrade`. You can also run `fix --only=fake` to get a list of all activated fixers.\n\nYou can repeat this option, e.g. `fix --only=autoflake --only=pyupgrade` or `fix --only=['autoflake', 'pyupgrade']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FIX_SKIP_FORMATTERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fix-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]fix-skip-formatters"], + "env_var": "PANTS_FIX_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters.\n\nFYI: when running `scie-pants-linux-x86_64 fix fmt ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `fix` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-skip-formatters", + "--no-fix-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-formatters", "--no-skip-formatters"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FLAKE8_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-args=\"[, , ...]\""], + "env_var": "PANTS_FLAKE8_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FLAKE8_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-config="], + "env_var": "PANTS_FLAKE8_CONFIG", + "fromfile": false, + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FLAKE8_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-config-discovery"], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_FLAKE8_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-console-script="], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + "PANTS_FLAKE8_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-entry-point="], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FLAKE8_EXTRA_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "fromfile": false, + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-extra-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FLAKE8_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-install-from-resolve="], + "env_var": "PANTS_FLAKE8_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `flake8` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FLAKE8_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-requirements=\"['', '', ...]\""], + "env_var": "PANTS_FLAKE8_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FLAKE8_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-skip"], + "env_var": "PANTS_FLAKE8_SKIP", + "fromfile": false, + "help": "If true, don't use Flake8 when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-skip", "--no-flake8-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FLAKE8_SOURCE_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add `'build-support/flake8'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.18/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside flake8 itself, as described in https://www.pantsbuild.org/v2.18/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FMT_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-batch-size="], + "env_var": "PANTS_FMT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_FMT_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-only=\"['', '', ...]\""], + "env_var": "PANTS_FMT_ONLY", + "fromfile": false, + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--generate-lockfiles-custom-command="], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "fromfile": false, + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-custom-command"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--custom-command"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_DIFF": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff", + "config_key": "diff", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF", + "fromfile": false, + "help": "Print a summary of changed distributions after generating the lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff", + "--no-generate-lockfiles-diff" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--diff", "--no-diff"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff-include-unchanged", + "config_key": "diff_include_unchanged", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff-include-unchanged"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED", + "fromfile": false, + "help": "Include unchanged distributions in the diff summary output. Implies `diff=true`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff-include-unchanged", + "--no-generate-lockfiles-diff-include-unchanged" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff-include-unchanged", + "--no-diff-include-unchanged" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "fromfile": false, + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from backend-specific configuration such as `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GOFMT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--gofmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--gofmt-args=\"[, , ...]\""], + "env_var": "PANTS_GOFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to gofmt, e.g. `--gofmt-args='-s -e'`.\n\nOnly the following style related options are supported: `-e`, `-r`, `-s`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GOFMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]gofmt-skip"], + "env_var": "PANTS_GOFMT_SKIP", + "fromfile": false, + "help": "If true, don't use gofmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-skip", "--no-gofmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GOLANG_ASDF_BIN_RELPATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-bin-relpath="], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "fromfile": false, + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-bin-relpath"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-bin-relpath"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + }, + "PANTS_GOLANG_ASDF_TOOL_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-tool-name="], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "fromfile": false, + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-tool-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-tool-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + "PANTS_GOLANG_CGO_CXX_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-cxx-flags=\"['', '', ...]\"", + "config_key": "cgo_cxx_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-cxx-flags=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_CGO_CXX_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C++ code when Cgo is enabled. Equivalent to setting the CGO_CXXFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-cxx-flags"], + "target_field_name": "golang_cgo_cxx_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-cxx-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + "PANTS_GOLANG_CGO_C_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-c-flags=\"['', '', ...]\"", + "config_key": "cgo_c_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-c-flags=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_CGO_C_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C code when Cgo is enabled. Equivalent to setting the CGO_CFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-c-flags"], + "target_field_name": "golang_cgo_c_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-c-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + "PANTS_GOLANG_CGO_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-cgo-enabled", + "config_key": "cgo_enabled", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-cgo-enabled"], + "env_var": "PANTS_GOLANG_CGO_ENABLED", + "fromfile": false, + "help": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-enabled", + "--no-golang-cgo-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cgo-enabled", "--no-cgo-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-binary-name=", + "config_key": "cgo_fortran_binary_name", + "default": "gfortran", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-fortran-binary-name="], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile fortran code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-binary-name"], + "target_field_name": "golang_cgo_fortran_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-fortran-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gfortran" + } + ] + } + }, + "PANTS_GOLANG_CGO_FORTRAN_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-flags=\"['', '', ...]\"", + "config_key": "cgo_fortran_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling Fortran code when Cgo is enabled. Equivalent to setting the CGO_FFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-flags"], + "target_field_name": "golang_cgo_fortran_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-fortran-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + "PANTS_GOLANG_CGO_GCC_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gcc-binary-name=", + "config_key": "cgo_gcc_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gcc-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GCC_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gcc-binary-name"], + "target_field_name": "golang_cgo_gcc_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gcc-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + "PANTS_GOLANG_CGO_GXX_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gxx-binary-name=", + "config_key": "cgo_gxx_binary_name", + "default": "g++", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gxx-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GXX_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C++ code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gxx-binary-name"], + "target_field_name": "golang_cgo_gxx_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gxx-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "g++" + } + ] + } + }, + "PANTS_GOLANG_CGO_LINKER_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-linker-flags=\"['', '', ...]\"", + "config_key": "cgo_linker_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-linker-flags=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_CGO_LINKER_FLAGS", + "fromfile": false, + "help": "Compiler options used when linking native code when Cgo is enabled. Equivalent to setting the CGO_LDFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-linker-flags"], + "target_field_name": "golang_cgo_linker_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-linker-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-tool-search-paths=\"['', '', ...]\"", + "config_key": "cgo_tool_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-tool-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for tools needed by CGo (e.g., gcc, g++).\n\nSpecify absolute paths to directories with tools needed by CGo , e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-tool-search-paths"], + "target_field_name": "golang_cgo_tool_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-tool-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-external-linker-binary-name=", + "config_key": "external_linker_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-external-linker-binary-name="], + "env_var": "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use as the \"external linker\" when invoking `go tool link`. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-external-linker-binary-name"], + "target_field_name": "golang_external_linker_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--external-linker-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + "PANTS_GOLANG_GO_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-go-search-paths=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable\n* ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binary with the version in `BUILD_ROOT/.tool-versions`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-go-search-paths"], + "target_field_name": "golang_go_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--go-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-minimum-expected-version="], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "fromfile": false, + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-minimum-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--minimum-expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + }, + "PANTS_GOLANG_SUBPROCESS_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-subprocess-env-vars"], + "target_field_name": "golang_subprocess_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--subprocess-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + }, + "PANTS_GOLANG_TAILOR_BINARY_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-binary-targets"], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-go-mod-targets"], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "fromfile": false, + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-package-targets"], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "fromfile": false, + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_AOSP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-aosp"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "fromfile": false, + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--aosp", "--no-aosp"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.google.googlejavaformat:google-java-format:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-lockfile="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-skip"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Google Java Format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-version="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + "PANTS_GO_GENERATE_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-generate-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-generate-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_GO_GENERATE_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking generator programs. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-generate-env-vars"], + "target_field_name": "go_generate_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + }, + "PANTS_GO_TEST_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GO_TEST_BLOCK_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-block-profile", + "config_key": "block_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-block-profile"], + "env_var": "PANTS_GO_TEST_BLOCK_PROFILE", + "fromfile": false, + "help": "Capture a goroutine blocking profile from the execution of the test runner. The profile will be written to the file `block.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-block-profile", + "--no-go-test-block-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--block-profile", "--no-block-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_COVERAGE_HTML": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-coverage-html", + "config_key": "coverage_html", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-coverage-html"], + "env_var": "PANTS_GO_TEST_COVERAGE_HTML", + "fromfile": false, + "help": "If true, then convert coverage reports to HTML format and write a `coverage.html` file next to the raw coverage data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-html", + "--no-go-test-coverage-html" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--coverage-html", "--no-coverage-html"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{target_spec}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-coverage-output-dir="], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Go coverage reports to. Must be relative to the build root.\n\nReplacements:\n\n - `{distdir}` is replaced with the Pants `distdir`.\n - `{target_spec}` is replaced with the address of the applicable `go_package` target with `/`\n characters replaced with dots (`.`).\n - `{import_path}` is replaced with the applicable package's import path. Subdirectories will be made\n for any path components separated by `/` characters.\n - `{import_path_escaped}` is replaced with the applicable package's import path but with\n slashes converted to underscores. This is deprecated and only exists to support behavior from\n earlier versions.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--coverage-output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{target_spec}" + } + ] + } + }, + "PANTS_GO_TEST_COVERAGE_PACKAGES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-packages=\"['', '', ...]\"", + "config_key": "coverage_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_PACKAGES", + "fromfile": false, + "help": "A list of \"import path patterns\" for determining which import paths will be instrumented for code coverage.\n\nFrom `go help packages`:\n\nAn import path is a pattern if it includes one or more \"...\" wildcards, each of which can match any string, including the empty string and strings containing slashes. Such a pattern expands to all package directories found in the GOPATH trees with names matching the patterns.\n\nTo make common patterns more convenient, there are two special cases. First, /... at the end of the pattern can match an empty string, so that net/... matches both net and packages in its subdirectories, like net/http. Second, any slash-separated pattern element containing a wildcard never participates in a match of the \"vendor\" element in the path of a vendored package, so that ./... does not match packages in subdirectories of ./vendor or ./mycode/vendor, but ./vendor/... and ./mycode/vendor/... do. Note, however, that a directory named vendor that itself contains code is not a vendored package: cmd/vendor would be a command named vendor, and the pattern cmd/... matches it. See golang.org/s/go15vendor for more about vendoring.\n\nThis option is similar to the `go test -coverpkg` option, but without support currently for reserved import path patterns like `std` and `all`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--coverage-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GO_TEST_COVER_MODE": { + "choices": ["set", "count", "atomic"], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-cover-mode="], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "fromfile": false, + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via `--test-use-coverage`. Valid values are `set`, `count`, and `atomic`:\n\n * `set`: bool: does this statement run?\n * `count`: int: how many times does this statement run?\n * `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-cover-mode"], + "target_field_name": null, + "typ": "GoCoverMode", + "unscoped_cmd_line_args": ["--cover-mode"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + }, + "PANTS_GO_TEST_CPU_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-cpu-profile", + "config_key": "cpu_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-cpu-profile"], + "env_var": "PANTS_GO_TEST_CPU_PROFILE", + "fromfile": false, + "help": "Capture a CPU profile from the execution of the test runner. The profile will be written to the file `cpu.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cpu-profile", + "--no-go-test-cpu-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cpu-profile", "--no-cpu-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_FORCE_ASAN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-asan", + "config_key": "force_asan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-asan"], + "env_var": "PANTS_GO_TEST_FORCE_ASAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"address sanitizer\" when running tests regardless of the test-by-test `asan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-asan", + "--no-go-test-force-asan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-asan", "--no-force-asan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_FORCE_MSAN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-msan", + "config_key": "force_msan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-msan"], + "env_var": "PANTS_GO_TEST_FORCE_MSAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"memory sanitizer\" when running tests regardless of the test-by-test `msan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-msan", + "--no-go-test-force-msan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-msan", "--no-force-msan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_FORCE_RACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-race", + "config_key": "force_race", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-race"], + "env_var": "PANTS_GO_TEST_FORCE_RACE", + "fromfile": false, + "help": "If true, then always enable the Go data race detector when running tests regardless of the test-by-test `test_race` field on the relevant `go_package` target.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-race", + "--no-go-test-force-race" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-race", "--no-force-race"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_MEM_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mem-profile", + "config_key": "mem_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mem-profile"], + "env_var": "PANTS_GO_TEST_MEM_PROFILE", + "fromfile": false, + "help": "Capture an allocation profile from the execution of the test runner after tests have passed. The profile will be written to the file `mem.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mem-profile", + "--no-go-test-mem-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mem-profile", "--no-mem-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_MUTEX_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mutex-profile", + "config_key": "mutex_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mutex-profile"], + "env_var": "PANTS_GO_TEST_MUTEX_PROFILE", + "fromfile": false, + "help": "Capture a mutex contention profile from the execution of the test runner when all tests are complete. The profile will be written to the file `mutex.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mutex-profile", + "--no-go-test-mutex-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mutex-profile", "--no-mutex-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_OUTPUT_TEST_BINARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-output-test-binary", + "config_key": "output_test_binary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-output-test-binary"], + "env_var": "PANTS_GO_TEST_OUTPUT_TEST_BINARY", + "fromfile": false, + "help": "Write the test binary to the test extra output directory.\n\nThis is similar to the `go test -c` option, but will still run the underlying test.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-output-test-binary", + "--no-go-test-output-test-binary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--output-test-binary", + "--no-output-test-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-skip"], + "env_var": "PANTS_GO_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Go test binary when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-skip", "--no-go-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_TRACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-trace", + "config_key": "trace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-trace"], + "env_var": "PANTS_GO_TEST_TRACE", + "fromfile": false, + "help": "Capture an execution trace from the execution of the test runner. The trace will be written to the file `trace.out` in the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-trace", "--no-go-test-trace"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--trace", "--no-trace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-url-template="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-version="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "fromfile": false, + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + "PANTS_HADOLINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-args=\"[, , ...]\""], + "env_var": "PANTS_HADOLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HADOLINT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-config="], + "env_var": "PANTS_HADOLINT_CONFIG", + "fromfile": false, + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HADOLINT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-config-discovery"], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_HADOLINT_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + "PANTS_HADOLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-skip"], + "env_var": "PANTS_HADOLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Hadolint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-skip", "--no-hadolint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HADOLINT_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + "PANTS_HADOLINT_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-url-template="], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_HADOLINT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-version="], + "env_var": "PANTS_HADOLINT_VERSION", + "fromfile": false, + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + "PANTS_HELM_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as follows:\n\n * --atomic\n * --cleanup-on-fail\n * --create-namespace\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n\nBefore attempting to use passthrough arguments, check the reference of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-default-registry-repository="], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "fromfile": false, + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-default-registry-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-registry-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HELM_EXTRA_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-extra-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-k8s-parser-install-from-resolve="], + "env_var": "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-k8s-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + }, + "PANTS_HELM_K8S_PARSER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + "PANTS_HELM_LINT_STRICT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-lint-strict"], + "env_var": "PANTS_HELM_LINT_STRICT", + "fromfile": false, + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-lint-strict", "--no-helm-lint-strict"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-strict", "--no-lint-strict"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-post-renderer-install-from-resolve="], + "env_var": "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-post-renderer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + }, + "PANTS_HELM_POST_RENDERER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_REGISTRIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "fromfile": true, + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_HELM_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]helm-tailor"], + "env_var": "PANTS_HELM_TAILOR", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": "Use `[helm].tailor_charts` instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": ["--helm-tailor", "--no-helm-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_HELM_TAILOR_CHARTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-charts", + "config_key": "tailor_charts", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-tailor-charts"], + "env_var": "PANTS_HELM_TAILOR_CHARTS", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-charts", + "--no-helm-tailor-charts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-charts", "--no-tailor-charts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_TAILOR_UNITTESTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-unittests", + "config_key": "tailor_unittests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-tailor-unittests"], + "env_var": "PANTS_HELM_TAILOR_UNITTESTS", + "fromfile": false, + "help": "If true, add `helm_unittest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-unittests", + "--no-helm-tailor-unittests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-unittests", "--no-tailor-unittests"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_HELM_UNITTEST_COLOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-color"], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "fromfile": false, + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--color", "--no-color"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_UNITTEST_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + "PANTS_HELM_UNITTEST_OUTPUT_TYPE": { + "choices": ["XUnit", "NUnit", "JUnit"], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "fromfile": false, + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-output-type"], + "target_field_name": null, + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": ["--output-type"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + }, + "PANTS_HELM_UNITTEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-skip"], + "env_var": "PANTS_HELM_UNITTEST_SKIP", + "fromfile": false, + "help": "If true, don't use helmunittestsubsystem when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-skip", + "--no-helm-unittest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + }, + "PANTS_HELM_UNITTEST_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-url-template="], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_HELM_UNITTEST_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.3.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-version="], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "fromfile": false, + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.3.3" + } + ] + } + }, + "PANTS_HELM_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + "PANTS_HELM_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-url-template="], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + "PANTS_HELM_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_HELM_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.12.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-version="], + "env_var": "PANTS_HELM_VERSION", + "fromfile": false, + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.12.3" + } + ] + } + }, + "PANTS_IGNORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [".*/", "/dist/", "__pycache__"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-ignore=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE", + "fromfile": false, + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc).\n\nPatterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored.\n\n`pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [".*/", "/dist/", "__pycache__"] + } + ] + } + }, + "PANTS_IGNORE_USE_GITIGNORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pants-ignore-use-gitignore"], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "fromfile": false, + "help": "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.\n\nPatterns from `[GLOBAL].pants_ignore` take precedence over these files' rules. For example, you can use `!my_pattern` in `pants_ignore` to have Pants operate on files that are gitignored.\n\nWarning: this does not yet support reading nested gitignore files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_IGNORE_WARNINGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ignore-warnings=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE_WARNINGS", + "fromfile": false, + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ignore-warnings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-warnings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_IPYTHON_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-console-script="], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + "PANTS_IPYTHON_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-entry-point="], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_IPYTHON_IGNORE_CWD": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ipython-ignore-cwd"], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "fromfile": false, + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--ignore-cwd", "--no-ignore-cwd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_IPYTHON_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-install-from-resolve="], + "env_var": "PANTS_IPYTHON_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ipython` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_IPYTHON_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-requirements=\"['', '', ...]\""], + "env_var": "PANTS_IPYTHON_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-args=\"[, , ...]\""], + "env_var": "PANTS_ISORT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "fromfile": false, + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-config"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-config-discovery"], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_ISORT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-console-script="], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + "PANTS_ISORT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-entry-point="], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ISORT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-install-from-resolve="], + "env_var": "PANTS_ISORT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `isort` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ISORT_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_ISORT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-requirements=\"['', '', ...]\""], + "env_var": "PANTS_ISORT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-skip"], + "env_var": "PANTS_ISORT_SKIP", + "fromfile": false, + "help": "If true, don't use isort when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-skip", "--no-isort-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JARJAR_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[jarjar].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"] + } + ] + } + }, + "PANTS_JARJAR_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `jarjar` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JARJAR_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-lockfile="], + "env_var": "PANTS_JARJAR_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/jvm/shading/jarjar.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=jarjar`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY": { + "choices": ["fatal", "skip", "omit", "move"], + "comma_separated_choices": "fatal, skip, omit, move", + "comma_separated_display_args": "--jarjar-misplaced-class-strategy=", + "config_key": "misplaced_class_strategy", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-misplaced-class-strategy=" + ], + "env_var": "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY", + "fromfile": false, + "help": "The strategy to use when processing class files that are in the wrong package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-misplaced-class-strategy"], + "target_field_name": null, + "typ": "MisplacedClassStrategy", + "unscoped_cmd_line_args": ["--misplaced-class-strategy"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_JARJAR_SKIP_MANIFEST": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jarjar-skip-manifest", + "config_key": "skip_manifest", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jarjar-skip-manifest"], + "env_var": "PANTS_JARJAR_SKIP_MANIFEST", + "fromfile": false, + "help": "Skip the processing of the JAR manifest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-skip-manifest", + "--no-jarjar-skip-manifest" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-manifest", "--no-skip-manifest"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JARJAR_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-version=", + "config_key": "version", + "default": "1.8.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-version="], + "env_var": "PANTS_JARJAR_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[jarjar].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.8.1" + } + ] + } + }, + "PANTS_JAVAC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--javac-args=\"[, , ...]\""], + "env_var": "PANTS_JAVAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--javac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JAVAC_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]javac-tailor-source-targets"], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_JAVA_INFER_CONSUMED_TYPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-consumed-types"], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_JAVA_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-imports"], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "fromfile": false, + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--java-infer-third-party-import-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--third-party-import-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_JUNIT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JUNIT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + "PANTS_JUNIT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JUNIT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-lockfile="], + "env_var": "PANTS_JUNIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_JUNIT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]junit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]junit-skip"], + "env_var": "PANTS_JUNIT_SKIP", + "fromfile": false, + "help": "If true, don't use JUnit when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-skip", "--no-junit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JUNIT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-version="], + "env_var": "PANTS_JUNIT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + "PANTS_JVM_DEBUG_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-debug-args=\"['', '', ...]\""], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "fromfile": false, + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like `['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-debug-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--debug-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JVM_DEFAULT_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-default-resolve="], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + "PANTS_JVM_GLOBAL_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-global-options=\"['', '', ...]\""], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-global-options"], + "target_field_name": "jvm_global_options", + "typ": "list", + "unscoped_cmd_line_args": ["--global-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JVM_JDK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-jdk="], + "env_var": "PANTS_JVM_JDK", + "fromfile": false, + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-nailgun-remote-cache-speculation-delay="], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "fromfile": false, + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-nailgun-remote-cache-speculation-delay"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--nailgun-remote-cache-speculation-delay"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + }, + "PANTS_JVM_REPRODUCIBLE_JARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jvm-reproducible-jars"], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "fromfile": false, + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JVM_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\""], + "env_var": "PANTS_JVM_RESOLVES", + "fromfile": false, + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + "PANTS_JVM_TOOL_JDK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-tool-jdk="], + "env_var": "PANTS_JVM_TOOL_JDK", + "fromfile": false, + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-tool-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--tool-jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + "PANTS_KEEP_SANDBOXES": { + "choices": ["always", "on_failure", "never"], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--keep-sandboxes="], + "env_var": "PANTS_KEEP_SANDBOXES", + "fromfile": false, + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--keep-sandboxes"], + "target_field_name": null, + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": ["--keep-sandboxes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + "PANTS_KOTLINC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--kotlinc-args=\"[, , ...]\""], + "env_var": "PANTS_KOTLINC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_KOTLIN_INFER_CONSUMED_TYPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-consumed-types"], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_KOTLIN_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-imports"], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-tailor-source-targets"], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_KOTLIN_VERSION_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlin-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_KTLINT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.pinterest:ktlint:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.pinterest:ktlint:{version}"] + } + ] + } + }, + "PANTS_KTLINT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_KTLINT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-lockfile="], + "env_var": "PANTS_KTLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_KTLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ktlint-skip"], + "env_var": "PANTS_KTLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Ktlint when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-skip", "--no-ktlint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_KTLINT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-version="], + "env_var": "PANTS_KTLINT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + "PANTS_LAMBDEX_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-console-script="], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + "PANTS_LAMBDEX_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-entry-point="], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_LAMBDEX_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-install-from-resolve="], + "env_var": "PANTS_LAMBDEX_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `lambdex` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.12"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.12"] + } + ] + } + }, + "PANTS_LAMBDEX_LAYOUT": { + "choices": ["lambdex", "zip"], + "comma_separated_choices": "lambdex, zip", + "comma_separated_display_args": "--lambdex-layout=", + "config_key": "layout", + "default": "zip", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--lambdex-layout="], + "env_var": "PANTS_LAMBDEX_LAYOUT", + "fromfile": false, + "help": "Explicitly control the layout used for `python_aws_lambda_function` (formerly `python_awslambda`) and `python_google_cloud_function` targets. This option exists for the transition from Lambdex-based layout to the plain zip layout, as recommended by cloud vendors.", + "removal_hint": "Remove the whole [lambdex] section, as Lambdex is deprecated and its functionality will be removed. If you have `layout = \"zip\"`, no further action is required, as you are already using the recommended layout.\n\nIf you have `layout = \"lambdex\"`, removing the section will switch any `python_aws_lambda_function` (formerly `python_awslambda`) and `python_google_cloud_function` targets to using the `zip` layout, as recommended by cloud vendors. (If you are using `python_aws_lambda_function`, you will need to also update the handlers configured in the cloud from `lambdex_handler.handler` to `lambda_function.handler`.)\n\nSee the docs for more details:\n\n* https://www.pantsbuild.org/v2.18/docs/awslambda-python#migrating-from-pants-216-and-earlier\n* https://www.pantsbuild.org/v2.18/docs/google-cloud-function-python#migrating-from-pants-216-and-earlier", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": ["--lambdex-layout"], + "target_field_name": null, + "typ": "LambdexLayout", + "unscoped_cmd_line_args": ["--layout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "zip" + } + ] + } + }, + "PANTS_LAMBDEX_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-requirements=\"['', '', ...]\""], + "env_var": "PANTS_LAMBDEX_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_LEVEL": { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["-l=", "--level="], + "env_var": "PANTS_LEVEL", + "fromfile": false, + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["-l", "--level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["-l", "--level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + "PANTS_LINT_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-batch-size="], + "env_var": "PANTS_LINT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_LINT_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-only=\"['', '', ...]\""], + "env_var": "PANTS_LINT_ONLY", + "fromfile": false, + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_LINT_SKIP_FIXERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-fixers", + "config_key": "skip_fixers", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-fixers"], + "env_var": "PANTS_LINT_SKIP_FIXERS", + "fromfile": false, + "help": "If true, skip running all fixers in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fix lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fix` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-skip-fixers", "--no-lint-skip-fixers"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-fixers", "--no-skip-fixers"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LINT_SKIP_FORMATTERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-formatters"], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fmt lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-formatters", "--no-skip-formatters"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LIST_DOCUMENTED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]list-documented"], + "env_var": "PANTS_LIST_DOCUMENTED", + "fromfile": false, + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-documented", "--no-list-documented"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--documented", "--no-documented"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LIST_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-output-file="], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_LIST_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-sep="], + "env_var": "PANTS_LIST_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_LOCAL_CACHE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]local-cache"], + "env_var": "PANTS_LOCAL_CACHE", + "fromfile": false, + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_LOCAL_EXECUTION_ROOT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-execution-root-dir="], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "fromfile": false, + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-execution-root-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-execution-root-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + "PANTS_LOCAL_STORE_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-dir="], + "env_var": "PANTS_LOCAL_STORE_DIR", + "fromfile": false, + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-store-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-directories-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-directories-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-directories-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-files-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-processes-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + "PANTS_LOCAL_STORE_SHARD_COUNT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-shard-count="], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "fromfile": false, + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-shard-count"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-shard-count"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + "PANTS_LOGDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--logdir="], + "env_var": "PANTS_LOGDIR", + "fromfile": false, + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_LOG_LEVELS_BY_TARGET": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "fromfile": false, + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with `--level`. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--log-levels-by-target"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--log-levels-by-target"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_LOG_SHOW_RUST_3RDPARTY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]log-show-rust-3rdparty"], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "fromfile": false, + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LOOP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]loop"], + "env_var": "PANTS_LOOP", + "fromfile": false, + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop", "--no-loop"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--loop", "--no-loop"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LOOP_MAX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--loop-max="], + "env_var": "PANTS_LOOP_MAX", + "fromfile": false, + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--loop-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + "PANTS_MYPY_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-args=\"[, , ...]\""], + "env_var": "PANTS_MYPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_MYPY_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-config="], + "env_var": "PANTS_MYPY_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-config-discovery"], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_MYPY_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-console-script="], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + "PANTS_MYPY_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-entry-point="], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-install-from-resolve="], + "env_var": "PANTS_MYPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-protobuf-install-from-resolve="], + "env_var": "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy-protobuf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_MYPY_PROTOBUF_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_MYPY_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-requirements=\"['', '', ...]\""], + "env_var": "PANTS_MYPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_MYPY_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-skip"], + "env_var": "PANTS_MYPY_SKIP", + "fromfile": false, + "help": "If true, don't use MyPy when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-skip", "--no-mypy-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_MYPY_SOURCE_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].install_from_resolve` to a resolve whose lockfile includes those plugins, and set the `plugins` option in `mypy.ini`. See https://www.pantsbuild.org/v2.18/docs/python-check-goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_NAMED_CACHES_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--named-caches-dir="], + "env_var": "PANTS_NAMED_CACHES_DIR", + "fromfile": false, + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--named-caches-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--named-caches-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + "PANTS_NODEJS_COREPACK_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-corepack-env-vars=\"[, , ...]\"", + "config_key": "corepack_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-corepack-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_COREPACK_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `corepack` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nReview https://github.com/nodejs/corepack#environment-variables for available variables.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-corepack-env-vars"], + "target_field_name": "nodejs_corepack_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--corepack-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find any tools required to run nodejs processes. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-executable-search-paths"], + "target_field_name": "nodejs_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_NODEJS_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]nodejs-infer-imports"], + "env_var": "PANTS_NODEJS_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `// pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-imports", + "--no-nodejs-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_NODEJS_INFER_PACKAGE_JSON_ENTRY_POINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-package-json-entry-points", + "config_key": "package_json_entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]nodejs-infer-package-json-entry-points"], + "env_var": "PANTS_NODEJS_INFER_PACKAGE_JSON_ENTRY_POINTS", + "fromfile": false, + "help": "Infer a `package_json`'s dependencies by parsing entry point statements from the package.json file.\n\nTo ignore a false positive, you can put `!{bad_address}` in the `dependencies` field of the `package_json` target.\n\nSee https://nodejs.org/api/packages.html#package-entry-points and\n https://docs.npmjs.com/cli/v9/configuring-npm/package-json#browser.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-package-json-entry-points", + "--no-nodejs-infer-package-json-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-json-entry-points", + "--no-package-json-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_NODEJS_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_NODEJS_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ] + } + ] + } + }, + "PANTS_NODEJS_PACKAGE_MANAGER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-manager=", + "config_key": "package_manager", + "default": "npm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-package-manager="], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGER", + "fromfile": false, + "help": "Default Node.js package manager to use.\n\nYou can either rely on this default together with the [nodejs].package_managers option, or specify the `package.json#packageManager` tool and version in the package.json of your project.\n\nSpecifying conflicting package manager versions within a multi-package workspace is an error.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-manager"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--package-manager"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "npm" + } + ] + } + }, + "PANTS_NODEJS_PACKAGE_MANAGERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "package_managers", + "default": { + "npm": "8.5.5" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGERS", + "fromfile": false, + "help": "A mapping of package manager versions to semver releases.\n\nMany organizations only need a single version of a package manager, which is a good default and often the simplest thing to do.\n\nThe version download is managed by Corepack. This mapping corresponds to the https://github.com/nodejs/corepack#known-good-releases setting, using the `--activate` flag.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-managers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--package-managers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "npm": "8.5.5" + } + } + ] + } + }, + "PANTS_NODEJS_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_RESOLVES", + "fromfile": false, + "help": "A mapping of names to lockfile paths used in your project.\n\nSpecifying a resolve name is optional. If unspecified, the default resolve name is calculated by taking the path from the source root to the directory containing the lockfile and replacing '/' with '.' in that path.\n\nExample: An npm lockfile located at `src/js/package/package-lock.json' will result in a resolve named `js.package`, assuming src/ is a source root.\n\nRun `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_NODEJS_SEARCH_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Node.js distributions.\n\nThis option is only used if a templated url download specified via [nodejs].known_versions does not contain a version matching the configured [nodejs].version range.\n\nYou can specify absolute paths to binaries and/or to directories containing binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Node.js versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binaries with the version in `BUILD_ROOT/.tool-versions`\n* ``, all NodeJS versions under $NVM_DIR/versions/node\n* ``, the nvm installation with the version in BUILD_ROOT/.nvmrc\nNote that the version in the .nvmrc file has to be on the form \"vX.Y.Z\".", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-search-path"], + "target_field_name": "nodejs_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_NODEJS_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + } + } + ] + } + }, + "PANTS_NODEJS_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-template=", + "config_key": "url_template", + "default": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-url-template="], + "env_var": "PANTS_NODEJS_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar" + } + ] + } + }, + "PANTS_NODEJS_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-version=", + "config_key": "version", + "default": "v16.15.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-version="], + "env_var": "PANTS_NODEJS_VERSION", + "fromfile": false, + "help": "Use this version of nodejs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v16.15.0" + } + ] + } + }, + "PANTS_OPENAPI_TAILOR_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-tailor-targets", + "config_key": "tailor_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]openapi-tailor-targets"], + "env_var": "PANTS_OPENAPI_TAILOR_TARGETS", + "fromfile": false, + "help": "If true, add `openapi_documents` and `openapi_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-tailor-targets", + "--no-openapi-tailor-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-targets", "--no-tailor-targets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PANTSD": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsd"], + "env_var": "PANTS_PANTSD", + "fromfile": false, + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PANTSD_INVALIDATION_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "fromfile": false, + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PANTSD_MAX_MEMORY_USAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "4GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-max-memory-usage="], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + "PANTS_PANTSD_PAILGUN_PORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-pailgun-port="], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "fromfile": false, + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-pailgun-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--pantsd-pailgun-port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-timeout-when-multiple-invocations="], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "fromfile": false, + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-timeout-when-multiple-invocations"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--pantsd-timeout-when-multiple-invocations"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + "PANTS_PANTSRC": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsrc"], + "env_var": "PANTS_PANTSRC", + "fromfile": false, + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PANTSRC_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsrc-files=\"[, , ...]\""], + "env_var": "PANTS_PANTSRC_FILES", + "fromfile": false, + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsrc-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"] + } + ] + } + }, + "PANTS_PATHS_FROM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-from="], + "env_var": "PANTS_PATHS_FROM", + "fromfile": false, + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-from"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--from"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PATHS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-output-file="], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PATHS_TO": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-to="], + "env_var": "PANTS_PATHS_TO", + "fromfile": false, + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-to"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PEEK_EXCLUDE_DEFAULTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-exclude-defaults"], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "fromfile": false, + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--exclude-defaults", "--no-exclude-defaults"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEEK_INCLUDE_DEP_RULES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-include-dep-rules", + "config_key": "include_dep_rules", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-include-dep-rules"], + "env_var": "PANTS_PEEK_INCLUDE_DEP_RULES", + "fromfile": false, + "help": "Whether to include `_dependencies_rules`, `_dependents_rules` and `_applicable_dep_rules` that apply to the target and its dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-include-dep-rules", + "--no-peek-include-dep-rules" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--include-dep-rules", + "--no-include-dep-rules" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEEK_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--peek-output-file="], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--peek-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-binary-defaults-emit-warnings"], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "fromfile": false, + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--emit-warnings", "--no-emit-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-binary-defaults-resolve-local-platforms"], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "fromfile": false, + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEX_CLI_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.137|macos_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|macos_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.137|macos_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|macos_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329" + ] + } + ] + } + }, + "PANTS_PEX_CLI_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + "PANTS_PEX_CLI_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-url-template="], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.135,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_PEX_CLI_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.137", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-version="], + "env_var": "PANTS_PEX_CLI_VERSION", + "fromfile": false, + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.135,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.137" + } + ] + } + }, + "PANTS_PEX_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-executable-search-paths"], + "target_field_name": "pex_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_PEX_VENV_USE_SYMLINKS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-venv-use-symlinks"], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "fromfile": false, + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEX_VERBOSITY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-verbosity="], + "env_var": "PANTS_PEX_VERBOSITY", + "fromfile": false, + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-verbosity"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--verbosity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + "PANTS_PHYSICAL_WORKDIR_BASE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-physical-workdir-base="], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "fromfile": false, + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-physical-workdir-base"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-physical-workdir-base"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--plugins=\"['', '', ...]\""], + "env_var": "PANTS_PLUGINS", + "fromfile": false, + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PLUGINS_FORCE_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]plugins-force-resolve"], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "fromfile": false, + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PREAMBLE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]preamble-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]preamble-skip"], + "env_var": "PANTS_PREAMBLE_SKIP", + "fromfile": false, + "help": "If true, don't use preamble when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-skip", "--no-preamble-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "template_by_globs", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS", + "fromfile": true, + "help": "Which preamble template to use based on the path globs (relative to the build root).\n\nExample:\n\n {\n '*.rs': '// Copyright (c) $year\\n// Line 2\\n'\n '*.py:!__init__.py': '# Copyright (c) $year\\n# Line 2\\n',\n }\n\nIt might be helpful to load this config from a JSON or YAML file. To do that, set `[preamble].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-template-by-globs"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--template-by-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PRINT_STACKTRACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]print-stacktrace"], + "env_var": "PANTS_PRINT_STACKTRACE", + "fromfile": false, + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--print-stacktrace", "--no-print-stacktrace"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--print-stacktrace", "--no-print-stacktrace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PROCESS_CLEANUP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]process-cleanup"], + "env_var": "PANTS_PROCESS_CLEANUP", + "fromfile": false, + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--process-cleanup", "--no-process-cleanup"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--process-cleanup", "--no-process-cleanup"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-cache-namespace="], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "fromfile": false, + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-cache-namespace"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--process-execution-cache-namespace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-graceful-shutdown-timeout="], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "fromfile": false, + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-graceful-shutdown-timeout"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]process-execution-local-enable-nailgun"], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "fromfile": false, + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-local-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-local-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-local-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-remote-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-per-child-memory-usage="], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-per-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-per-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-total-child-memory-usage="], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-total-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-total-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-lockfile="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-version="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + "PANTS_PROTOC_DEPENDENCY_INFERENCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-dependency-inference"], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROTOC_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + "PANTS_PROTOC_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-tailor"], + "env_var": "PANTS_PROTOC_TAILOR", + "fromfile": false, + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-tailor", "--no-protoc-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROTOC_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + "PANTS_PROTOC_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-url-template="], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + "PANTS_PROTOC_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_PROTOC_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-version="], + "env_var": "PANTS_PROTOC_VERSION", + "fromfile": false, + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + "PANTS_PUBLISH_OUTPUT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--publish-output="], + "env_var": "PANTS_PUBLISH_OUTPUT", + "fromfile": false, + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--publish-output"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-args=\"[, , ...]\""], + "env_var": "PANTS_PYDOCSTYLE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pydocstyle, e.g. `--pydocstyle-args='--select=D101,D102'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYDOCSTYLE_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-config="], + "env_var": "PANTS_PYDOCSTYLE_CONFIG", + "fromfile": false, + "help": "Path to a Pydocstyle config file (http://www.pydocstyle.org/en/stable/usage.html#configuration-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-config-discovery"], + "env_var": "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`setup.cfg`, `tox.ini`, `.pydocstyle`, `.pydocstyle.ini`, `.pydocstylerc`, `.pydocstylerc.ini`, and `pyproject.toml`) searching for the configuration file in this particular order.\n\nPlease note that even though `pydocstyle` keeps looking for a configuration file up the directory tree until one is found, Pants will only search for the config files in the repository root (from where you would normally run the `` command).\n\nUse `[pydocstyle].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config-discovery", + "--no-pydocstyle-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-console-script=", + "config_key": "console_script", + "default": "pydocstyle", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-console-script="], + "env_var": "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle" + } + ] + } + }, + "PANTS_PYDOCSTYLE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-entry-point="], + "env_var": "PANTS_PYDOCSTYLE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-install-from-resolve="], + "env_var": "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pydocstyle` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_PYDOCSTYLE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYDOCSTYLE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYDOCSTYLE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-skip"], + "env_var": "PANTS_PYDOCSTYLE_SKIP", + "fromfile": false, + "help": "If true, don't use Pydocstyle when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-skip", "--no-pydocstyle-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYLINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-args=\"[, , ...]\""], + "env_var": "PANTS_PYLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYLINT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-config="], + "env_var": "PANTS_PYLINT_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYLINT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-config-discovery"], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYLINT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-console-script="], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + "PANTS_PYLINT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-entry-point="], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYLINT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-install-from-resolve="], + "env_var": "PANTS_PYLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pylint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYLINT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-skip"], + "env_var": "PANTS_PYLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Pylint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-skip", "--no-pylint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYLINT_SOURCE_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add `'build-support/pylint'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.18/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside pylint itself, as described in https://www.pantsbuild.org/v2.18/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYOXIDIZER_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-args=\"[, , ...]\""], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYOXIDIZER_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-console-script="], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + "PANTS_PYOXIDIZER_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-entry-point="], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-install-from-resolve="], + "env_var": "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyoxidizer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.8,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.8,<4"] + } + ] + } + }, + "PANTS_PYOXIDIZER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYOXIDIZER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTEST_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTEST_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-config="], + "env_var": "PANTS_PYTEST_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-config-discovery"], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTEST_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-console-script="], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + "PANTS_PYTEST_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-entry-point="], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_EXECUTION_SLOT_VAR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-execution-slot-var="], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "fromfile": false, + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-execution-slot-var"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--execution-slot-var"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-install-from-resolve="], + "env_var": "PANTS_PYTEST_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytest` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_JUNIT_FAMILY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-junit-family="], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "fromfile": false, + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-junit-family"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--junit-family"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + "PANTS_PYTEST_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYTEST_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-skip"], + "env_var": "PANTS_PYTEST_SKIP", + "fromfile": false, + "help": "If true, don't use Pytest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-skip", "--no-pytest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTEST_XDIST_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-xdist-enabled"], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "fromfile": false, + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--xdist-enabled", "--no-xdist-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHONPATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pythonpath=\"['', '', ...]\""], + "env_var": "PANTS_PYTHONPATH", + "fromfile": false, + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pythonpath"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pythonpath"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "internal_python_build_standalone_info", + "default": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO", + "fromfile": false, + "help": "A map from platform to the information needed to download Python Build Standalone.\n\nPython Build Standalone is used to run Python-implemented Pants tools/scripts in docker environments (so that Python doesn't need to be installed).\n\nThe version of Python provided should match the default value's version, which is the highest Python Major/Minor version compatible with the Pants package's interpreter constraints. Additionally, the downloaded file should be extractable by `tar` using `-xvf` (most likely a `.tar.gz` file).\n\nThe schema is `: (, , )` for each possible platform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-internal-python-build-standalone-info" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--internal-python-build-standalone-info"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + } + } + ] + } + }, + "PANTS_PYTHON_BOOTSTRAP_NAMES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": ["python", "python3"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "fromfile": false, + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-names"], + "target_field_name": "python_bootstrap_names", + "typ": "list", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["python", "python3"] + } + ] + } + }, + "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": ["", ""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Python interpreters.\n\nWhich interpreters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in `BUILD_ROOT/.tool-versions`\n* ``, all Python versions under `$(pyenv root)/versions`\n* ``, the Pyenv interpreter with the version in `BUILD_ROOT/.python-version`\n* ``, paths in the `PEX_PYTHON_PATH` variable in `/etc/pexrc` or `~/.pexrc`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-search-path"], + "target_field_name": "python_bootstrap_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["", ""] + } + ] + } + }, + "PANTS_PYTHON_DEFAULT_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-default-resolve="], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-default-run-goal-use-sandbox"], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "fromfile": false, + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR": { + "choices": ["raw_dependency_inference", "dependency_inference"], + "comma_separated_choices": "raw_dependency_inference, dependency_inference", + "comma_separated_display_args": "--python-dump-source-analysis-analysis-flavor=", + "config_key": "analysis_flavor", + "default": "dependency_inference", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-dump-source-analysis-analysis-flavor=" + ], + "env_var": "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR", + "fromfile": false, + "help": "The type of information that should be returned.\n\n* `dependency_inference`: The results of dependency inference, for every detected import in every file.\n\n* `raw_dependency_inference`: The raw intermediate results of the dependency inference process,\nat every stage they're available. Potentially useful for debugging the dependency inference process.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-dump-source-analysis-analysis-flavor"], + "target_field_name": null, + "typ": "AnalysisFlavor", + "unscoped_cmd_line_args": ["--analysis-flavor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dependency_inference" + } + ] + } + }, + "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-lockfile-targets", + "config_key": "enable_lockfile_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-lockfile-targets"], + "env_var": "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS", + "fromfile": false, + "help": "Create targets for all Python lockfiles defined in `[python].resolves`.\n\nThe lockfile targets will then be used as dependencies to the `python_requirement` targets that use them, invalidating source targets per resolve when the lockfile changes.\n\nIf another targets address is in conflict with the created lockfile target, it will shadow the lockfile target and it will not be available as a dependency for any `python_requirement` targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-lockfile-targets", + "--no-python-enable-lockfile-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-lockfile-targets", + "--no-enable-lockfile-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_ENABLE_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-resolves"], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "fromfile": false, + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enable-resolves", "--no-enable-resolves"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION": { + "choices": ["none", "by_source_root"], + "comma_separated_choices": "none, by_source_root", + "comma_separated_display_args": "--python-infer-ambiguity-resolution=", + "config_key": "ambiguity_resolution", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ambiguity-resolution=" + ], + "env_var": "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION", + "fromfile": false, + "help": "When multiple sources provide the same symbol, how to choose the provider to use.\n\n`none`: Do not attempt to resolve this ambiguity. No dependency will be inferred, and warnings will be logged.\n\n`by_source_root`: Choose the provider with the closest common ancestor to the consumer's source root. If the provider is under the same source root then this will be the source root itself. This is useful when multiple projects in different source roots provide the same symbols (because of repeated first-party module paths or overlapping requirements.txt) and you want to resolve the ambiguity locally in each project.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ambiguity-resolution"], + "target_field_name": null, + "typ": "AmbiguityResolution", + "unscoped_cmd_line_args": ["--ambiguity-resolution"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + "PANTS_PYTHON_INFER_ASSETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-assets"], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "fromfile": false, + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--assets", "--no-assets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-assets-min-slashes="], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "fromfile": false, + "help": "If `--assets` is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-assets-min-slashes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--assets-min-slashes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + "PANTS_PYTHON_INFER_CONFTESTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-conftests"], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "fromfile": false, + "help": "Infer a test target's dependencies on any `conftest.py` files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--conftests", "--no-conftests"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INFER_ENTRY_POINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-entry-points"], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "fromfile": false, + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_aws_lambda_function`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--entry-points", "--no-entry-points"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-ignored-unowned-imports=\"['', '', ...]\"", + "config_key": "ignored_unowned_imports", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ignored-unowned-imports=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS", + "fromfile": false, + "help": "Unowned imports that should be ignored.\n\nIf there are any unowned import statements and adding the `# pants: no-infer-dep` to the lines of the import is impractical, you can instead provide a list of imports that Pants should ignore. You can declare a specific import or a path to a package if you would like any of the package imports to be ignored.\n\nFor example, you could ignore all the following imports of the code\n\n import src.generated.app\n from src.generated.app import load\n from src.generated.app import start\n from src.generated.client import connect\n\nby setting `ignored-unowned-imports=[\"src.generated.app\", \"src.generated.client.connect\"]`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ignored-unowned-imports"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignored-unowned-imports"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-imports"], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INFER_INIT_FILES": { + "choices": ["always", "content_only", "never"], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-init-files="], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "fromfile": false, + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-init-files"], + "target_field_name": null, + "typ": "InitFilesInference", + "unscoped_cmd_line_args": ["--init-files"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + "PANTS_PYTHON_INFER_STRING_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-string-imports"], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings or pytest plugins listed in the `pytest_plugins` variable in a test module or a conftest file.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--string-imports", "--no-string-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-string-imports-min-dots="], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "fromfile": false, + "help": "If `--string-imports` is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-string-imports-min-dots"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--string-imports-min-dots"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR": { + "choices": ["error", "warning", "ignore"], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "fromfile": false, + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-unowned-dependency-behavior"], + "target_field_name": null, + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": ["--unowned-dependency-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + }, + "PANTS_PYTHON_INFER_USE_RUST_PARSER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-use-rust-parser", + "config_key": "use_rust_parser", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-use-rust-parser"], + "env_var": "PANTS_PYTHON_INFER_USE_RUST_PARSER", + "fromfile": false, + "help": "Use the new Rust-based, multithreaded, in-process dependency parser.\n\nPants 2.17 introduced a new paradigm to dependency parsing for Python by leveraging a Rust-based parser that's called in the same process as Pants itself, instead of farming out to one-python-process-per-file.\n\nAs a result of the switch, cold-cache performance improved by a factor of about 12x, while hot-cache had no difference. Additionally, Pants can now infer dependencies from Python scripts with syntax errors.\n\nAfter leaving this defaulted to disabled for a release cycle, Pants 2.18 started defaulting to enabling this.\n\nIf you think the new behaviour is causing problems, it is recommended that you run `scie-pants-linux-x86_64 peek :: > before.json` and then `scie-pants-linux-x86_64 --python-infer-use-rust-parser=False peek :: > after.json` and compare the two results.\n\nIf you think there is a bug and need to disable it, please file an issue: https://github.com/pantsbuild/pants/issues/new/choose.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-use-rust-parser", + "--no-python-infer-use-rust-parser" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--use-rust-parser", "--no-use-rust-parser"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. `'CPython>=2.7,<3'` (A CPython interpreter with version >=2.7 AND version <3) or `'PyPy'` (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "fromfile": false, + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. `'2.7'` or `'3.10'`. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-versions-universe"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-versions-universe"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ] + } + ] + } + }, + "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR": { + "choices": ["error", "ignore", "warn"], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "fromfile": false, + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-invalid-lockfile-behavior"], + "target_field_name": null, + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": ["--invalid-lockfile-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-macos-big-sur-compatibility"], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "fromfile": false, + "help": "If set, and if running on macOS Big Sur, use `macosx_10_16` as the platform when building wheels. Otherwise, the default of `macosx_11_0` will be used. This may be required for `pip` to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "fromfile": false, + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `CPPFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-cpp-flags"], + "target_field_name": "python_native_code_cpp_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cpp-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "fromfile": false, + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `LDFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-ld-flags"], + "target_field_name": "python_native_code_ld_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--ld-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_PYTHON_PIP_VERSION": { + "choices": [ + "20.3.4-patched", + "22.2.2", + "22.3", + "22.3.1", + "23.0", + "23.0.1", + "23.1", + "23.1.1", + "23.1.2", + "latest" + ], + "comma_separated_choices": "20.3.4-patched, 22.2.2, 22.3, 22.3.1, 23.0, 23.0.1, 23.1, 23.1.1, 23.1.2, latest", + "comma_separated_display_args": "--python-pip-version=", + "config_key": "pip_version", + "default": "23.1.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-pip-version="], + "env_var": "PANTS_PYTHON_PIP_VERSION", + "fromfile": false, + "help": "Use this version of Pip for resolving requirements and generating lockfiles.\n\nN.B.: The `latest` value selects the latest of the listed choices which is not necessarily the latest Pip version released on PyPI.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-pip-version"], + "target_field_name": null, + "typ": "PipVersion", + "unscoped_cmd_line_args": ["--pip-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "23.1.2" + } + ] + } + }, + "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-mypy-plugin"], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "fromfile": false, + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate `.pyi` type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mypy-plugin", "--no-mypy-plugin"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_REPL_HISTORY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-repl-history", + "config_key": "repl_history", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-repl-history"], + "env_var": "PANTS_PYTHON_REPL_HISTORY", + "fromfile": false, + "help": "Whether to use the standard Python command history file when running a repl.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repl-history", + "--no-python-repl-history" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--repl-history", "--no-repl-history"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_REPOS_FIND_LINKS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-repos-find-links=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "fromfile": false, + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-find-links"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--find-links"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_REPOS_INDEXES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": ["https://pypi.org/simple/"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-repos-indexes=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "fromfile": false, + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-indexes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--indexes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["https://pypi.org/simple/"] + } + ] + } + }, + "PANTS_PYTHON_REPOS_PATH_MAPPINGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "fromfile": false, + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what `WHEELS_DIR` points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.18/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.18/docs/options#pantsrc-file.\n\nNote: Only takes effect if using Pex lockfiles, i.e. using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-path-mappings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--path-mappings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_REPOS_REPOS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-repos-repos=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "fromfile": false, + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-repos-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-requirement-constraints="], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "fromfile": false, + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-requirement-constraints"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--requirement-constraints"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTHON_RESOLVER_MANYLINUX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-resolver-manylinux="], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "fromfile": false, + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g. `'manylinux2010'`, or else the string `'no'` to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolver-manylinux"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--resolver-manylinux"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + "PANTS_PYTHON_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "fromfile": false, + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.18/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-resolves-generate-lockfiles"], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "fromfile": false, + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "fromfile": false, + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-constraints-file"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-constraints-file"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python].interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use `['==3.9.*']` via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to `['==3.7.*']`, then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-interpreter-constraints"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_NO_BINARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve, you can also use the value `:all:` to disable all binary packages: `{'data-science': [':all:']}`.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-no-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-no-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve you can use the value `:all:` to disable all source packages: `{'data-science': [':all:']}`.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-only-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-only-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]python-resolve-all-constraints"], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "fromfile": false, + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-run-against-entire-lockfile"], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "fromfile": false, + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile\n changes, rather than just those that depend on the changed requirement.\n2) Requirements unneeded by a test/run/repl will be present on the sys.path, which\n might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-ignore-empty-init-files"], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "fromfile": false, + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-pex-binary-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-py-typed-targets", + "config_key": "tailor_py_typed_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-py-typed-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS", + "fromfile": false, + "help": "If true, add `resource` targets for marker files named `py.typed` with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-py-typed-targets", + "--no-python-tailor-py-typed-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-py-typed-targets", + "--no-tailor-py-typed-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-requirements-targets"], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "fromfile": false, + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-source-targets"], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-thrift-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_THRIFT_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-thrift-options=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "fromfile": false, + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-thrift-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTYPE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-args=\"[, , ...]\""], + "env_var": "PANTS_PYTYPE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytype, e.g. `--pytype-args='--version'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTYPE_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-config="], + "env_var": "PANTS_PYTYPE_CONFIG", + "fromfile": false, + "help": "Path to an toml config file understood by Pytype (https://github.com/google/pytype#config-file).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTYPE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-console-script=", + "config_key": "console_script", + "default": "pytype", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-console-script="], + "env_var": "PANTS_PYTYPE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytype" + } + ] + } + }, + "PANTS_PYTYPE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-entry-point="], + "env_var": "PANTS_PYTYPE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTYPE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-install-from-resolve="], + "env_var": "PANTS_PYTYPE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytype` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTYPE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTYPE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + }, + "PANTS_PYTYPE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYTYPE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTYPE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytype-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytype-skip"], + "env_var": "PANTS_PYTYPE_SKIP", + "fromfile": false, + "help": "If true, don't use Pytype when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-skip", "--no-pytype-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYUPGRADE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-args=\"[, , ...]\""], + "env_var": "PANTS_PYUPGRADE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYUPGRADE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-console-script="], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + "PANTS_PYUPGRADE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-entry-point="], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-install-from-resolve="], + "env_var": "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyupgrade` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_PYUPGRADE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYUPGRADE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYUPGRADE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pyupgrade-skip"], + "env_var": "PANTS_PYUPGRADE_SKIP", + "fromfile": false, + "help": "If true, don't use pyupgrade when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-skip", "--no-pyupgrade-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PY_CONSTRAINTS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--py-constraints-output-file="], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--py-constraints-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PY_CONSTRAINTS_SUMMARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]py-constraints-summary"], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "fromfile": false, + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependents`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependents` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependents).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--summary", "--no-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REGEX_LINT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "fromfile": true, + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-config"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_REGEX_LINT_DETAIL_LEVEL": { + "choices": ["none", "summary", "nonmatching", "names", "all"], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--regex-lint-detail-level="], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "fromfile": false, + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-detail-level"], + "target_field_name": null, + "typ": "DetailLevel", + "unscoped_cmd_line_args": ["--detail-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + }, + "PANTS_REGEX_LINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]regex-lint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]regex-lint-skip"], + "env_var": "PANTS_REGEX_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use regex-lint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-skip", "--no-regex-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_CACHE_READ": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-read"], + "env_var": "PANTS_REMOTE_CACHE_READ", + "fromfile": false, + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-read", "--no-remote-cache-read"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--remote-cache-read-timeout-millis="], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": "Use the `remote_cache_rpc_timeout_millis` option instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": ["--remote-cache-read-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-read-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + "PANTS_REMOTE_CACHE_RPC_CONCURRENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-concurrency="], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-timeout-millis=", + "config_key": "remote_cache_rpc_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache RPCs in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + "PANTS_REMOTE_CACHE_WARNINGS": { + "choices": ["ignore", "first_only", "backoff"], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-warnings="], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "fromfile": false, + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-warnings"], + "target_field_name": null, + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": ["--remote-cache-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + "PANTS_REMOTE_CACHE_WRITE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-write"], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "fromfile": false, + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_CA_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-ca-certs-path="], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_CLIENT_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-certs-path=", + "config_key": "remote_client_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-client-certs-path="], + "env_var": "PANTS_REMOTE_CLIENT_CERTS_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_key_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-client-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-client-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_CLIENT_KEY_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-key-path=", + "config_key": "remote_client_key_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-client-key-path="], + "env_var": "PANTS_REMOTE_CLIENT_KEY_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_certs_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-client-key-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-client-key-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_EXECUTION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-execution"], + "env_var": "PANTS_REMOTE_EXECUTION", + "fromfile": false, + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution", "--no-remote-execution"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--remote-execution", "--no-remote-execution"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_ADDRESS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-address="], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "fromfile": false, + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-execution-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-append-only-caches-base-path=", + "config_key": "remote_execution_append_only_caches_base_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-append-only-caches-base-path="], + "env_var": "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH", + "fromfile": false, + "help": "Sets the base path to use when setting up an append-only cache for a process running remotely. If this option is not set, then append-only caches will not be used with remote execution. The option should be set to the absolute path of a writable directory in the remote execution environment where Pants can create append-only caches for use with remotely executing processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "fromfile": false, + "help": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.\n\nIf you are using the `remote_environment` target mechanism, set this value as a field on the target instead. This option will be ignored.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-extra-platform-properties"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_HEADERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "fromfile": false, + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-execution-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.18.0rc5" + } + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-overall-deadline-secs="], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "fromfile": false, + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-overall-deadline-secs"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-execution-overall-deadline-secs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-rpc-concurrency="], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_REMOTE_INSTANCE_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-instance-name="], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "fromfile": false, + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use a Pants plugin which provides remote authentication to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-instance-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-instance-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-oauth-bearer-token-path="], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "fromfile": false, + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_STORE_ADDRESS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-address="], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "fromfile": false, + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-store-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-batch-api-size-limit="], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "fromfile": false, + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + "PANTS_REMOTE_STORE_CHUNK_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-chunk-bytes="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "fromfile": false, + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--remote-store-chunk-upload-timeout-seconds="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "fromfile": false, + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": "Unused: use the `remote_store_rpc_timeout_millis` option instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": ["--remote-store-chunk-upload-timeout-seconds"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-chunk-upload-timeout-seconds"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + "PANTS_REMOTE_STORE_HEADERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "fromfile": false, + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-store-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.18.0rc5" + } + } + ] + } + }, + "PANTS_REMOTE_STORE_RPC_CONCURRENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-concurrency="], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_REMOTE_STORE_RPC_RETRIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-retries="], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "fromfile": false, + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-retries"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-retries"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-timeout-millis=", + "config_key": "remote_store_rpc_timeout_millis", + "default": 30000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote store RPCs (not including streaming requests) in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 30000 + } + ] + } + }, + "PANTS_REPL_RESTARTABLE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]repl-restartable"], + "env_var": "PANTS_REPL_RESTARTABLE", + "fromfile": false, + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-restartable", "--no-repl-restartable"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--restartable", "--no-restartable"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REPL_SHELL": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--repl-shell="], + "env_var": "PANTS_REPL_SHELL", + "fromfile": false, + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-shell"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shell"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ROOTS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-output-file="], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ROOTS_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-sep="], + "env_var": "PANTS_ROOTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_RUFF_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-args=\"[, , ...]\""], + "env_var": "PANTS_RUFF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Ruff, e.g. `--ruff-args='--exclude=foo --ignore=E501'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_RUFF_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-config="], + "env_var": "PANTS_RUFF_CONFIG", + "fromfile": false, + "help": "Path to the `pyproject.toml` or `ruff.toml` file to use for configuration (https://github.com/charliermarsh/ruff#configuration).\n\nSetting this option will disable `[ruff].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUFF_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-config-discovery"], + "env_var": "PANTS_RUFF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`pyproject.toml`, and `ruff.toml`).\n\nUse `[ruff].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config-discovery", + "--no-ruff-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_RUFF_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-console-script=", + "config_key": "console_script", + "default": "ruff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-console-script="], + "env_var": "PANTS_RUFF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff" + } + ] + } + }, + "PANTS_RUFF_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-entry-point="], + "env_var": "PANTS_RUFF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUFF_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-install-from-resolve="], + "env_var": "PANTS_RUFF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ruff` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUFF_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_RUFF_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-requirements=\"['', '', ...]\""], + "env_var": "PANTS_RUFF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_RUFF_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-skip"], + "env_var": "PANTS_RUFF_SKIP", + "fromfile": false, + "help": "If true, don't use Ruff when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-skip", "--no-ruff-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_RULE_THREADS_CORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-core="], + "env_var": "PANTS_RULE_THREADS_CORE", + "fromfile": false, + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-core"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-core"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + "PANTS_RULE_THREADS_MAX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-max="], + "env_var": "PANTS_RULE_THREADS_MAX", + "fromfile": false, + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUN_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_RUN_DEBUG_ADAPTER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]run-debug-adapter"], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--run-debug-adapter", "--no-run-debug-adapter"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALAC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalac-args=\"[, , ...]\""], + "env_var": "PANTS_SCALAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAC_PLUGINS_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_SCALAFMT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalameta:scalafmt-cli_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalameta:scalafmt-cli_2.13:{version}"] + } + ] + } + }, + "PANTS_SCALAFMT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAFMT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-lockfile="], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_SCALAFMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalafmt-skip"], + "env_var": "PANTS_SCALAFMT_SKIP", + "fromfile": false, + "help": "If true, don't use scalafmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-skip", "--no-scalafmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALAFMT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-version="], + "env_var": "PANTS_SCALAFMT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + "PANTS_SCALAPB_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.thesamet.scalapb:scalapbc_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.thesamet.scalapb:scalapbc_2.13:{version}"] + } + ] + } + }, + "PANTS_SCALAPB_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAPB_JVM_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-plugins=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "fromfile": false, + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set `--scalapb-runtime-dependencies` appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAPB_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-lockfile="], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_SCALAPB_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-version="], + "env_var": "PANTS_SCALAPB_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + "PANTS_SCALATEST_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALATEST_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalatest:scalatest_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalatest:scalatest_2.13:{version}"] + } + ] + } + }, + "PANTS_SCALATEST_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALATEST_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-lockfile="], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_SCALATEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalatest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalatest-skip"], + "env_var": "PANTS_SCALATEST_SKIP", + "fromfile": false, + "help": "If true, don't use Scalatest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-skip", "--no-scalatest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALATEST_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-version="], + "env_var": "PANTS_SCALATEST_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + "PANTS_SCALA_INFER_CONSUMED_TYPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-consumed-types"], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-force-add-siblings-as-dependencies"], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "fromfile": false, + "help": "If true, add a dependency on all `scala_source` targets generated by the same `scala_sources` target generator. If false, the dependencies will only be added if `[scala-infer].imports` is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALA_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-imports"], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_INFER_PACKAGE_OBJECTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-package-objects"], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "fromfile": false, + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--package-objects", "--no-package-objects"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-tailor-source-targets"], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_VERSION_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scala-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_SCC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCC_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + "PANTS_SCC_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + "PANTS_SCC_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-url-template="], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + "PANTS_SCC_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SCC_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-version="], + "env_var": "PANTS_SCC_VERSION", + "fromfile": false, + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + "PANTS_SESSION_END_TASKS_TIMEOUT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--session-end-tasks-timeout=", + "config_key": "session_end_tasks_timeout", + "default": 3.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--session-end-tasks-timeout="], + "env_var": "PANTS_SESSION_END_TASKS_TIMEOUT", + "fromfile": false, + "help": "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 invocation to a configured remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--session-end-tasks-timeout"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--session-end-tasks-timeout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3.0 + } + ] + } + }, + "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SETUPTOOLS_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-requirements=\"['', '', ...]\""], + "env_var": "PANTS_SETUPTOOLS_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-console-script="], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-entry-point="], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools-scm` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME": { + "choices": ["exact", "compatible", "any"], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "fromfile": false, + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "target_field_name": null, + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": ["--first-party-dependency-version-scheme"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + }, + "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]setup-py-generation-generate-setup-default"], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "fromfile": false, + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (`setup.py`, `setup.cfg` and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELLCHECK_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-args=\"[, , ...]\""], + "env_var": "PANTS_SHELLCHECK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SHELLCHECK_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-config-discovery"], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELLCHECK_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ] + } + ] + } + }, + "PANTS_SHELLCHECK_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-skip"], + "env_var": "PANTS_SHELLCHECK_SKIP", + "fromfile": false, + "help": "If true, don't use Shellcheck when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-skip", "--no-shellcheck-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + "PANTS_SHELLCHECK_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-url-template="], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz" + } + ] + } + }, + "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SHELLCHECK_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-version="], + "env_var": "PANTS_SHELLCHECK_VERSION", + "fromfile": false, + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-dependency-inference"], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-setup-executable-search-paths"], + "target_field_name": "shell_setup_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + "PANTS_SHELL_SETUP_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-tailor"], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "fromfile": false, + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELL_TEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-test-skip"], + "env_var": "PANTS_SHELL_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Test with shell scripts when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-test-skip", "--no-shell-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHFMT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-args=\"[, , ...]\""], + "env_var": "PANTS_SHFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SHFMT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-config-discovery"], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHFMT_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ] + } + ] + } + }, + "PANTS_SHFMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-skip"], + "env_var": "PANTS_SHFMT_SKIP", + "fromfile": false, + "help": "If true, don't use shfmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-skip", "--no-shfmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHFMT_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + "PANTS_SHFMT_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-url-template="], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + "PANTS_SHFMT_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SHFMT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-version="], + "env_var": "PANTS_SHFMT_VERSION", + "fromfile": false, + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.6.0" + } + ] + } + }, + "PANTS_SHOW_LOG_TARGET": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]show-log-target"], + "env_var": "PANTS_SHOW_LOG_TARGET", + "fromfile": false, + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with `--log-levels-by-target`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--show-log-target", "--no-show-log-target"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--show-log-target", "--no-show-log-target"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHUNIT2_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SHUNIT2_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ] + } + ] + } + }, + "PANTS_SHUNIT2_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shunit2-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shunit2-skip"], + "env_var": "PANTS_SHUNIT2_SKIP", + "fromfile": false, + "help": "If true, don't use shunit2 when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-skip", "--no-shunit2-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHUNIT2_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHUNIT2_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + "PANTS_SHUNIT2_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-template=", + "config_key": "url_template", + "default": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-url-template="], + "env_var": "PANTS_SHUNIT2_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2" + } + ] + } + }, + "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION": { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shunit2-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-use-unsupported-version=" + ], + "env_var": "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shunit2 is not supported.\n\nSupported shunit2 versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SHUNIT2_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-version=", + "config_key": "version", + "default": "b9102bb763cc603b3115ed30a5648bf950548097", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-version="], + "env_var": "PANTS_SHUNIT2_VERSION", + "fromfile": false, + "help": "Use this version of shunit2.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "b9102bb763cc603b3115ed30a5648bf950548097" + } + ] + } + }, + "PANTS_SOURCE_MARKER_FILENAMES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "fromfile": false, + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-marker-filenames"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--marker-filenames"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SOURCE_ROOT_PATTERNS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "fromfile": false, + "help": "A list of source root suffixes.\n\nA directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc.\n\nPrepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`.\n\nA `*` wildcard will match a single path segment, E.g., `src/*` will match `/src/python` and `/src/rust`.\n\nUse `/` to signify that the buildroot itself is a source root.\n\nSee https://www.pantsbuild.org/v2.18/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-root-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--root-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + "PANTS_SPECTRAL_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-args=\"[, , ...]\""], + "env_var": "PANTS_SPECTRAL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Spectral, e.g. `--spectral-args='--fail-severity=warn'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SPECTRAL_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-install-from-resolve="], + "env_var": "PANTS_SPECTRAL_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SPECTRAL_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]spectral-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]spectral-skip"], + "env_var": "PANTS_SPECTRAL_SKIP", + "fromfile": false, + "help": "If true, don't use Spectral when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-skip", "--no-spectral-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SPECTRAL_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-version=", + "config_key": "version", + "default": "@stoplight/spectral-cli@6.5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-version="], + "env_var": "PANTS_SPECTRAL_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "@stoplight/spectral-cli@6.5.1" + } + ] + } + }, + "PANTS_SPEC_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spec-files=\"['', '', ...]\""], + "env_var": "PANTS_SPEC_FILES", + "fromfile": false, + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spec-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--spec-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_STATS_LOG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-log"], + "env_var": "PANTS_STATS_LOG", + "fromfile": false, + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-log", "--no-stats-log"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--log", "--no-log"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_STATS_MEMORY_SUMMARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-memory-summary"], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "fromfile": false, + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--memory-summary", "--no-memory-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_STATS_RECORD_OPTION_SCOPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": ["*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "fromfile": false, + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-record-option-scopes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--stats-record-option-scopes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["*"] + } + ] + } + }, + "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]streaming-workunits-complete-async"], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "fromfile": false, + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_STREAMING_WORKUNITS_LEVEL": { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-level="], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "fromfile": false, + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["--streaming-workunits-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-report-interval="], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "fromfile": false, + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + "PANTS_SUBPROCESSDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-subprocessdir="], + "env_var": "PANTS_SUBPROCESSDIR", + "fromfile": false, + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-subprocessdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-subprocessdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.18/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subprocess-environment-env-vars"], + "target_field_name": "subprocess_environment_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + }, + "PANTS_SUBPROJECT_ROOTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--subproject-roots=\"['', '', ...]\""], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "fromfile": false, + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subproject-roots"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--subproject-roots"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TAG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\""], + "env_var": "PANTS_TAG", + "fromfile": false, + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.18/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tag"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TAILOR_ALIAS_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "fromfile": false, + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.18/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-alias-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_TAILOR_BUILD_FILE_HEADER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-header="], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "fromfile": false, + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-header"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-header"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TAILOR_BUILD_FILE_INDENT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-indent="], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "fromfile": false, + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-indent"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-indent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + "PANTS_TAILOR_BUILD_FILE_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-name="], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "fromfile": false, + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + "PANTS_TAILOR_CHECK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]tailor-check"], + "env_var": "PANTS_TAILOR_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-check", "--no-tailor-check"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TAILOR_IGNORE_ADDING_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "fromfile": false, + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-adding-targets"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-adding-targets"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TAILOR_IGNORE_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-ignore-paths=\"['', '', ...]\""], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "fromfile": false, + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-paths"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TERRAFORM_FMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-fmt-skip"], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform fmt` when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--terraform-hcl2-parser-install-from-resolve="], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `terraform-hcl2-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--terraform-hcl2-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--terraform-hcl2-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TERRAFORM_VALIDATE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-validate-skip"], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform validate` when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-batch-size="], + "env_var": "PANTS_TEST_BATCH_SIZE", + "fromfile": false, + "help": "The target maximum number of files to be included in each run of batch-enabled test runners.\n\nSome test runners can execute tests from multiple files in a single run. Test implementations will return all tests that _can_ run together as a single group - and then this may be further divided into smaller batches, based on this option. This is done:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch\n 3. to allow for parallelism in test runners which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" max batch size (rather than an exact value).\n\nNOTE: This parameter has no effect on test runners/plugins that do not implement support for batched testing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_TEST_DEBUG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug"], + "env_var": "PANTS_TEST_DEBUG", + "fromfile": false, + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-debug", "--no-test-debug"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug", "--no-debug"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_DEBUG_ADAPTER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug-adapter"], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies `--debug`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_EXTRA_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-extra-env-vars"], + "target_field_name": "test_extra_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TEST_FORCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-force"], + "env_var": "PANTS_TEST_FORCE", + "fromfile": false, + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-force", "--no-test-force"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force", "--no-force"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_OPEN_COVERAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-open-coverage"], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "fromfile": false, + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--open-coverage", "--no-open-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_OUTPUT": { + "choices": ["all", "failed", "none"], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-output="], + "env_var": "PANTS_TEST_OUTPUT", + "fromfile": false, + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-output"], + "target_field_name": null, + "typ": "ShowOutput", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + "PANTS_TEST_REPORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-report"], + "env_var": "PANTS_TEST_REPORT", + "fromfile": false, + "help": "Write test reports to `--report-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report", "--no-test-report"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--report", "--no-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_REPORT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-report-dir="], + "env_var": "PANTS_TEST_REPORT_DIR", + "fromfile": false, + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--report-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + "PANTS_TEST_SHARD": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-shard="], + "env_var": "PANTS_TEST_SHARD", + "fromfile": false, + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with `--shard=0/3`, `--shard=1/3`, `--shard=2/3`.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-shard"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shard"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_TEST_TIMEOUTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-timeouts"], + "env_var": "PANTS_TEST_TIMEOUTS", + "fromfile": false, + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeouts", "--no-test-timeouts"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--timeouts", "--no-timeouts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_TEST_TIMEOUT_DEFAULT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-default="], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "fromfile": false, + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-default"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-default"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TEST_TIMEOUT_MAXIMUM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-maximum="], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "fromfile": false, + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-maximum"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-maximum"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TEST_USE_COVERAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-use-coverage"], + "env_var": "PANTS_TEST_USE_COVERAGE", + "fromfile": false, + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-use-coverage", "--no-test-use-coverage"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--use-coverage", "--no-use-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_THRIFT_DEPENDENCY_INFERENCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-dependency-inference"], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_THRIFT_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-tailor"], + "env_var": "PANTS_THRIFT_TAILOR", + "fromfile": false, + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--thrift-tailor", "--no-thrift-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_TWINE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-args=\"[, , ...]\""], + "env_var": "PANTS_TWINE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TWINE_CA_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-ca-certs-path="], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use any certificates.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.18/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_TWINE_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-config="], + "env_var": "PANTS_TWINE_CONFIG", + "fromfile": false, + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TWINE_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-config-discovery"], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_TWINE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-console-script="], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + "PANTS_TWINE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-entry-point="], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TWINE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-install-from-resolve="], + "env_var": "PANTS_TWINE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `twine` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TWINE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_TWINE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-requirements=\"['', '', ...]\""], + "env_var": "PANTS_TWINE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TWINE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-skip"], + "env_var": "PANTS_TWINE_SKIP", + "fromfile": false, + "help": "If true, don't use Twine when running `scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-skip", "--no-twine-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_UNMATCHED_BUILD_FILE_GLOBS": { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--unmatched-build-file-globs="], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "fromfile": false, + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-build-file-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-build-file-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + "PANTS_UNMATCHED_CLI_GLOBS": { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--unmatched-cli-globs="], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "fromfile": false, + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-cli-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-cli-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_CHECK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-check"], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fix-safe-deprecations"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "fromfile": false, + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_FMT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fmt"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "fromfile": false, + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--fmt", "--no-fmt"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_FORMATTER": { + "choices": ["yapf", "black"], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--update-build-files-formatter="], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "fromfile": false, + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--update-build-files-formatter"], + "target_field_name": null, + "typ": "Formatter", + "unscoped_cmd_line_args": ["--formatter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + "PANTS_VERIFY_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]verify-config"], + "env_var": "PANTS_VERIFY_CONFIG", + "fromfile": false, + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-version="], + "env_var": "PANTS_VERSION", + "fromfile": false, + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.18/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.18.0rc5" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.18.0rc5" + } + ] + } + }, + "PANTS_WATCH_FILESYSTEM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]watch-filesystem"], + "env_var": "PANTS_WATCH_FILESYSTEM", + "fromfile": false, + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--watch-filesystem", "--no-watch-filesystem"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--watch-filesystem", "--no-watch-filesystem"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_WORKDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-workdir="], + "env_var": "PANTS_WORKDIR", + "fromfile": false, + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-workdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-workdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + "PANTS_WORKUNIT_LOGGER_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]workunit-logger-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]workunit-logger-enabled"], + "env_var": "PANTS_WORKUNIT_LOGGER_ENABLED", + "fromfile": false, + "help": "Whether to enable workunit logging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--workunit-logger-enabled", + "--no-workunit-logger-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_WORKUNIT_LOGGER_LOGDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--workunit-logger-logdir=", + "config_key": "logdir", + "default": ".pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--workunit-logger-logdir="], + "env_var": "PANTS_WORKUNIT_LOGGER_LOGDIR", + "fromfile": false, + "help": "Where to write the log to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--workunit-logger-logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".pants.d" + } + ] + } + }, + "PANTS_YAMLLINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-args=\"[, , ...]\""], + "env_var": "PANTS_YAMLLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Yamllint, e.g. `--yamllint-args='-d relaxed'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAMLLINT_CONFIG_FILE_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-config-file-name=", + "config_key": "config_file_name", + "default": ".yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-config-file-name="], + "env_var": "PANTS_YAMLLINT_CONFIG_FILE_NAME", + "fromfile": false, + "help": "Name of a config file understood by yamllint (https://yamllint.readthedocs.io/en/stable/configuration.html). The plugin will search the ancestors of each directory in which YAML files are found for a config file of this name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-config-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--config-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".yamllint" + } + ] + } + }, + "PANTS_YAMLLINT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-console-script=", + "config_key": "console_script", + "default": "yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-console-script="], + "env_var": "PANTS_YAMLLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint" + } + ] + } + }, + "PANTS_YAMLLINT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-entry-point="], + "env_var": "PANTS_YAMLLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAMLLINT_EXCLUDE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-exclude=\"['', '', ...]\"", + "config_key": "exclude", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-exclude=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_EXCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to exclude from linting.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-exclude"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--exclude"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAMLLINT_INCLUDE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-include=\"['', '', ...]\"", + "config_key": "include", + "default": ["**/*.yml", "**/*.yaml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-include=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_INCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to lint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-include"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--include"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["**/*.yml", "**/*.yaml"] + } + ] + } + }, + "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-install-from-resolve="], + "env_var": "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yamllint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_YAMLLINT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-requirements=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAMLLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yamllint-skip"], + "env_var": "PANTS_YAMLLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Yamllint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-skip", "--no-yamllint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_YAPF_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-args=\"[, , ...]\""], + "env_var": "PANTS_YAPF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAPF_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-config="], + "env_var": "PANTS_YAPF_CONFIG", + "fromfile": false, + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAPF_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-config-discovery"], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--config-discovery", "--no-config-discovery"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_YAPF_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-console-script="], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + "PANTS_YAPF_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-entry-point="], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAPF_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-install-from-resolve="], + "env_var": "PANTS_YAPF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yapf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAPF_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + "PANTS_YAPF_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-requirements=\"['', '', ...]\""], + "env_var": "PANTS_YAPF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAPF_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-skip"], + "env_var": "PANTS_YAPF_SKIP", + "fromfile": false, + "help": "If true, don't use yapf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-skip", "--no-yapf-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + }, + "name_to_api_type_info": { + "abc.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "abc", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_subprocess_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "builtins.AddPrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "AddPrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.core.goals.export.export", + "pants.core.target_types.relocate_files", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "builtins.AddressInput": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "AddressInput", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "builtins.Digest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.go.goals.generate", + "pants.backend.helm.util_rules.chart_metadata", + "pants.engine.fs", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.strip_jar.strip_jar" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "Digest", + "provider": "builtins, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.core.util_rules.archive.create_archive", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.package_json.pnpm_workspace_files", + "pants.backend.javascript.package_json.read_package_jsons", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.generate_setup_py", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "builtins.FileDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.util_rules" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "FileDigest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.util_rules.digest_to_file_digest"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "builtins.InferenceMetadata": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "InferenceMetadata", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ] + }, + "builtins.MergeDigests": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "MergeDigests", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.generate_snapshots.generate_snapshots", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.source_files.determine_source_files", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "builtins.NativeDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "NativeDependenciesRequest", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ] + }, + "builtins.RemovePrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "RemovePrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.backend.adhoc.adhoc_tool.GenerateFilesFromAdhocToolRequest": { + "consumed_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.adhoc"], + "documentation": null, + "is_union": false, + "module": "pants.backend.adhoc.adhoc_tool", + "name": "GenerateFilesFromAdhocToolRequest", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.adhoc.run_system_binary.SystemBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.adhoc"], + "documentation": "SystemBinaryFieldSet(address: 'Address', name: 'SystemBinaryNameField', extra_search_paths: 'SystemBinaryExtraSearchPathsField', fingerprint_pattern: 'SystemBinaryFingerprintPattern', fingerprint_argv: 'SystemBinaryFingerprintArgsField', fingerprint_dependencies: 'SystemBinaryFingerprintDependenciesField')", + "is_union": false, + "module": "pants.backend.adhoc.run_system_binary", + "name": "SystemBinaryFieldSet", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PythonAwsLambdaFieldSet(address: 'Address', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', output_path: 'OutputPathField', environment: 'EnvironmentField', handler: 'PythonAwsLambdaHandlerField')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaLayerFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PythonAwsLambdaLayerFieldSet(address: 'Address', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', output_path: 'OutputPathField', environment: 'EnvironmentField', dependencies: 'PythonAwsLambdaLayerDependenciesField', include_sources: 'PythonAwsLambdaIncludeSources')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaLayerFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.base.FixedBUILDFile": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.build_files.fix.deprecations"], + "dependents": ["pants.core"], + "documentation": "FixedBUILDFile(path: 'str', content: 'bytes')", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.base", + "name": "FixedBUILDFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenamedFieldTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": ["pants.engine.target", "pants.engine.unions"], + "dependents": ["pants.core"], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenamedFieldTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Deprecated target type names to new names.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenamedTargetTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenamedTargetTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.subsystem.BUILDDeprecationsFixer": { + "consumed_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.build_files.fix.deprecations"], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.subsystem", + "name": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": ["construct_scope_build_deprecations_fixer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.black.register.BlackRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.black.register", + "name": "BlackRequest", + "provider": "pants.backend.build_files.fmt.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.rules.BuildifierRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.rules", + "name": "BuildifierRequest", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.subsystem.Buildifier": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.build_files.fmt.buildifier"], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.subsystem", + "name": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": ["construct_scope_buildifier"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.yapf.register.YapfRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.yapf.register", + "name": "YapfRequest", + "provider": "pants.backend.build_files.fmt.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegen": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegen", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegenSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegenSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_export_codegen"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GenerateGoFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GenerateGoFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GoCodegenBuildProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ], + "dependencies": ["pants.backend.go.util_rules.build_pkg_target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GoCodegenBuildProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoCodegenBuildRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.ProtobufGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets" + ], + "dependencies": ["pants.backend.go.dependency_inference"], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "ProtobufGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtobufPackageBuildRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": "Request type used to trigger setup of a BuildGoPackageRequest for entire generated Go\nProtobuf package.\n\nThis type is separate so that a build of the full package can be cached no matter which one of\nits component source files was requested. This occurs because a request to build any one of the\nsource files will be converted into this type and then built.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtobufPackageBuildRequest", + "provider": "pants.backend.codegen.protobuf.go.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtocPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": "_SetupGoProtocPlugin(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.InferProtobufJavaRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "InferProtobufJavaRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaGrpcRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaGrpcRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.rules.GenerateJavaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GenerateJavaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.rules.GrpcJavaToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GrpcJavaToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.java.rules, pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ] + }, + "pants.backend.codegen.protobuf.java.rules.ProtobufJavaGrpcPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": "ProtobufJavaGrpcPlugin(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.subsystem.JavaProtobufGrpcSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.codegen.protobuf.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.subsystem", + "name": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": ["construct_scope_protobuf_java_grpc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.BufFormatRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.format_rules", + "name": "BufFormatRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.BufLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.lint_rules", + "name": "BufLintRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufFormatField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufFormatField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufLintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufLintField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.subsystem.BufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.lint.buf"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.subsystem", + "name": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": ["construct_scope_buf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.InferProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "InferProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.ProtobufMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": "A mapping of stripped .proto file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protoc.Protoc": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protoc", + "name": "Protoc", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_protoc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonInterpreterConstraintsField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonInterpreterConstraintsField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonResolveField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.PythonSourceRootField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "PythonSourceRootField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.grpc_python_plugin.GrpcPythonPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.grpc_python_plugin", + "name": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_grpc_python_plugin"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.PythonProtobufMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper", + "name": "PythonProtobufMappingMarker", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.InferPythonProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "InferPythonProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufMypyPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_mypy_protobuf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": ["construct_scope_python_protobuf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.rules.GeneratePythonFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.rules", + "name": "GeneratePythonFromProtobufRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.InferScalaPBRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "InferScalaPBRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.dependency_inference", + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "ScalaPBRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "ScalaPBRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.scala.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.GenerateScalaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "GenerateScalaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializeJvmPluginRequest(plugin: 'PluginArtifactSpec')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializeJvmPluginsRequest(plugins: 'tuple[PluginArtifactSpec, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginsRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.java", + "pants.jvm.resolve.common" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalaPBShimCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalapbcToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalapbcToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.scala.rules, pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ] + }, + "pants.backend.codegen.protobuf.scala.subsystem.ScalaPBSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.codegen.protobuf.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.subsystem", + "name": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": ["construct_scope_scalapb"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.tailor.PutativeProtobufTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": "PutativeProtobufTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.tailor", + "name": "PutativeProtobufTargetsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.AllProtobufTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.protobuf.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.additional_fields.ThriftPythonResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.additional_fields", + "name": "ThriftPythonResolveField", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.PythonThriftMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper", + "name": "PythonThriftMappingMarker", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.GeneratePythonFromThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "GeneratePythonFromThriftRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.InferApacheThriftPythonDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "InferApacheThriftPythonDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.subsystem.ThriftPythonSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.subsystem", + "name": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": ["construct_scope_python_thrift"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.ApacheThriftSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "ApacheThriftSetup(path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.GenerateThriftSourcesRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "GenerateThriftSourcesRequest(thrift_source_field: 'ThriftSourceField', lang_id: 'str', lang_options: 'tuple[str, ...]', lang_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GenerateThriftSourcesRequest", + "provider": "pants.backend.codegen.thrift.apache.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.rules.GeneratedThriftSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.thrift.apache.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "GeneratedThriftSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.subsystem.ApacheThriftSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_apache_thrift", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.subsystem", + "name": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": ["construct_scope_apache_thrift"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.InferThriftDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "InferThriftDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.ThriftMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "A mapping of stripped .thrift file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.subsystem.ThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.subsystem", + "name": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": ["construct_scope_thrift"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.tailor.PutativeThriftTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "PutativeThriftTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.tailor", + "name": "PutativeThriftTargetsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.AllThriftTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThrift": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.thrift.thrift_parser", + "pants.backend.experimental.go", + "pants.engine.fs" + ], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "dependencies": [], + "dependents": ["pants.backend.codegen.thrift.apache.python"], + "documentation": "ParsedThriftRequest(sources_field: 'ThriftSourceField')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThriftRequest", + "provider": "pants.backend.codegen.thrift.thrift_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.docker.goals.package_image.DockerPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "DockerPackageFieldSet(address: 'Address', context_root: 'DockerImageContextRootField', registries: 'DockerImageRegistriesField', repository: 'DockerImageRepositoryField', source: 'DockerImageSourceField', tags: 'DockerImageTagsField', target_stage: 'DockerImageTargetStageField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.backend.docker.goals.package_image", + "name": "DockerPackageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "PublishDockerImageFieldSet(address: 'Address', registries: 'DockerImageRegistriesField', skip_push: 'DockerImageSkipPushField')", + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.docker.goals.run_image.DockerRunFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "DockerRunFieldSet(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.goals.run_image", + "name": "DockerRunFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.tailor.PutativeDockerTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "PutativeDockerTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.goals.tailor", + "name": "PutativeDockerTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.rules.HadolintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.rules", + "name": "HadolintRequest", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.skip_field.SkipHadolintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.skip_field", + "name": "SkipHadolintField", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.subsystem.Hadolint": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.docker.lint.hadolint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.subsystem", + "name": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": ["construct_scope_hadolint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.DockerOptions": { + "consumed_by_rules": [ + "construct_env_aware_scope_docker", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.docker", "pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "DockerOptions", + "provider": "pants.backend.docker", + "returned_by_rules": ["construct_scope_docker"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "EnvironmentAware", + "provider": "pants.backend.docker", + "returned_by_rules": ["construct_env_aware_scope_docker"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.docker.lint.hadolint" + ], + "documentation": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', build_args: 'DockerBuildArgs' = DockerBuildArgs(), copy_source_paths: 'tuple[str, ...]' = (), from_image_build_args: 'DockerBuildArgs' = DockerBuildArgs(), version_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfo", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfoRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerfileInfoRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfoRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParseRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerfileParseRequest(sources_digest: 'Digest', args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParseRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParser": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParser", + "provider": "pants.backend.docker", + "returned_by_rules": ["construct_scope_dockerfile_parser"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.docker"], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "ParserSetup", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.AllDockerImageTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.target_types", + "name": "AllDockerImageTargets", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.target_types.all_docker_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.DockerImageTagsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to provide additional image tags.", + "is_union": true, + "module": "pants.backend.docker.target_types", + "name": "DockerImageTagsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.dependencies.InferDockerDependencies": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dependencies", + "name": "InferDockerDependencies", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinary": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.docker"], + "documentation": "The `docker` binary.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinary", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgs", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildArgsRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContext": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.docker", "pants.backend.experimental.helm"], + "documentation": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', upstream_image_ids: 'tuple[str, ...]', dockerfile: 'str', interpolation_context: 'InterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContext", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContextRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildContextRequest(address: 'Address', build_upstream_images: 'bool' = False)", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContextRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.GenerateDockerContextFiles": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.docker"], + "documentation": "This translates all files from acceptable Source fields for the docker context using the\n`codegen` machinery.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "GenerateDockerContextFiles", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildEnvironment(environment: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironment", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": [], + "dependents": ["pants.backend.docker"], + "documentation": "DockerBuildEnvironmentRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironmentRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.dockerfile.GenerateDockerfileRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dockerfile", + "name": "GenerateDockerfileRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.AllGoModuleImportPathsMappings": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.target_type_rules"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Maps import paths (as strings) to one or more addresses of targets providing those import\npath(s) for a single Go module.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappings": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Import path mappings for all Go modules in the repository.\n\nThis type is requested from plugins which provide implementations for the GoCodegenBuildRequest\nunion and then merged.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappingsHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "An entry point for a specific implementation of mapping Go import paths to owning targets.\n\nAll implementations will be merged together. The core Go dependency inference rules will request\nthe `GoModuleImportPathsMappings` type using implementations of this union.", + "is_union": true, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappingsHook", + "provider": "pants.backend.go.dependency_inference", + "returned_by_rules": [], + "union_members": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "ProtobufGoModuleImportPathsMappingsHook" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.go_sources.load_go_binary", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "LoadedGoBinary(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "LoadedGoBinaryRequest(dir_name: 'str', file_names: 'tuple[str, ...]', output_name: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinaryRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.NaiveBuildGoPackageRequestForStdlibPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "NaiveBuildGoPackageRequestForStdlibPackageRequest(import_path: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ] + }, + "pants.backend.go.goals.check.GoCheckRequest": { + "consumed_by_rules": ["pants.backend.go.goals.check.check_go"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.check", + "name": "GoCheckRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_env_aware_scope_go_generate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoal", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.goals.generate.go_generate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoalSubsystem": { + "consumed_by_rules": ["construct_env_aware_scope_go_generate"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_go_generate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.OverwriteMergeDigests": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "OverwriteMergeDigests(orig_digest: 'Digest', new_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "OverwriteMergeDigests", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RunPackageGeneratorsRequest(address: 'Address', regex: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsRequest", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.generate.go_generate"] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.generate", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RunPackageGeneratorsResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.generate.go_generate"] + }, + "pants.backend.go.goals.package_binary.GoBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBinaryFieldSet(address: 'Address', main: 'GoBinaryMainPackageField', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.go.goals.package_binary", + "name": "GoBinaryFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FindPutativeGoPackageTargetRequest(dir_path: 'str', files: 'tuple[str, ...]', all_go_mod_dirs: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetRequest", + "provider": "pants.backend.go.goals.tailor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.goals.tailor", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FindPutativeGoPackageTargetResult(putative_target: 'PutativeTarget | None')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.PutativeGoTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "PutativeGoTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "PutativeGoTargetsRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.FalliblePrepareGoTestBinaryResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.test", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FalliblePrepareGoTestBinaryResult(binary: 'PrepareGoTestBinaryResult | None', stdout: 'str', stderr: 'str', exit_code: 'int')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.run_go_tests"] + }, + "pants.backend.go.goals.test.GoTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "GoTestFieldSet(address: 'Address', sources: 'GoPackageSourcesField', dependencies: 'Dependencies', timeout: 'GoTestTimeoutField', extra_env_vars: 'GoTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.GoTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.PrepareGoTestBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "PrepareGoTestBinaryRequest(field_set: 'GoTestFieldSet', coverage: 'PrepareGoTestBinaryCoverageConfig | None')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "PrepareGoTestBinaryRequest", + "provider": "pants.backend.go.goals.test", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.run_go_tests"] + }, + "pants.backend.go.lint.gofmt.rules.GofmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.rules", + "name": "GofmtRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.skip_field.SkipGofmtField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.skip_field", + "name": "SkipGofmtField", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.subsystem.GofmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.subsystem", + "name": "GofmtSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_gofmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_env_aware_scope_golang"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.GolangSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_golang", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "GolangSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_golang"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.gotest.GoTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.gotest", + "name": "GoTestSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["construct_scope_go_test"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.FirstPartyGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "dependencies": ["pants.backend.go.dependency_inference"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "FirstPartyGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GenerateTargetsFromGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GenerateTargetsFromGoModRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GoImportPathMappingRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoImportPathMappingRequest(go_mod_address: 'Address')", + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GoImportPathMappingRequest", + "provider": "pants.backend.go.target_type_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.target_type_rules.InferGoPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InferGoThirdPartyPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoThirdPartyPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_types.GoOwningGoModAddressField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_types", + "name": "GoOwningGoModAddressField", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.assembly.AssembleGoAssemblyFilesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Assemble Go assembly files to object files.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssembleGoAssemblyFilesRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleAssembleGoAssemblyFilesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FallibleAssembleGoAssemblyFilesResult(result: 'AssembleGoAssemblyFilesResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleGenerateAssemblySymabisResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FallibleGenerateAssemblySymabisResult(result: 'GenerateAssemblySymabisResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.GenerateAssemblySymabisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Generate a `symabis` file with metadata about the assemnbly files for consumption by Go\ncompiler.\n\nSee https://github.com/bazelbuild/rules_go/issues/1893.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "GenerateAssemblySymabisRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.binary", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBinaryMainPackage(address: 'Address', is_third_party: 'bool', import_path: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBinaryMainPackageRequest(field: 'GoBinaryMainPackageField')", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackageRequest", + "provider": "pants.backend.go.util_rules.binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.InferGoBinaryMainDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "InferGoBinaryMainDependencyRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptions": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.build_opts"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBuildOptions(coverage_config: 'GoCoverageConfig | None' = None, cgo_enabled: 'bool' = True, with_race_detector: 'bool' = False, with_msan: 'bool' = False, with_asan: 'bool' = False, compiler_flags: 'tuple[str, ...]' = (), linker_flags: 'tuple[str, ...]' = (), assembler_flags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptions", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptionsFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBuildOptionsFromTargetRequest(address: 'Address', for_tests: 'bool' = False)", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptionsFromTargetRequest", + "provider": "pants.backend.go.util_rules.build_opts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.go.go_sources.load_go_binary" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go, pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuiltGoPackage": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckForGolangAssemblyRequest(digest: 'Digest', dir_path: 'str', s_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckForGolangAssemblyResult(maybe_golang_assembly: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.go.rules", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuiltGoPackage": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.core", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Fallible version of `BuiltGoPackage` with error details.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoCompileActionIdRequest(build_request: 'BuildGoPackageRequest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.build_pkg"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoCompileActionIdResult(action_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderEmbedConfigRequest(embed_config: 'EmbedConfig | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderedEmbedConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderedEmbedConfig(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.SetupAsmCheckBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "SetupAsmCheckBinary(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageRequestForStdlibRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "BuildGoPackageRequestForStdlibRequest(import_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageRequestForStdlibRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Build a `go_package`, `go_third_party_package`, or Go codegen target and its dependencies as\n`__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageTargetRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.GoCodegenBuildRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.codegen.protobuf.go"], + "documentation": "The plugin hook to build/compile Go code.\n\nNote that you should still use the normal `GenerateSourcesRequest` plugin hook from\n`pants.engine.target` too, which is necessary for integrations like the `export-codegen` goal.\nHowever, that is only helpful to generate the raw `.go` files; you also need to use this\nplugin hook so that Pants knows how to compile those generated `.go` files.\n\nSubclass this and set the class property `generate_from`. Define a rule that goes from your\nsubclass to `BuildGoPackageRequest` - the request must result in valid compilation, which you\nshould test for by using `rule_runner.request(BuiltGoPackage, BuildGoPackageRequest)` in your\ntests. For example, make sure to set up any third-party packages needed by the generated code.\nFinally, register `UnionRule(GoCodegenBuildRequest, MySubclass)`.", + "is_union": true, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "GoCodegenBuildRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": ["GoCodegenBuildProtobufRequest"], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_ResolveStdlibEmbedConfigRequest(package: 'GoStdLibPackage')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_ResolveStdlibEmbedConfigResult(embed_config: 'EmbedConfig | None', stderr: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoCompileRequest(import_path: 'str', pkg_name: 'str', digest: 'Digest', build_opts: 'GoBuildOptions', dir_path: 'str', cgo_files: 'tuple[str, ...]', cgo_flags: 'CGoCompilerFlags', c_files: 'tuple[str, ...]' = (), cxx_files: 'tuple[str, ...]' = (), objc_files: 'tuple[str, ...]' = (), fortran_files: 'tuple[str, ...]' = (), s_files: 'tuple[str, ...]' = (), is_stdlib: 'bool' = False, transitive_prebuilt_object_files: 'tuple[Digest, frozenset[str]] | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoCompileResult(digest: 'Digest', output_go_files: 'tuple[str, ...]', output_obj_files: 'tuple[str, ...]', include_module_sources_with_output: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompilerWrapperScript": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoCompilerWrapperScript(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsFlagRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckCompilerSupportsFlagRequest(cc: 'str', flag: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsFlagRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.setup_compiler_cmd"] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsOptionResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CheckCompilerSupportsOptionResult(supports_flag: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.setup_compiler_cmd"] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "SetupCompilerCmdRequest(compiler: 'tuple[str, ...]', include_dir: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.cgo"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "SetupCompilerCmdResult(args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo_binaries.CGoBinaryPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoBinaryPathRequest(binary_name: 'str', binary_path_test: 'BinaryPathTest | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_binaries", + "name": "CGoBinaryPathRequest", + "provider": "pants.backend.go.util_rules.cgo_binaries", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Request resolution of pkg-config arguments into CFLAGS and LDFLAGS.", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsRequest", + "provider": "pants.backend.go.util_rules.cgo_pkgconfig", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.cgo_pkgconfig" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "CGoPkgConfigFlagsResult(cflags: 'tuple[str, ...]', ldflags: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.cgo.cgo_compile_request"] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Apply code coverage to a package using `go tool cover`.", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ApplyCodeCoverageResult(digest: 'Digest', cover_file_metadatas: 'tuple[FileCodeCoverageMetadata, ...]', go_files: 'tuple[str, ...]', cgo_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ApplyCodeCoverageToFileRequest(digest: 'Digest', go_file: 'str', cover_go_file: 'str', mode: 'GoCoverMode', cover_var: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.coverage" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ApplyCodeCoverageToFileResult(digest: 'Digest', cover_go_file: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GenerateCoverageSetupCodeRequest(packages: 'FrozenOrderedSet[BuiltGoPackageCodeCoverageMetadata]', cover_mode: 'GoCoverMode')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GenerateCoverageSetupCodeResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageProfileToHtmlRequest(raw_coverage_profile: 'bytes', description_of_origin: 'str', sources_digest: 'Digest', sources_dir_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlRequest", + "provider": "pants.backend.go.util_rules.coverage_html", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.coverage_html", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageProfileToHtmlResult(html_output: 'bytes')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_output.GoCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "GoCoverageDataCollection", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageReportRequest(raw_report: 'GoCoverageData')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportRequest", + "provider": "pants.backend.go.util_rules.coverage_output", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.coverage_output", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "RenderGoCoverageReportResult(coverage_report: 'FilesystemCoverageReport', html_report: 'FilesystemCoverageReport | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Metadata for a Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "The source files for a Go package, but fallible if embed preparation failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FirstPartyPkgAnalysisRequest(address: 'Address', build_opts: 'GoBuildOptions', extra_build_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgDigestRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FirstPartyPkgDigestRequest(address: 'Address', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgDigestRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPath": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.first_party_pkg"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FirstPartyPkgImportPathRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPathRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.go_bootstrap.GoBootstrap": { + "consumed_by_rules": ["pants.backend.go.util_rules.goroot.setup_goroot"], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoBootstrap(go_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_bootstrap", + "name": "GoBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.AllGoModTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "AllGoModTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.GoModInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.go_mod" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfo", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.GoModInfoRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoModInfoRequest(source: 'Address | GoModSourcesField')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfoRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "NearestAncestorGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.go_mod.find_owning_go_mod"] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "NearestAncestorGoModResult(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.go_mod.find_owning_go_mod"] + }, + "pants.backend.go.util_rules.go_mod.OwningGoMod": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.go.util_rules.go_mod"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "OwningGoMod(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoMod", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "OwningGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.goroot.GoRoot": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": ["pants.backend.experimental.helm", "pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Path to the Go installation (the `GOROOT`).", + "is_union": false, + "module": "pants.backend.go.util_rules.goroot", + "name": "GoRoot", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.util_rules.goroot.setup_goroot"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.implicit_linker_deps.SdkImplicitLinkerDependenciesHook": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "dependencies": ["pants.backend.go.util_rules.link_defs"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.implicit_linker_deps", + "name": "SdkImplicitLinkerDependenciesHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "ImplicitLinkerDependenciesHook", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackages": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.import_analysis" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A mapping of standard library import paths to an analysis of the package at that import\npath.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoStdLibPackagesRequest(with_race_detector: 'bool', cgo_enabled: 'bool' = True)", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackagesRequest", + "provider": "pants.backend.go.util_rules.import_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.import_config", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Create an `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfigRequest", + "provider": "pants.backend.go.util_rules.import_config", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkGoBinaryRequest": { + "consumed_by_rules": ["pants.backend.go.util_rules.link.link_go_binary"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Link a Go binary from package archives and an import configuration.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkGoBinaryRequest", + "provider": "pants.backend.go.util_rules.link", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.link", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A linked Go binary stored in a `Digest`.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.util_rules.link.link_go_binary"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkerSetup": { + "consumed_by_rules": ["pants.backend.go.util_rules.link.link_go_binary"], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "LinkerSetup(digest: 'Digest', extld_wrapper_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.backend.go.util_rules.link.setup_go_linker"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ImplicitLinkerDependencies(digest: 'Digest', import_paths_to_pkg_a_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.link.link_go_binary"] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependenciesHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ImplicitLinkerDependenciesHook(build_opts: 'GoBuildOptions')", + "is_union": true, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependenciesHook", + "provider": "pants.backend.go.util_rules.link_defs", + "returned_by_rules": [], + "union_members": ["SdkImplicitLinkerDependenciesHook"], + "union_type": null, + "used_in_rules": ["pants.backend.go.util_rules.link.link_go_binary"] + }, + "pants.backend.go.util_rules.pkg_analyzer.PackageAnalyzerSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "PackageAnalyzerSetup(digest: Digest, path: str)", + "is_union": false, + "module": "pants.backend.go.util_rules.pkg_analyzer", + "name": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkProcess": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkProcess(command: 'Iterable[str]', *, description: 'str', env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), working_dir: 'str | None' = None, output_files: 'Iterable[str]' = (), output_directories: 'Iterable[str]' = (), allow_downloads: 'bool' = False, replace_sandbox_root_in_args: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkProcess", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkRunSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkToolIDRequest(tool_name: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDRequest", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.sdk" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GenerateTestMainRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GenerateTestMainRequest(digest: 'Digest', test_paths: 'FrozenOrderedSet[str]', xtest_paths: 'FrozenOrderedSet[str]', import_path: 'str', register_cover: 'bool', address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GenerateTestMainRequest", + "provider": "pants.backend.go.util_rules.tests_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.tests_analysis.GeneratedTestMain": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.tests_analysis", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GeneratedTestMain", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.go.goals.test.prepare_go_test_binary"] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackages": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AllThirdPartyPackagesRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackagesRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyModuleRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AnalyzeThirdPartyModuleRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', import_path: 'str', name: 'str', version: 'str', minimum_go_version: 'str | None', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyModuleRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AnalyzeThirdPartyPackageRequest(pkg_json: 'FrozenDict[str, Any]', module_sources_digest: 'Digest', module_sources_path: 'str', module_import_path: 'str', package_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyPackageRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzedThirdPartyModule": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.FallibleThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptors": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptors", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ModuleDescriptorsRequest(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptorsRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.go.util_rules.third_party_pkg"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Request the info and digest needed to build a third-party package.\n\nThe package's module must be included in the input `go.mod`/`go.sum`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.google_cloud_function.python.rules.PythonGoogleCloudFunctionFieldSet": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.google_cloud_function.python"], + "documentation": "PythonGoogleCloudFunctionFieldSet(address: 'Address', handler: 'PythonGoogleCloudFunctionHandlerField', runtime: 'PythonGoogleCloudFunctionRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', type: 'PythonGoogleCloudFunctionType', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.rules", + "name": "PythonGoogleCloudFunctionFieldSet", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.FirstPartyHelmChartMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": ["pants.backend.helm.util_rules.chart_metadata"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.InferHelmChartDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "InferHelmChartDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.deployment.AnalyseHelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "AnalyseHelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "AnalyseHelmDeploymentRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.helm.dependency_inference.deployment", + "pants.build_graph.address" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "A mapping between `helm_deployment` target addresses and tuples made up of a Docker image\nreference and a `docker_image` target address.\n\nThe tuples of Docker image references and addresses are stored in a YAML index so we can track\nthe locations in which the Docker image refs appear in the deployment files.", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMappingRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FirstPartyHelmDeploymentMappingRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMappingRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.HelmDeploymentReport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.dependency_inference.deployment", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmDeploymentReport(address: 'Address', image_refs: 'FrozenYamlIndex[str]')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.InferHelmDeploymentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "InferHelmDeploymentDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.unittest.InferHelmUnitTestChartDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.unittest", + "name": "InferHelmUnitTestChartDependencyRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.deploy.DeployHelmDeploymentFieldSet": { + "consumed_by_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "DeployHelmDeploymentFieldSet(address: 'Address', chart: 'HelmDeploymentChartField', description: 'DescriptionField', release_name: 'HelmDeploymentReleaseNameField', namespace: 'HelmDeploymentNamespaceField', create_namespace: 'HelmDeploymentCreateNamespaceField', sources: 'HelmDeploymentSourcesField', skip_crds: 'HelmDeploymentSkipCrdsField', no_hooks: 'HelmDeploymentNoHooksField', dependencies: 'HelmDeploymentDependenciesField', values: 'HelmDeploymentValuesField', post_renderers: 'HelmDeploymentPostRenderersField', enable_dns: 'HelmDeploymentEnableDNSField', timeout: 'HelmDeploymentTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.goals.deploy", + "name": "DeployHelmDeploymentFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.lint.HelmLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.lint", + "name": "HelmLintRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.package.HelmPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.package.run_helm_package" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmPackageFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', description: 'DescriptionField', version: 'HelmChartVersionField', output_path: 'HelmChartOutputPathField')", + "is_union": false, + "module": "pants.backend.helm.goals.package", + "name": "HelmPackageFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.HelmPublishFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "HelmPublishFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', description: 'DescriptionField', version: 'HelmChartVersionField', registries: 'HelmRegistriesField', repository: 'HelmChartRepositoryField', skip_push: 'HelmSkipPushField')", + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "HelmPublishFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.PublishHelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.publish.publish_helm_chart" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "PublishHelmChartRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.tailor.PutativeHelmTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.tailor.find_putative_helm_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "PutativeHelmTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.goals.tailor", + "name": "PutativeHelmTargetsRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.resolve.artifacts.HelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "HelmArtifact", + "provider": "pants.backend.helm.resolve.artifacts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ResolvedHelmArtifact": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.helm.resolve.artifacts"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ResolvedHelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address', location_url: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ThirdPartyHelmArtifactMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.resolve.fetch.FetchHelmArtifactRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FetchHelmArtifactRequest(field_set: 'HelmArtifactFieldSet', description_of_origin: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchHelmArtifactRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.resolve.fetch", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FetchedHelmArtifact(artifact: 'ResolvedHelmArtifact', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.helm.HelmSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.helm", + "name": "HelmSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm_k8s_parser"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.ParseKubeManifestRequest": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ParseKubeManifestRequest(file: 'FileEntry')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParseKubeManifestRequest", + "provider": "pants.backend.helm.subsystems.k8s_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser.ParsedKubeManifest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.helm.subsystems.k8s_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ParsedKubeManifest(filename: 'str', found_image_refs: 'tuple[ParsedImageRefEntry, ...]')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser._HelmKubeParserTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "_HelmKubeParserTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRenderer": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmPostRenderer(*, exe: 'str', digest: 'Digest', description_of_origin: 'str', env: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm_post_renderer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.SetupHelmPostRenderer": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.post_renderer", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Request for a post-renderer process that will perform a series of replacements in the\ngenerated files.", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer._HelmPostRendererTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "_HelmPostRendererTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestPluginBinding": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "dependencies": ["pants.backend.helm.util_rules.tool"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestPluginBinding", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExternalHelmPluginBinding", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["construct_scope_helm_unittest"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmChartTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_chart_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmDeploymentTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmUnitTestTestTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_unittest_test_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.HelmChartMetaSourceField": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "HelmChartMetaSourceField", + "provider": "pants.backend.helm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmUnitTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'HelmUnitTestSourceField', dependencies: 'HelmUnitTestDependenciesField', strict: 'HelmUnitTestStrictField', timeout: 'HelmUnitTestTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.test.unittest.HelmUnitTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.helm.test.unittest.HelmUnitTestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.test.unittest", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmUnitTestSetup(chart: 'HelmChart', chart_root: 'HelmChartRoot', process: 'HelmProcess', reports_output_directory: 'str', snapshot_output_directories: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestSetup", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmUnitTestSetupRequest(field_set: 'HelmUnitTestFieldSet', description: 'str', force: 'bool', update_snapshots: 'bool', timeout_seconds: 'int | None')", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestSetupRequest", + "provider": "pants.backend.helm.test.unittest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest" + ] + }, + "pants.backend.helm.util_rules.chart.FindHelmDeploymentChart": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "FindHelmDeploymentChart(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "FindHelmDeploymentChart", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChart": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.chart", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChart(address: 'Address', info: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChart", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartRequest(field_set: 'HelmChartFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChartRequest", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.render_helm_chart" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.HelmChartMetadata": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.target_types", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm, pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.ParseHelmChartMetadataDigest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Request to parse the Helm chart definition file (i.e. `Chart.yaml`) from the given digest.\n\nThe definition file is expected to be at the root of the digest.", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "ParseHelmChartMetadataDigest", + "provider": "pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.post_renderer.HelmDeploymentPostRendererRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmDeploymentPostRendererRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.post_renderer", + "name": "HelmDeploymentPostRendererRequest", + "provider": "pants.backend.helm.util_rules.post_renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.goals.deploy.run_helm_deploy"] + }, + "pants.backend.helm.util_rules.renderer.HelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet', *, cmd: 'HelmDeploymentCmd', description: 'str', extra_argv: 'Iterable[str] | None' = None, post_renderer: 'HelmPostRenderer | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "HelmDeploymentRequest", + "provider": "pants.backend.helm.util_rules.renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.RenderedHelmFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "RenderedHelmFiles(address: 'Address', chart: 'HelmChart', snapshot: 'Snapshot', post_processed: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.util_rules.renderer._HelmDeploymentProcessWrapper": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Intermediate representation of a `HelmProcess` that will produce a fully rendered set of\nmanifests from a given chart.\n\nThe encapsulated `process` will be side-effecting dependening on the `cmd` that was originally requested.\n\nThis is meant to only be used internally by this module.", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.sources.HelmChartRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.sources" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartRoot(path: 'str')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRoot", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartRootRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartRootRequest(source: 'HelmChartMetaSourceField')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRootRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.sources", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartSourceFiles(snapshot: 'Snapshot', unrooted_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.chart.get_helm_chart"] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmChartSourceFilesRequest(field_set: 'HelmChartFieldSet', include_resources: 'bool', include_files: 'bool', include_metadata: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFilesRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.chart.get_helm_chart"] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginBinding": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Union type allowing Pants to discover global external Helm plugins.", + "is_union": true, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginBinding", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": ["HelmUnitTestPluginBinding"], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.tool.all_helm_plugins"] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "dependencies": ["pants.engine.platform"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "Helper class to create a download request for an external Helm plugin.", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmBinary": { + "consumed_by_rules": ["pants.backend.helm.util_rules.tool.helm_process"], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmBinary", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": ["pants.backend.helm.util_rules.tool.setup_helm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmPlugin(info: 'HelmPluginInfo', platform: 'Platform', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugin", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.helm.util_rules.tool.all_helm_plugins"] + }, + "pants.backend.helm.util_rules.tool.HelmPlugins": { + "consumed_by_rules": ["pants.backend.helm.util_rules.tool.setup_helm"], + "dependencies": ["pants.engine.unions"], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugins", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmProcess": { + "consumed_by_rules": ["pants.backend.helm.util_rules.tool.helm_process"], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "HelmProcess(argv: 'Iterable[str]', *, description: 'str', input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), level: 'LogLevel' = , output_directories: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, extra_env: 'Mapping[str, str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_append_only_caches: 'Mapping[str, str] | None' = None, cache_scope: 'ProcessCacheScope | None' = None, timeout_seconds: 'int | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmProcess", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "HandleJavacOptionsRequest(bsp_target_id: pants.bsp.spec.base.BuildTargetIdentifier)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsRequest", + "provider": "pants.backend.java.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.java.bsp.rules", "pants.base.build_root"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.JavaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPCompileRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.util_rules.lifecycle"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPLanguageSupport", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavacOptionsHandlerMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.java.bsp.spec.JavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.java.bsp.spec"], + "dependents": [], + "documentation": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.spec", + "name": "JavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.compile.javac.CompileJavaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.compile.javac", + "name": "CompileJavaSourceRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.FallibleJavaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.java.dependency_inference.java_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaParserCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors" + ] + }, + "pants.backend.java.dependency_inference.java_parser.JavaSourceDependencyAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.InferJavaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "InferJavaSourceDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.java.dependency_inference.rules", + "pants.core" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependenciesAndExportsRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaInferredDependenciesAndExportsRequest(source: 'SourcesField')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependenciesAndExportsRequest", + "provider": "pants.backend.java.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.symbol_mapper.AllJavaTargets": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "AllJavaTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.symbol_mapper.FirstPartyJavaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": ["pants.jvm.dependency_inference.symbol_mapper"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "FirstPartyJavaTargetsMappingRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.types.JavaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.option.global_options"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.types", + "name": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ] + }, + "pants.backend.java.goals.check.JavacCheckRequest": { + "consumed_by_rules": ["pants.backend.java.goals.check.javac_check"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.goals.check", + "name": "JavacCheckRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.java.goals.tailor.PutativeJavaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "PutativeJavaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.java.goals.tailor", + "name": "PutativeJavaTargetsRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatRequest", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java.lint.google_java_format"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatToolLockfileSentinel", + "provider": "pants.backend.experimental.java.lint.google_java_format, pants.backend.java.lint.google_java_format.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ] + }, + "pants.backend.java.lint.google_java_format.skip_field.SkipGoogleJavaFormatField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.skip_field", + "name": "SkipGoogleJavaFormatField", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.subsystem.GoogleJavaFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java.lint.google_java_format"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.subsystem", + "name": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": ["construct_scope_google_java_format"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.java_infer.JavaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.java_infer", + "name": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_java_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.javac.JavacSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.javac", + "name": "JavacSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_javac"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.junit.JUnit": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.jvm.test.junit.generate_junit_lockfile_request", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.junit", + "name": "JUnit", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_junit"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.target_types.JavaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JavaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'JavaSourceField')", + "is_union": false, + "module": "pants.backend.java.target_types", + "name": "JavaFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.javascript.dependency_inference.rules.InferJSDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "InferJSDependenciesRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.javascript.dependency_inference.rules.InferNodePackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "InferNodePackageDependenciesRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.javascript.dependency_inference.rules.NodePackageCandidateMap": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.javascript.dependency_inference.rules"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "NodePackageCandidateMap", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ] + }, + "pants.backend.javascript.dependency_inference.rules.RequestNodePackagesCandidateMap": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "RequestNodePackagesCandidateMap(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "RequestNodePackagesCandidateMap", + "provider": "pants.backend.javascript.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ] + }, + "pants.backend.javascript.install_node_package.InstalledNodePackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.javascript.install_node_package", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "InstalledNodePackage(project_env: 'NodeJsProjectEnvironment', digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.install_node_package", + "name": "InstalledNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.install_node_package.InstalledNodePackageRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "InstalledNodePackageRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.install_node_package", + "name": "InstalledNodePackageRequest", + "provider": "pants.backend.javascript.install_node_package", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.install_node_package.InstalledNodePackageWithSource": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.javascript.install_node_package", + "pants.core" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "InstalledNodePackageWithSource(project_env: 'NodeJsProjectEnvironment', digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.install_node_package", + "name": "InstalledNodePackageWithSource", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ] + }, + "pants.backend.javascript.nodejs_project.AllNodeJSProjects": { + "consumed_by_rules": [ + "pants.backend.javascript.resolve.resolve_for_package", + "pants.backend.javascript.resolve.resolve_to_projects" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.nodejs_project", + "name": "AllNodeJSProjects", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.nodejs_project_environment.NodeJSProjectEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSProjectEnvironmentRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.nodejs_project_environment", + "name": "NodeJSProjectEnvironmentRequest", + "provider": "pants.backend.javascript.nodejs_project_environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ] + }, + "pants.backend.javascript.nodejs_project_environment.NodeJsProjectEnvironment": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.javascript.nodejs_project_environment"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJsProjectEnvironment(resolve: 'ChosenNodeResolve', package: 'OwningNodePackage | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.nodejs_project_environment", + "name": "NodeJsProjectEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ] + }, + "pants.backend.javascript.nodejs_project_environment.NodeJsProjectEnvironmentProcess": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJsProjectEnvironmentProcess(env: 'NodeJsProjectEnvironment', args: 'Iterable[str]', description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), output_files: 'tuple[str, ...]' = (), output_directories: 'tuple[str, ...]' = (), per_package_caches: 'FrozenDict[str, str]' = , timeout_seconds: 'int | None' = None, extra_env: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.javascript.nodejs_project_environment", + "name": "NodeJsProjectEnvironmentProcess", + "provider": "pants.backend.javascript.nodejs_project_environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.package_json.AllPackageJson": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.javascript.package_json.all_package_json_names", + "pants.backend.javascript.package_json.pnpm_workspace_files" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "AllPackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.all_package_json" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.AllPackageJsonNames": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.generate_node_package_targets" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "Used to not invalidate all generated node package targets when any package.json contents are\nchanged.", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "AllPackageJsonNames", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.all_package_json_names" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.FirstPartyNodePackageTargets": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "pants.backend.javascript.resolve.resolve_to_first_party_node_package" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "FirstPartyNodePackageTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.all_first_party_node_package_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.GenerateNodePackageTargets": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.generate_node_package_targets" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "GenerateNodePackageTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.OwningNodePackage": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.javascript.package_json", + "pants.core" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "OwningNodePackage(target: 'Target | None' = None, third_party: 'tuple[Target, ...]' = ())", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "OwningNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.find_owning_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment", + "pants.backend.javascript.resolve.resolve_for_package" + ] + }, + "pants.backend.javascript.package_json.OwningNodePackageRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.find_owning_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "OwningNodePackageRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "OwningNodePackageRequest", + "provider": "pants.backend.javascript.package_json", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment", + "pants.backend.javascript.resolve.resolve_for_package" + ] + }, + "pants.backend.javascript.package_json.PackageJson": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.javascript.package_json", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "PackageJson(content: 'FrozenDict[str, Any]', name: 'str', version: 'str | None', snapshot: 'Snapshot', workspaces: 'tuple[str, ...]' = (), module: \"Literal['commonjs', 'module'] | None\" = None, dependencies: 'FrozenDict[str, str]' = , package_manager: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.package_json_for_source", + "pants.backend.javascript.package_json.parse_package_json" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.generate_node_package_targets", + "pants.backend.javascript.package_json.read_package_jsons", + "pants.backend.javascript.package_json.script_entrypoints_for_source", + "pants.backend.javascript.package_json.subpath_imports_for_source" + ] + }, + "pants.backend.javascript.package_json.PackageJsonEntryPoints": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.javascript.package_json"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "See https://nodejs.org/api/packages.html#package-entry-points and\nhttps://docs.npmjs.com/cli/v9/configuring-npm/package-json#browser.", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonEntryPoints", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.script_entrypoints_for_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies" + ] + }, + "pants.backend.javascript.package_json.PackageJsonForGlobs": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.engine.fs"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonForGlobs", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.read_package_jsons" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.all_package_json", + "pants.backend.javascript.package_json.package_json_for_source" + ] + }, + "pants.backend.javascript.package_json.PackageJsonImports": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata" + ], + "dependencies": ["pants.backend.javascript.package_json"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "https://nodejs.org/api/packages.html#subpath-imports.", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonImports", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.subpath_imports_for_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.PackageJsonSourceField": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.package_json_for_source", + "pants.backend.javascript.package_json.script_entrypoints_for_source", + "pants.backend.javascript.package_json.subpath_imports_for_source" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonSourceField", + "provider": "pants.backend.javascript.package_json", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.javascript.package_json.generate_node_package_targets", + "pants.backend.javascript.package_json.script_entrypoints_for_source", + "pants.backend.javascript.package_json.subpath_imports_for_source" + ] + }, + "pants.backend.javascript.package_json.PnpmWorkspaces": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PnpmWorkspaces", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.pnpm_workspace_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.resolve.ChosenNodeResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.javascript.resolve" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "ChosenNodeResolve(project: 'NodeJSProject')", + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "ChosenNodeResolve", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.resolve.resolve_for_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ] + }, + "pants.backend.javascript.resolve.FirstPartyNodePackageResolves": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "FirstPartyNodePackageResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.resolve.resolve_to_first_party_node_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.resolve.NodeJSProjectResolves": { + "consumed_by_rules": [ + "pants.backend.javascript.resolve.resolve_to_first_party_node_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "NodeJSProjectResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.resolve.resolve_to_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.resolve.RequestNodeResolve": { + "consumed_by_rules": [ + "pants.backend.javascript.resolve.resolve_for_package" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "RequestNodeResolve(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "RequestNodeResolve", + "provider": "pants.backend.javascript.resolve", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ] + }, + "pants.backend.javascript.subsystems.nodejs.CorepackToolDigest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.javascript.subsystems.nodejs" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "CorepackToolDigest(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "CorepackToolDigest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.CorepackToolRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "CorepackToolRequest(tool: 'str', input_digest: 'Digest', working_directory: 'str | None' = None, version: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "CorepackToolRequest", + "provider": "pants.backend.javascript.subsystems.nodejs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_env_aware_scope_nodejs"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJS": { + "consumed_by_rules": [ + "construct_env_aware_scope_nodejs", + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_scope_nodejs"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSBinaries": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment" + ], + "dependencies": ["pants.core", "pants.engine.platform"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSBinaries(binary_dir: 'str', digest: 'Digest | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSBinaries", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSBootstrap": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSBootstrap(nodejs_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSBootstrap", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSProcessEnvironment": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSProcessEnvironment(binaries: 'NodeJSBinaries', npm_config_cache: 'str', tool_binaries: 'BinaryShims', corepack_home: 'str', corepack_shims: 'str', corepack_env_vars: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSProcessEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSToolProcess": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "A request for a tool installed with NodeJS.", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSToolProcess", + "provider": "pants.backend.javascript.subsystems.nodejs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.UserChosenNodeJSResolveAliases": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.javascript.resolve.resolve_to_projects" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "UserChosenNodeJSResolveAliases", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs._BinaryPathsPerVersion": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "_BinaryPathsPerVersion", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs_infer.NodeJSInfer": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs_infer", + "name": "NodeJSInfer", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_scope_nodejs_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs_tool.NodeJSToolRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "NodeJSToolRequest(tool: 'str', resolve: 'str | None', args: 'tuple[str, ...]', input_digest: 'Digest', description: 'str', level: 'LogLevel', options_scope: 'str', output_files: 'tuple[str, ...]' = (), output_directories: 'tuple[str, ...]' = (), append_only_caches: 'FrozenDict[str, str]' = , timeout_seconds: 'int | None' = None, extra_env: 'Mapping[str, str]' = )", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs_tool", + "name": "NodeJSToolRequest", + "provider": "pants.backend.javascript.subsystems.nodejs_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.lint.spectral.rules.run_spectral" + ] + }, + "pants.backend.kotlin.compile.kotlinc.CompileKotlinSourceRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc", + "name": "CompileKotlinSourceRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.AllKotlincPluginTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPlugins(ids: 'tuple[str, ...]', classpath: 'ClasspathEntry', plugin_args: 'FrozenDict[str, tuple[str, ...]]')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.java"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlincPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsRequest", + "provider": "pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.FallibleKotlinSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "FallibleKotlinSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.dependency_inference.kotlin_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.option.global_options"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinSourceDependencyAnalysis(package: 'str', imports: 'frozenset[KotlinImport]', named_declarations: 'frozenset[str]', consumed_symbols_by_scope: 'FrozenDict[str, frozenset[str]]', scopes: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinRuntimeDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinSourceDependencies", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.dependency_inference.rules" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolveRequest", + "provider": "pants.backend.kotlin.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.AllKotlinTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.FirstPartyKotlinTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": ["pants.jvm.dependency_inference.symbol_mapper"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "FirstPartyKotlinTargetsMappingRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.check.KotlincCheckRequest": { + "consumed_by_rules": ["pants.backend.kotlin.goals.check.kotlinc_check"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.goals.check", + "name": "KotlincCheckRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.tailor.PutativeKotlinTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "PutativeKotlinTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.kotlin.goals.tailor", + "name": "PutativeKotlinTargetsRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintRequest", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin.lint.ktlint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin.lint.ktlint, pants.backend.kotlin.lint.ktlint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": ["pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt"] + }, + "pants.backend.kotlin.lint.ktlint.skip_field.SkipKtlintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.skip_field", + "name": "SkipKtlintField", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.subsystem.KtlintSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin.lint.ktlint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.subsystem", + "name": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": ["construct_scope_ktlint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin.KotlinSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin", + "name": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": ["construct_scope_kotlin"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin_infer.KotlinInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin_infer", + "name": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": ["construct_scope_kotlin_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlinc.KotlincSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlinc", + "name": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": ["construct_scope_kotlinc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.target_types.KotlinFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'KotlinSourceField')", + "is_union": false, + "module": "pants.backend.kotlin.target_types", + "name": "KotlinFieldSet", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.InferKotlinJunitTestDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "InferKotlinJunitTestDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.test.junit" + ], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinJunitLibrariesForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.kotlin"], + "documentation": "KotlinJunitLibrariesForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolveRequest", + "provider": "pants.backend.kotlin.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiDocumentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiDocumentDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiSourceDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiSourceDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.OpenApiDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.openapi.dependency_inference", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": "OpenApiDependencies(dependencies: 'FrozenDict[str, frozenset[str]]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.dependency_inference.ParseOpenApiSources": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": "ParseOpenApiSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "ParseOpenApiSources", + "provider": "pants.backend.openapi.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.goals.tailor.PutativeOpenApiTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": "PutativeOpenApiTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.goals.tailor", + "name": "PutativeOpenApiTargetsRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.rules.SpectralRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.rules", + "name": "SpectralRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.skip_field.SkipSpectralField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.skip_field", + "name": "SkipSpectralField", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.subsystem.SpectralSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.subsystem", + "name": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": ["construct_scope_spectral"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.openapi.subsystems.openapi.OpenApiSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.openapi"], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.subsystems.openapi", + "name": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": ["construct_scope_openapi"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.plugin_development.pants_requirements.GenerateFromPantsRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.plugin_development"], + "documentation": null, + "is_union": false, + "module": "pants.backend.plugin_development.pants_requirements", + "name": "GenerateFromPantsRequirementsRequest", + "provider": "pants.backend.plugin_development", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCode": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCode", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.count_loc.count_loc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCodeSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_count_loc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.SuccinctCodeCounter": { + "consumed_by_rules": ["pants.backend.project_info.count_loc.count_loc"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "SuccinctCodeCounter", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_scc"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.Dependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "Dependencies", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.DependenciesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "DependenciesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_dependencies"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.AddressToDependents": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.project_info"], + "documentation": "AddressToDependents(mapping: pants.util.frozendict.FrozenDict[Address, pants.util.ordered_set.FrozenOrderedSet[Address]])", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "AddressToDependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.map_addresses_to_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.Dependents": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.project_info", + "pants.backend.python.mixed_interpreter_constraints" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "Dependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.DependentsRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [], + "dependents": ["pants.backend.project_info"], + "documentation": "DependentsRequest(addresses: Iterable[Address], *, transitive: bool, include_roots: bool)", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_dependents"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.Filedeps": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.base.build_root", + "pants.build_graph.address", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "Filedeps", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.filedeps.file_deps"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.FiledepsSubsystem": { + "consumed_by_rules": ["pants.backend.project_info.filedeps.file_deps"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "FiledepsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_filedeps"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_filter"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.Roots": { + "consumed_by_rules": [], + "dependencies": ["pants.core", "pants.engine.console"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "Roots", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.list_roots.list_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.RootsSubsystem": { + "consumed_by_rules": ["pants.backend.project_info.list_roots.list_roots"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "RootsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.List": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "List", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.ListSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "ListSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_list"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.paths.paths"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsSubsystem": { + "consumed_by_rules": ["pants.backend.project_info.paths.paths"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_paths"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.RootDestinationPair": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destination" + ], + "dependencies": [], + "dependents": ["pants.backend.project_info"], + "documentation": "RootDestinationPair(root: 'Target', destination: 'Target')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "RootDestinationPair", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ] + }, + "pants.backend.project_info.paths.RootDestinationsPair": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ], + "dependencies": [], + "dependents": ["pants.backend.project_info"], + "documentation": "RootDestinationsPair(root: 'Target', destinations: 'Targets')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "RootDestinationsPair", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.paths.paths"] + }, + "pants.backend.project_info.paths.SpecsPaths": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.project_info"], + "documentation": "SpecsPaths(paths: 'list[list[str]]')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "SpecsPaths", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destination" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ] + }, + "pants.backend.project_info.paths.SpecsPathsCollection": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.project_info"], + "documentation": "SpecsPathsCollection(spec_paths: 'list[SpecsPaths]')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "SpecsPathsCollection", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.paths.paths"] + }, + "pants.backend.project_info.peek.Peek": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "Peek", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.peek.peek"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.PeekSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": "Display detailed target information in JSON form.", + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "PeekSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_peek"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.TargetDatas": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "TargetDatas", + "provider": "pants.backend.project_info", + "returned_by_rules": ["pants.backend.project_info.peek.get_target_data"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.peek.peek"] + }, + "pants.backend.project_info.regex_lint.RegexLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.regex_lint.RegexLintSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.project_info.regex_lint.partition_inputs" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": ["construct_scope_regex_lint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.AllPythonTargets": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.python"], + "documentation": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "AllPythonTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImpl": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.python, pants.backend.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImplMarker": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "An entry point for a specific implementation of mapping module names to owning targets for\nPython import dependency inference.\n\nAll implementations will be merged together. Any modules that show up in multiple\nimplementations will be marked ambiguous.", + "is_union": true, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImplMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "FirstPartyPythonTargetsMappingMarker", + "PythonProtobufMappingMarker", + "PythonThriftMappingMarker", + "PythonVCSVersionMappingMarker" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "FirstPartyPythonModuleMapping(resolves_to_modules_to_providers: 'FrozenDict[ResolveName, FrozenDict[str, Tuple[ModuleProvider, ...]]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonTargetsMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonTargetsMappingMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "The target(s) that own a Python module.\n\nUp to 2 targets can unambiguously own the same module, if one is an implementation and the other\nis a .pyi type stub. It is ambiguous for >1 implementation target to own the same module, and\nthose targets will be put into `ambiguous` instead of `unambiguous`. Therefore, `unambiguous`\nshould never be >2; and only 1 of `unambiguous` and `ambiguous` should have targets.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwnersRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "PythonModuleOwnersRequest(module: 'str', resolve: 'str | None', locality: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwnersRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.ThirdPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request" + ], + "dependencies": ["pants.core"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.python" + ], + "documentation": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.GeneralPythonDependencyVisitorRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "GeneralPythonDependencyVisitorRequest()", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "GeneralPythonDependencyVisitorRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PythonDependencyVisitorRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsePythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "ParsePythonDependenciesRequest(source: 'PythonSourceField', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsePythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.internals.native_dep_inference", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ParsedPythonDependencies(imports: 'ParsedPythonImports', assets: 'ParsedPythonAssetPaths')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParserScript": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "ParserScript(digest: 'Digest', env: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParserScript", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.PythonDependencyVisitor": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "Wraps a subclass of DependencyVisitorBase.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "PythonDependencyVisitor", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.PythonDependencyVisitorRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "PythonDependencyVisitorRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": ["GeneralPythonDependencyVisitorRequest"], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script" + ] + }, + "pants.backend.python.dependency_inference.rules.InferConftestDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferConftestDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferInitDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferInitDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferPythonImportDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferPythonImportDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.PythonImportDependenciesInferenceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python"], + "documentation": "PythonImportDependenciesInferenceFieldSet(address: 'Address', source: 'PythonSourceField', dependencies: 'PythonDependenciesField', resolve: 'PythonResolveField', interpreter_constraints: 'InterpreterConstraintsField')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "PythonImportDependenciesInferenceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ResolvedParsedPythonDependencies(resolve_results: 'dict[str, ImportResolveResult]', assets: 'dict[str, ImportResolveResult]', explicit: 'ExplicitlyProvidedDependencies')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "ResolvedParsedPythonDependenciesRequest(field_set: 'PythonImportDependenciesInferenceFieldSet', parsed_dependencies: 'ParsedPythonDependencies', resolve: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwnerRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "UnownedImportPossibleOwnerRequest(unowned_import: 'str', original_resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwnerRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwners": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "UnownedImportPossibleOwners(value: 'list[tuple[Address, ResolveName]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.subsystem.PythonInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.awslambda.python", "pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.subsystem", + "name": "PythonInferSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_python_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.InferStevedoreNamespacesDependencies": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "InferStevedoreNamespacesDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.StevedoreExtensions": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": "A mapping of stevedore namespaces to a list of targets that provide them.\n\nEffectively, the targets are StevedoreExtension targets.", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.rules.GenerateEntryPointsTxtFromStevedoreExtensionRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.rules", + "name": "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.AllStevedoreExtensionTargets": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreExtensionTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesField", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesProviderTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.framework.stevedore"], + "documentation": "StevedoreNamespacesProviderTargetsRequest(stevedore_namespaces: 'StevedoreNamespacesField')", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesProviderTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.goals.coverage_py.CoverageConfig": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.python"], + "documentation": "CoverageConfig(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageConfig", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSetup": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "CoverageSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_coverage_py"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.MergedCoverageData": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.python"], + "documentation": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "MergedCoverageData", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.PytestCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "PytestCoverageDataCollection", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysisSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": ["construct_scope_python_dump_source_analysis"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.PythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python", "pants.core"], + "dependents": ["pants.backend.experimental.python"], + "documentation": "Information on the inferred imports for a Python file, including all raw intermediate\nresults.", + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.goals.export.ExportPluginOptions": { + "consumed_by_rules": [], + "dependencies": ["pants.option.subsystem"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPluginOptions", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginOption", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.ExportVenvsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "ExportVenvsRequest(targets: 'Sequence[Target]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportVenvsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.MaybeExportResult": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "MaybeExportResult(result: 'ExportResult | None')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "MaybeExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.goals.export.export_virtualenvs"] + }, + "pants.backend.python.goals.export.VenvExportRequest": { + "consumed_by_rules": ["pants.backend.python.goals.export.do_export"], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "VenvExportRequest(pex_request: 'PexRequest', dest_prefix: 'str', resolve_name: 'str', qualify_path_with_python_version: 'bool', editable_local_dists_digest: 'Digest | None' = None)", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "VenvExportRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.goals.export._ExportVenvForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_ExportVenvForResolveRequest(resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvForResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.goals.export.export_virtualenvs"] + }, + "pants.backend.python.goals.lockfile.GeneratePythonLockfile": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', requirements: 'FrozenOrderedSet[str]', find_links: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "GeneratePythonLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.KnownPythonUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "KnownPythonUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.PythonSyntheticLockfileTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "dependencies": ["pants.engine.internals.synthetic_targets"], + "dependents": ["pants.core"], + "documentation": "Register the type used to create synthetic targets for Python lockfiles.\n\nAs the paths for all lockfiles are known up-front, we set the `path` field to\n`SyntheticTargetsRequest.SINGLE_REQUEST_FOR_ALL_TARGETS` so that we get a single request for all\nour synthetic targets rather than one request per directory.", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "PythonSyntheticLockfileTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "SyntheticTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.RequestedPythonUserResolveNames": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "RequestedPythonUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.backend.python.goals.package_pex_binary.PexBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PexBinaryFieldSet(address: 'Address', entry_point: pants.backend.python.target_types.PexEntryPointField, script: pants.backend.python.target_types.PexScriptField, args: pants.backend.python.target_types.PexArgsField, env: pants.backend.python.target_types.PexEnvField, output_path: pants.core.goals.package.OutputPathField, emit_warnings: pants.backend.python.target_types.PexEmitWarningsField, ignore_errors: pants.backend.python.target_types.PexIgnoreErrorsField, inherit_path: pants.backend.python.target_types.PexInheritPathField, shebang: pants.backend.python.target_types.PexShebangField, strip_env: pants.backend.python.target_types.PexStripEnvField, platforms: pants.backend.python.target_types.PexPlatformsField, complete_platforms: pants.backend.python.target_types.PexCompletePlatformsField, resolve_local_platforms: pants.backend.python.target_types.PexResolveLocalPlatformsField, layout: pants.backend.python.target_types.PexLayoutField, execution_mode: pants.backend.python.target_types.PexExecutionModeField, include_requirements: pants.backend.python.target_types.PexIncludeRequirementsField, include_sources: pants.backend.python.target_types.PexIncludeSourcesField, include_tools: pants.backend.python.target_types.PexIncludeToolsField, venv_site_packages_copies: pants.backend.python.target_types.PexVenvSitePackagesCopies, venv_hermetic_scripts: pants.backend.python.target_types.PexVenvHermeticScripts, environment: pants.core.util_rules.environments.EnvironmentField)", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexBinaryFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.package_pex_binary.PexFromTargetsRequestForBuiltPackage": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request" + ], + "dependencies": ["pants.backend.awslambda.python", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "An intermediate class that gives consumers access to the data used to create a\n`PexFromTargetsRequest` to fulfil a `BuiltPackage` request.\n\nThis class is used directly by `run_pex_binary`, but should be handled transparently by direct\n`BuiltPackage` requests.", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.publish.PublishPythonPackageFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "PublishPythonPackageFieldSet(address: 'Address', repositories: 'PythonRepositoriesField', skip_twine: 'SkipTwineUploadField')", + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageFieldSet", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PublishPythonPackageRequest": { + "consumed_by_rules": ["pants.backend.python.goals.publish.twine_upload"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PythonRepositoriesField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PythonRepositoriesField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.SkipTwineUploadField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "SkipTwineUploadField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetups": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.python.framework.stevedore", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetups", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetupsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "AllPytestPluginSetupsRequest(addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetupsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.PyTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PyTestRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.python"], + "documentation": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetupRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "A request to set up the test environment before Pytest runs, e.g. to set up databases.\n\nTo use, subclass PytestPluginSetupRequest, register the rule\n`UnionRule(PytestPluginSetupRequest, MyCustomPytestPluginSetupRequest)`, and add a rule that\ntakes your subclass as a parameter and returns `PytestPluginSetup`.", + "is_union": true, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "RuntimePackagesPluginRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.RuntimePackagesPluginRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "RuntimePackagesPluginRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "RuntimePackagesPluginRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": ["pants.backend.python"], + "documentation": "TestSetup(process: 'Process', results_file_name: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.pytest_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "TestSetupRequest(field_sets: 'Tuple[PythonTestFieldSet, ...]', metadata: 'TestMetadata', is_debug: 'bool', extra_env: 'FrozenDict[str, str]' = FrozenDict({}), prepend_argv: 'Tuple[str, ...]' = (), additional_pexes: 'Tuple[Pex, ...]' = ())", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.repl.IPythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "IPythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.repl.PythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_python_repl_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "PythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_requirement.PythonRequirementFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PythonRequirementFieldSet(address: 'Address', requirements: 'PythonRequirementsField', dependencies: 'PythonRequirementDependenciesField', modules: 'PythonRequirementModulesField', resolve: 'PythonRequirementResolveField', entry_point: 'PythonRequirementEntryPointField')", + "is_union": false, + "module": "pants.backend.python.goals.run_python_requirement", + "name": "PythonRequirementFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_source.PythonSourceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PythonSourceFieldSet(address: 'Address', source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.target_types.InterpreterConstraintsField, _run_goal_use_sandbox: pants.backend.python.target_types.PythonRunGoalUseSandboxField)", + "is_union": false, + "module": "pants.backend.python.goals.run_python_source", + "name": "PythonSourceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.tailor.PutativePythonTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PutativePythonTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.tailor", + "name": "PutativePythonTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.rules.AddTrailingCommaRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.rules", + "name": "AddTrailingCommaRequest", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.skip_field.SkipAddTrailingCommaField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.skip_field", + "name": "SkipAddTrailingCommaField", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingComma": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": ["construct_scope_add_trailing_comma"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.rules.AutoflakeRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.rules", + "name": "AutoflakeRequest", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.skip_field.SkipAutoflakeField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.skip_field", + "name": "SkipAutoflakeField", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.Autoflake": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.autoflake"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "Autoflake", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": ["construct_scope_autoflake"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.rules.BanditRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditRequest", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.skip_field.SkipBanditField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.skip_field", + "name": "SkipBanditField", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.Bandit": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.rules.partition_bandit" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.bandit"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "Bandit", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": ["construct_scope_bandit"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.black.rules.BlackRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.rules", + "name": "BlackRequest", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.skip_field.SkipBlackField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.skip_field", + "name": "SkipBlackField", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.Black": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.rules.partition_black", + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.python.lint.black", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "Black", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_black"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.rules.DocformatterRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.rules", + "name": "DocformatterRequest", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.skip_field.SkipDocformatterField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.skip_field", + "name": "SkipDocformatterField", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.Docformatter": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.docformatter"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "Docformatter", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": ["construct_scope_docformatter"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.rules.Flake8Request": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Request", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.skip_field.SkipFlake8Field": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.skip_field", + "name": "SkipFlake8Field", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.flake8"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": ["construct_scope_flake8"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8FirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python.lint.flake8"], + "documentation": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.rules.IsortRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.rules", + "name": "IsortRequest", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.skip_field.SkipIsortField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.skip_field", + "name": "SkipIsortField", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.Isort": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.isort"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "Isort", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": ["construct_scope_isort"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.rules.PydocstyleRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.rules", + "name": "PydocstyleRequest", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.skip_field.SkipPydocstyleField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.skip_field", + "name": "SkipPydocstyleField", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.subsystem.Pydocstyle": { + "consumed_by_rules": [ + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.pydocstyle"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.subsystem", + "name": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": ["construct_scope_pydocstyle"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.rules.PylintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintRequest", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.skip_field.SkipPylintField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.skip_field", + "name": "SkipPylintField", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.Pylint": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.pylint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "Pylint", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": ["construct_scope_pylint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python.lint.pylint"], + "documentation": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.rules.PyUpgradeRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.rules", + "name": "PyUpgradeRequest", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.skip_field.SkipPyUpgradeField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.skip_field", + "name": "SkipPyUpgradeField", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgrade": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.lint.pyupgrade"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": ["construct_scope_pyupgrade"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffFixRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffFixRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffLintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffLintRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules._RunRuffRequest": { + "consumed_by_rules": ["pants.backend.python.lint.ruff.rules.run_ruff"], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.lint.ruff"], + "documentation": "_RunRuffRequest(snapshot: 'Snapshot', is_fix: 'bool')", + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "_RunRuffRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_lint" + ] + }, + "pants.backend.python.lint.ruff.skip_field.SkipRuffField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.skip_field", + "name": "SkipRuffField", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.subsystem.Ruff": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python.lint.ruff"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.subsystem", + "name": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": ["construct_scope_ruff"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.rules.YapfRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.rules", + "name": "YapfRequest", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.skip_field.SkipYapfField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.skip_field", + "name": "SkipYapfField", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.Yapf": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.build_files.fmt.yapf", + "pants.backend.python.lint.yapf", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "Yapf", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_yapf"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.macros.pipenv_requirements.GenerateFromPipenvRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.pipenv_requirements", + "name": "GenerateFromPipenvRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.poetry_requirements.GenerateFromPoetryRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.poetry_requirements", + "name": "GenerateFromPoetryRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.python_requirements.GenerateFromPythonRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.python_requirements.generate_from_python_requirement" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.python_requirements", + "name": "GenerateFromPythonRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.mixed_interpreter_constraints"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": ["construct_scope_py_constraints"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyOxidizerFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": "PyOxidizerFieldSet(address: 'Address', binary_name: 'PyOxidizerBinaryNameField', entry_point: 'PyOxidizerEntryPointField', dependencies: 'PyOxidizerDependenciesField', unclassified_resources: 'PyOxidizerUnclassifiedResources', template: 'PyOxidizerConfigSourceField', output_path: 'PyOxidizerOutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyOxidizerFieldSet", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyoxidizerRunnerScript": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyOxidizer": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python.packaging.pyoxidizer"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": ["construct_scope_pyoxidizer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPy": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPy", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_debugpy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPython": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPython", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_ipython"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.lambdex.Lambdex": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.util_rules.faas.build_lambdex" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.google_cloud_function.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.lambdex", + "name": "Lambdex", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": ["construct_scope_lambdex"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PyTest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PyTest", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_pytest"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PythonTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "PythonTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'PythonTestSourceField', interpreter_constraints: 'InterpreterConstraintsField', timeout: 'PythonTestsTimeoutField', runtime_package_dependencies: 'RuntimePackageDependenciesField', extra_env_vars: 'PythonTestsExtraEnvVarsField', xdist_concurrency: 'PythonTestsXdistConcurrencyField', batch_compatibility_tag: 'PythonTestsBatchCompatibilityTagField', resolve: 'PythonResolveField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PythonTestFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_python_native_code"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.PythonNativeCodeSubsystem": { + "consumed_by_rules": ["construct_env_aware_scope_python_native_code"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "PythonNativeCodeSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python_native_code"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.repos.PythonRepos": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.repos", + "name": "PythonRepos", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python_repos"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup.PythonSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup", + "name": "PythonSetup", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup_py_generation.SetupPyGeneration": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup_py_generation", + "name": "SetupPyGeneration", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_setup_py_generation"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.PythonDistributionFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "PythonDistributionFieldSet(address: 'Address', provides: pants.backend.python.target_types.PythonProvidesField)", + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "PythonDistributionFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ] + }, + "pants.backend.python.subsystems.setuptools.Setuptools": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "Setuptools", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_setuptools"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCM": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python", + "returned_by_rules": ["construct_scope_setuptools_scm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineSubsystem": { + "consumed_by_rules": ["pants.backend.python.goals.publish.twine_upload"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": ["construct_scope_twine"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexBinaryDefaults": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexBinaryDefaults", + "provider": "pants.backend.python", + "returned_by_rules": ["construct_scope_pex_binary_defaults"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexCompletePlatformsField": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexCompletePlatformsField", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.target_types.PythonFilesGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PythonFilesGeneratorSettingsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types.ResolvePexEntryPointRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Determine the `entry_point` for a `pex_binary` after applying all syntactic sugar.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePexEntryPointRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvePythonDistributionEntryPointsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Looks at the entry points to see if it is a setuptools entry point, or a BUILD target address\nthat should be resolved into a setuptools entry point.\n\nIf the `entry_points_field` is present, inspect the specified entry points.\nIf the `provides_field` is present, inspect the `provides_field.kwargs[\"entry_points\"]`.\n\nThis is to support inspecting one or the other depending on use case, using the same\nlogic for resolving pex_binary addresses etc.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePythonDistributionEntryPointsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.target_types.ResolvedPexEntryPoint": { + "consumed_by_rules": [], + "dependencies": ["pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPexEntryPoint", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvedPythonDistributionEntryPoints": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.target_types_rules.GenerateTargetsFromPexBinaries": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "GenerateTargetsFromPexBinaries", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPexBinaryEntryPointDependency": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPexBinaryEntryPointDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPythonDistributionDependencies": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPythonDistributionDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonValidateDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonValidateDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.MyPycDistBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPycDistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "MyPycDistBuildEnvironmentRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "DistBuildEnvironmentRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.UsesMyPycField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "UsesMyPycField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPyPartition(field_sets: 'FrozenOrderedSet[MyPyFieldSet]', root_targets: 'CoarsenedTargets', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartition", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartitions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.skip_field.SkipMyPyField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.skip_field", + "name": "SkipMyPyField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPy": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPy", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": ["construct_scope_mypy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyConfigFile": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": ["pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.pytype.rules.PytypePartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.python.typecheck.pytype"], + "documentation": "PytypePartition(field_sets: 'FrozenOrderedSet[PytypeFieldSet]', root_targets: 'CoarsenedTargets', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.rules", + "name": "PytypePartition", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.backend.python.typecheck.pytype.rules.PytypePartitions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.python.typecheck.pytype"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.rules", + "name": "PytypePartitions", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "returned_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.backend.python.typecheck.pytype.rules.PytypeRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.python.typecheck.pytype"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.rules", + "name": "PytypeRequest", + "provider": "pants.backend.experimental.python.typecheck.pytype, pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.backend.python.typecheck.pytype.skip_field.SkipPytypeField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.skip_field", + "name": "SkipPytypeField", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.pytype.subsystem.Pytype": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.python.typecheck.pytype"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.subsystem", + "name": "Pytype", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "returned_by_rules": ["construct_scope_pytype"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "Any ancestor files found.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request for ancestor files of the given names.\n\n\"Ancestor files\" means all files with one of the given names that are siblings of, or in parent\ndirectories of, a `.py` or `.pyi` file in the input_files.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystem": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "A PEP 517/518 build system configuration.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystemRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to find build system config in the given dir of the given digest.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystemRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to build dists via a PEP 517 build backend.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist" + ] + }, + "pants.backend.python.util_rules.faas.BuildLambdexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.build_lambdex" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "BuildLambdexRequest(address: 'Address', target_name: 'str', complete_platforms: 'PythonFaaSCompletePlatforms', handler: 'PythonFaaSHandlerField', output_path: 'OutputPathField', runtime: 'PythonFaaSRuntimeField', include_requirements: 'bool', script_handler: 'None | str', script_module: 'None | str', handler_log_message: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "BuildLambdexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ] + }, + "pants.backend.python.util_rules.faas.BuildPythonFaaSRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "BuildPythonFaaSRequest(address: 'Address', target_name: 'str', complete_platforms: 'PythonFaaSCompletePlatforms', handler: 'None | PythonFaaSHandlerField', output_path: 'OutputPathField', runtime: 'PythonFaaSRuntimeField', include_requirements: 'bool', include_sources: 'bool', reexported_handler_module: 'None | str', log_only_reexported_handler_func: 'bool' = False, prefix_in_artifact: 'None | str' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "BuildPythonFaaSRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ] + }, + "pants.backend.python.util_rules.faas.InferPythonFaaSHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "InferPythonFaaSHandlerDependency", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.faas.PythonFaaSCompletePlatforms": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.digest_complete_platforms" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "PythonFaaSCompletePlatforms", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.infer_runtime_platforms" + ] + }, + "pants.backend.python.util_rules.faas.ResolvePythonFaaSHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.resolve_python_faas_handler" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "ResolvePythonFaaSHandlerRequest(field: 'PythonFaaSHandlerField')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "ResolvePythonFaaSHandlerRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.util_rules.faas.ResolvedPythonFaaSHandler": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python", "pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "ResolvedPythonFaaSHandler(module: 'str', func: 'str', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "ResolvedPythonFaaSHandler", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.resolve_python_faas_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.util_rules.faas.RuntimePlatforms": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.python", "pants.core"], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "RuntimePlatforms(interpreter_version: 'None | tuple[int, int]', pex_platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]))", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "RuntimePlatforms", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.infer_runtime_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.faas.RuntimePlatformsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.infer_runtime_platforms" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "RuntimePlatformsRequest(address: 'Address', target_name: 'str', runtime: 'PythonFaaSRuntimeField', complete_platforms: 'PythonFaaSCompletePlatforms')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "RuntimePlatformsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.interpreter_constraints", + "name": "InterpreterConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistWheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "Contains the wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistWheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPex": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPex", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Request to build the local dists from the dependency closure of a set of addresses.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.AllPythonDistributionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.python"], + "documentation": "AllPythonDistributionTargets(targets: 'Targets')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "AllPythonDistributionTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.local_dists_pep660.EditableLocalDists": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "A Digest populated by editable (PEP660) wheels of local dists.\n\nAccording to PEP660, these wheels should not be exported to users and must be discarded\nafter install. Anything that uses this should ensure that these wheels get installed and\nthen deleted.\n\nInstalling PEP660 wheels creates an \"editable\" install such that the sys.path gets\nadjusted to include source directories from the build root (not from the sandbox).\nThis is decidedly not hermetic or portable and should only be used locally.\n\nPEP660 wheels have .dist-info metadata and the .pth files (or similar) that adjust sys.path.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "EditableLocalDists", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.EditableLocalDistsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Request to generate PEP660 wheels of local dists in the given resolve.\n\nThe editable wheel files must not be exported or made available to the end-user (according to\nPEP 660). Instead, the PEP660 editable wheels serve as intermediate, internal-only,\nrepresentation of what should be installed in the exported virtualenv to create the editable\ninstalls of local python_distributions.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "EditableLocalDistsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.LocalDistPEP660Wheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.env_vars", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "Contains the PEP 660 \"editable\" wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "LocalDistPEP660Wheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.PEP660BuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "PEP660BuildResult(output: 'Digest', editable_wheel_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "PEP660BuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.ResolveSortedPythonDistributionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "ResolveSortedPythonDistributionTargets(targets: 'FrozenDict[str | None, tuple[Target, ...]]')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "ResolveSortedPythonDistributionTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.package_dists.DependencyOwner": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "An ExportedTarget in its role as an owner of other targets.\n\nWe need this type to prevent rule ambiguities when computing the list of targets owned by an\nExportedTarget (which involves going from ExportedTarget -> dep -> owner (which is itself an\nExportedTarget) and checking if owner is the original ExportedTarget.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DependencyOwner", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_sources" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildChroot": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "A chroot containing PEP 517 build setup and the sources it operates on.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildChroot", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildChrootRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to create a chroot for building a dist in.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildChrootRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "Various extra information that might be needed to build a dist.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildEnvironmentRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": "DistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": true, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildEnvironmentRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": ["MyPycDistBuildEnvironmentRequest"], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildSources": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "The source-root-stripped sources required to build a distribution with a generated setup.py.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildSources", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.ExportedTarget": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "ExportedTarget", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_exporting_owner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.ExportedTargetRequirements": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python"], + "documentation": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "ExportedTargetRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.util_rules.package_dists.FinalizedSetupKwargs": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "FinalizedSetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ] + }, + "pants.backend.python.util_rules.package_dists.GenerateSetupPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "GenerateSetupPyRequest(exported_target: 'ExportedTarget', sources: 'DistBuildSources', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "GenerateSetupPyRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ] + }, + "pants.backend.python.util_rules.package_dists.GeneratedSetupPy": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "GeneratedSetupPy(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "GeneratedSetupPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.OwnedDependencies": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.engine.unions"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "OwnedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.package_dists.get_sources" + ] + }, + "pants.backend.python.util_rules.package_dists.OwnedDependency": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_exporting_owner" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A target that is owned by some ExportedTarget.\n\nCode in this target is published in the owner's distribution.\n\nThe owner of a target T is T's closest filesystem ancestor among the python_distribution\ntargets that directly or indirectly depend on it (including T itself).", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "OwnedDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.SetupKwargs": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.unions"], + "dependents": ["pants.backend.python"], + "documentation": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "SetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.SetupKwargsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to allow setting the kwargs passed to the `setup()` function.\n\nBy default, Pants will pass the kwargs provided in the BUILD file unchanged. To customize this\nbehavior, subclass `SetupKwargsRequest`, register the rule `UnionRule(SetupKwargsRequest,\nMyCustomSetupKwargsRequest)`, and add a rule that takes your subclass as a parameter and returns\n`SetupKwargs`.", + "is_union": true, + "module": "pants.backend.python.util_rules.package_dists", + "name": "SetupKwargsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ] + }, + "pants.backend.python.util_rules.pex.BuildPexResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python" + ], + "dependents": ["pants.core"], + "documentation": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "BuildPexResult", + "provider": "pants.core", + "returned_by_rules": ["pants.backend.python.util_rules.pex.build_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex" + ] + }, + "pants.backend.python.util_rules.pex.CompletePlatforms": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "CompletePlatforms", + "provider": "pants.backend.awslambda.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPex": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.python"], + "documentation": "OptionalPex(maybe_pex: 'Pex | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex.Pex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "Wrapper for a digest containing a pex file created with some filename.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "Pex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": ["pants.backend.python.util_rules.pex.create_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_pex_process" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "PexProcess(pex: 'Pex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings_or_addrs=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None, description_of_origin=''), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.PexRequirementsInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "PexRequirementsInfo(req_strings: 'tuple[str, ...]', find_links: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequirementsInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex.PexResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexResolveInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex.PythonProvider": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Union which should have 0 or 1 implementations registered which provide Python.\n\nSubclasses should provide a rule from their subclass type to `PythonExecutable`.", + "is_union": true, + "module": "pants.backend.python.util_rules.pex", + "name": "PythonProvider", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.python.util_rules.pex.find_interpreter"] + }, + "pants.backend.python.util_rules.pex.VenvPex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "VenvPex(digest: 'Digest', append_only_caches: 'FrozenDict[str, str] | None', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_venv_pex_process" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "VenvPexProcess(venv_pex: 'VenvPex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "VenvPexRequest(pex_request: 'PexRequest', complete_pex_env: 'CompletePexEnvironment', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexRequest", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexCli": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCli", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_pex_cli"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_cli.PexCliProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "PexCliProcess(*, subcommand: 'Iterable[str]', extra_args: 'Iterable[str]', description: 'str', additional_input_digest: 'Optional[Digest]' = None, extra_env: 'Optional[Mapping[str, str]]' = None, output_files: 'Optional[Iterable[str]]' = None, output_directories: 'Optional[Iterable[str]]' = None, level: 'LogLevel' = , concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCliProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_venv.pex_venv" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexPEX": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": ["pants.engine.platform"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "The Pex PEX binary.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexPEX", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexEnvironment": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": ["pants.option.global_options"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.core" + ], + "documentation": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonBuildStandaloneBinary', venv_use_symlinks: 'bool' = False)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_pex", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_pex"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PythonExecutable": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "The BinaryPath of a Python executable for user code, along with some extras.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PythonExecutable", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolve": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.python"], + "documentation": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolve", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "ChosenPythonResolveRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.GlobalRequirementConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": ["pants.core", "pants.engine.fs"], + "dependents": ["pants.backend.python"], + "documentation": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "GlobalRequirementConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_from_targets.InterpreterConstraintsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "InterpreterConstraintsRequest(addresses: 'Iterable[Address]', *, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "InterpreterConstraintsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.PexFromTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None, warn_for_transitive_files_targets: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "PexFromTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.RequirementsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Requests a PEX containing only thirdparty requirements for internal/non-portable use.\n\nUsed as part of an optimization to reduce the \"overhead\" (in terms of both time and space) of\nthirdparty requirements by taking advantage of certain PEX features.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "RequirementsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._ConstraintsRepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_ConstraintsRepositoryPexRequest(repository_pex_request: '_RepositoryPexRequest')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_ConstraintsRepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._PexRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "Determine the requirement strings used transitively.\n\nThis type is private because callers should likely use `RequirementsPexRequest` or\n`PexFromTargetsRequest` instead.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_PexRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._RepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "_RepositoryPexRequest(addresses: 'Iterable[Address]', *, internal_only: 'bool', hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_lockfile_args: 'tuple[str, ...]' = ()) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_RepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.python", + "pants.core" + ], + "documentation": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfileRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A request to load and validate the content of the given lockfile.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfileRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Lockfile": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.python"], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.python", + "pants.core" + ], + "documentation": "Lockfile(url: 'str', url_description_of_origin: 'str', resolve_name: 'str', lockfile_hex_digest: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Lockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.PexRequirements": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "dependencies": [], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "PexRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Resolve": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Resolve(name: 'str', use_entire_lockfile: 'bool')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Resolve", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "Configuration from `[python]` that impacts how the resolve is created.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfig", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfigRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Find all configuration from `[python]` that impacts how the resolve is created.\n\nIf `resolve_name` is None, then most per-resolve options will be ignored because there is no way\nfor users to configure them. However, some options like `[python-repos].indexes` will still be\nloaded.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfigRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_venv.PexVenv": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PexVenv(digest: 'Digest', path: 'Path')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_venv", + "name": "PexVenv", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_venv.pex_venv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.pex_venv.PexVenvRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_venv.pex_venv" + ], + "dependencies": [], + "dependents": ["pants.backend.awslambda.python"], + "documentation": "PexVenvRequest(pex: 'Pex', layout: 'PexVenvLayout', output_path: 'Path', description: 'str', platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), prefix: 'None | str' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_venv", + "name": "PexVenvRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFiles": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "PythonSourceFilesRequest(targets: 'Iterable[Target]', *, include_resources: 'bool' = True, include_files: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.StrippedPythonSourceFiles": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "documentation": "A PythonSourceFiles that has had its source roots stripped.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "StrippedPythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.vcs_versioning.AllVCSVersionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.GeneratePythonFromSetuptoolsSCMRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "GeneratePythonFromSetuptoolsSCMRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.PythonVCSVersionMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": ["pants.backend.python"], + "dependents": ["pants.backend.experimental.python"], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "PythonVCSVersionMappingMarker", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.VCSVersionPythonResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "VCSVersionPythonResolveField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "HandleScalacOptionsRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.base.build_root", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "HandleScalacOptionsResult(item: 'ScalacOptionsItem')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.ScalaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPCompileRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPDependencyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaBSPDependencyModulesRequest(field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPDependencyModulesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPDependencyModulesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.util_rules.lifecycle"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPLanguageSupport", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_resources_request" + ], + "dependencies": ["pants.bsp.util_rules.targets"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPResourcesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaMainClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaMainClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaTestClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaTestClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalacOptionsHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModules": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.core", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch", + "pants.jvm.resolve.key" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ThirdpartyModules(resolve: 'CoursierResolveKey', entries: 'dict[CoursierLockfileEntry, ClasspathEntry]', merged_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ThirdpartyModulesRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModulesRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.spec.ScalaMainClassesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.bsp.spec"], + "dependents": [], + "documentation": "ScalaMainClassesResult(items: 'tuple[ScalaMainClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalaTestClassesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.bsp.spec"], + "dependents": [], + "documentation": "ScalaTestClassesResult(items: 'tuple[ScalaTestClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.bsp.spec"], + "dependents": [], + "documentation": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac.CompileScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac", + "name": "CompileScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.AllScalaPluginTargets": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.scala.compile.scalac_plugins", + "pants.engine.environment" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPlugins", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": ["pants.backend.experimental.java"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala, pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetWithoutResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginsForTargetWithoutResolveRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetWithoutResolveRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaLibraryDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaLibraryDependencyRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaPluginDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaPluginDependenciesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaSourceDependencies", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.dependency_inference.rules" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolveRequest", + "provider": "pants.backend.scala.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.AnalyzeScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "AnalyzeScalaSourceRequest(source_files: 'SourceFiles', scala_version: 'str', source3: 'bool')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.FallibleScalaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.dependency_inference.scala_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.helm", "pants.engine.fs"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[ScalaProvidedSymbol]', provided_symbols_encoded: 'FrozenOrderedSet[ScalaProvidedSymbol]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.AllScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "AllScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.FirstPartyScalaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "dependencies": ["pants.jvm.dependency_inference.symbol_mapper"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "FirstPartyScalaTargetsMappingRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.check.ScalacCheckRequest": { + "consumed_by_rules": ["pants.backend.scala.goals.check.scalac_check"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.check", + "name": "ScalacCheckRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.repl.ScalaRepl": { + "consumed_by_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.repl", + "name": "ScalaRepl", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.scala.goals.tailor.PutativeScalaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "PutativeScalaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.goals.tailor", + "name": "PutativeScalaTargetsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.GatherScalafmtConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": "GatherScalafmtConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "GatherScalafmtConfigFilesRequest", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtConfigFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.scala.lint.scalafmt.rules"], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtRequest", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtToolLockfileSentinel", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.skip_field.SkipScalafmtField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.skip_field", + "name": "SkipScalafmtField", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.subsystem.ScalafmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala.lint.scalafmt"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.subsystem", + "name": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": ["construct_scope_scalafmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.resolve.artifact.ScalaArtifactClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.artifact.scala_artifact_classpath" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.artifact", + "name": "ScalaArtifactClasspathEntryRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.resolve.lockfile.ValidateResolveHasScalaRuntimeRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": ["pants.jvm.goals.lockfile"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.lockfile", + "name": "ValidateResolveHasScalaRuntimeRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateJvmArtifactsForResolveRequest", + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala.ScalaSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.target_types.generate_jvm_artifact_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala", + "name": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scala"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala_infer.ScalaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala_infer", + "name": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scala_infer"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalac.Scalac": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalac", + "name": "Scalac", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scalac"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalatest.Scalatest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalatest", + "name": "Scalatest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": ["construct_scope_scalatest"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.target_types.GenerateJvmArtifactForScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.generate_jvm_artifact_targets" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "GenerateJvmArtifactForScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'ScalaSourceField')", + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaSettingsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "ScalatestTestFieldSet(address: 'Address', sources: 'ScalatestTestSourceField', timeout: 'ScalatestTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'ScalatestTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ] + }, + "pants.backend.scala.test.scalatest.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.scala.test.scalatest", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetup", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.test.scalatest.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "TestSetupRequest(field_set: 'ScalatestTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetupRequest", + "provider": "pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionRequest": { + "consumed_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaArtifactsForVersionRequest(scala_version: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionRequest", + "provider": "pants.backend.scala.util_rules.versions", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.scala.util_rules.versions"], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "ScalaArtifactsForVersionResult(compiler_coordinate: 'Coordinate', library_coordinate: 'Coordinate', reflect_coordinate: 'Coordinate | None', compiler_main: 'str', repl_main: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.shell.dependency_inference.AllShellTargets": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "AllShellTargets", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.find_all_shell_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.InferShellDependencies": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "InferShellDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.ParseShellImportsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "ParseShellImportsRequest(digest: 'Digest', fp: 'str')", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParseShellImportsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ParsedShellImports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParsedShellImports", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ShellMapping": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "A mapping of Shell file names to their owning file address.", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ShellMapping", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.goals.tailor.PutativeShellTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.goals.tailor.find_putative_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": "PutativeShellTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.shell.goals.tailor", + "name": "PutativeShellTargetsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.ShellTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "ShellTestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.TestShellCommandFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "TestShellCommandFieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.rules.ShellcheckRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.rules", + "name": "ShellcheckRequest", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.skip_field.SkipShellcheckField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.skip_field", + "name": "SkipShellcheckField", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.subsystem.Shellcheck": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.subsystem", + "name": "Shellcheck", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shellcheck"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.rules.ShfmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.rules", + "name": "ShfmtRequest", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.skip_field.SkipShfmtField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.skip_field", + "name": "SkipShfmtField", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.subsystem.Shfmt": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell.lint.shfmt"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.subsystem", + "name": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": ["construct_scope_shfmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2FieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "Shunit2FieldSet(address: 'Address', sources: pants.backend.shell.target_types.Shunit2TestSourceField, timeout: pants.backend.shell.target_types.Shunit2TestTimeoutField, shell: pants.backend.shell.target_types.Shunit2ShellField, runtime_package_dependencies: pants.core.goals.test.RuntimePackageDependenciesField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2FieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2Runner": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2Runner", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2RunnerRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "Shunit2RunnerRequest(address: Address, test_file_content: pants.engine.fs.FileContent, shell_field: pants.backend.shell.target_types.Shunit2ShellField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2RunnerRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2TestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2TestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": ["pants.backend.shell"], + "documentation": "TestSetup(process: pants.engine.process.Process)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "TestSetupRequest(field_set: pants.backend.shell.shunit2_test_runner.Shunit2FieldSet)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.subsystems.shell_setup.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": ["pants.core", "pants.engine.env_vars"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "EnvironmentAware", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_env_aware_scope_shell_setup"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_setup.ShellSetup": { + "consumed_by_rules": [ + "construct_env_aware_scope_shell_setup", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "ShellSetup", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shell_setup"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_test_subsys.ShellTestSubsystem": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_test_subsys", + "name": "ShellTestSubsystem", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shell_test"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shunit2.Shunit2": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shunit2", + "name": "Shunit2", + "provider": "pants.backend.shell", + "returned_by_rules": ["construct_scope_shunit2"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.target_types.ShellGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.target_types", + "name": "ShellGeneratorSettingsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.GenerateFilesFromShellCommandRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "GenerateFilesFromShellCommandRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.RunShellCommand": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "RunShellCommand", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.ShellCommandProcessFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "ShellCommandProcessFromTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "ShellCommandProcessFromTargetRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.backend.terraform.dependencies.TerraformDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependencies.get_terraform_providers" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformDependenciesRequest(source_files: 'SourceFiles', directories: 'Tuple[str, ...]', backend_config: 'SourceFiles', dependencies_files: 'SourceFiles', initialise_backend: 'bool' = False)", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformDependenciesRequest", + "provider": "pants.backend.terraform.dependencies", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.terraform.dependencies.init_terraform"] + }, + "pants.backend.terraform.dependencies.TerraformDependenciesResponse": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.terraform.dependencies", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformDependenciesResponse(fetched_deps: 'Tuple[Tuple[str, Digest], ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformDependenciesResponse", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependencies.get_terraform_providers" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.terraform.dependencies.init_terraform"] + }, + "pants.backend.terraform.dependencies.TerraformInitRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependencies.init_terraform" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformInitRequest(root_module: 'TerraformRootModuleField', backend_config: 'TerraformBackendConfigField', dependencies: 'TerraformDependenciesField', initialise_backend: 'bool' = False)", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformInitRequest", + "provider": "pants.backend.terraform.dependencies", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ] + }, + "pants.backend.terraform.dependencies.TerraformInitResponse": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.terraform.dependencies", + "pants.core" + ], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformInitResponse(sources_and_deps: 'Digest', terraform_files: 'tuple[str, ...]', chdir: 'str')", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformInitResponse", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependencies.init_terraform" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ] + }, + "pants.backend.terraform.dependency_inference.InferTerraformModuleDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "InferTerraformModuleDependenciesRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.ParseTerraformModuleSources": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "ParseTerraformModuleSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParseTerraformModuleSources", + "provider": "pants.backend.terraform.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ] + }, + "pants.backend.terraform.dependency_inference.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParserSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2Parser": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_terraform_hcl2_parser"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformCheckRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformCheckRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformValidateSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_terraform_validate"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.deploy.DeployTerraformFieldSet": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.deploy.run_terraform_deploy" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "DeployTerraformFieldSet(address: 'Address', description: 'DescriptionField', root_module: 'TerraformRootModuleField', dependencies: 'TerraformDependenciesField', backend_config: 'TerraformBackendConfigField', var_files: 'TerraformVarFileSourcesField')", + "is_union": false, + "module": "pants.backend.terraform.goals.deploy", + "name": "DeployTerraformFieldSet", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.deploy.TerraformDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "TerraformDeploymentRequest(field_set: 'TerraformDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.terraform.goals.deploy", + "name": "TerraformDeploymentRequest", + "provider": "pants.backend.terraform.goals.deploy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.deploy.run_terraform_deploy" + ] + }, + "pants.backend.terraform.goals.tailor.PutativeTerraformTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "PutativeTerraformTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.goals.tailor", + "name": "PutativeTerraformTargetsRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TfFmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_terraform_fmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TffmtRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TffmtRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.target_types.AllTerraformDeploymentTargets": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.target_types", + "name": "AllTerraformDeploymentTargets", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.target_types.all_terraform_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.tool.TerraformProcess": { + "consumed_by_rules": [ + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": "A request to invoke Terraform.", + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformProcess", + "provider": "pants.backend.terraform.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformTool": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.terraform"], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformTool", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": ["construct_scope_download_terraform"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.preamble.rules.PreambleRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.rules", + "name": "PreambleRequest", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.preamble.subsystem.PreambleSubsystem": { + "consumed_by_rules": [ + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.tools.preamble"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.subsystem", + "name": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": ["construct_scope_preamble"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.workunit_logger.rules.WorkunitLogger": { + "consumed_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.tools.workunit_logger"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.workunit_logger.rules", + "name": "WorkunitLogger", + "provider": "pants.backend.experimental.tools.workunit_logger", + "returned_by_rules": ["construct_scope_workunit_logger"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.workunit_logger.rules.WorkunitLoggerCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback" + ], + "dependencies": ["pants.engine.streaming_workunit_handler"], + "dependents": ["pants.backend.experimental.tools.workunit_logger"], + "documentation": "A unique request type that is installed to trigger construction of our WorkunitsCallback.", + "is_union": false, + "module": "pants.backend.tools.workunit_logger.rules", + "name": "WorkunitLoggerCallbackFactoryRequest", + "provider": "pants.backend.experimental.tools.workunit_logger", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.backend.tools.yamllint.rules"], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": "YamllintConfigFiles(snapshot: 'Snapshot', source_dir_to_config_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.tools.yamllint.rules.partition_inputs"] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": "YamllintConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFilesRequest", + "provider": "pants.backend.tools.yamllint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.tools.yamllint.rules.partition_inputs"] + }, + "pants.backend.tools.yamllint.rules.YamllintRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintRequest", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.subsystem.Yamllint": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.backend.tools.yamllint.rules.run_yamllint" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.tools.yamllint"], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.subsystem", + "name": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": ["construct_scope_yamllint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.base.specs.RawSpecs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Convert the specs into matching targets and files.\n\nUnlike `Specs`, this does not consider include vs. ignore specs. It simply matches all relevant\ntargets/files.\n\nWhen you want to operate on what the user specified, use `Specs`. Otherwise, you can use\neither `Specs` or `RawSpecs` in rules, e.g. to find what targets exist in a directory.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.javascript.package_json.find_owning_package", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.base.specs.RawSpecsWithoutFileOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The subset of `RawSpecs` that do not use the `Owners` rule to match targets.\n\nThis exists to work around a cycle in the rule graph. Usually, consumers should use the simpler\n`Get(Addresses, RawSpecs)`, which will result in this rule being used.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecsWithoutFileOwners", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.resolve_all_generator_target_requests" + ] + }, + "pants.base.specs.Specs": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "The specs provided by the user for what to run on.\n\nThe `ignores` will filter out all relevant `includes`.\n\nIf your rule does not need to consider includes vs. ignores, e.g. to find all targets in a\ndirectory, you can directly use `RawSpecs`.", + "is_union": false, + "module": "pants.base.specs", + "name": "Specs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.bsp.context.BSPContext": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependencies": ["pants.engine.internals.session"], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "is_union": false, + "module": "pants.bsp.context", + "name": "BSPContext", + "provider": "pants.core", + "returned_by_rules": ["pants.bsp.rules.bsp_context"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.goal.BSPGoal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.bsp.goal", + "name": "BSPGoal", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_experimental_bsp"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.protocol.BSPHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "Union type for rules to register handlers for BSP methods.", + "is_union": true, + "module": "pants.bsp.protocol", + "name": "BSPHandlerMapping", + "provider": "pants.bsp.protocol", + "returned_by_rules": [], + "union_members": [ + "BuildTargetSourcesHandlerMapping", + "CompileRequestHandlerMapping", + "DependencyModulesHandlerMapping", + "DependencySourcesHandlerMapping", + "InitializeBuildHandlerMapping", + "JavacOptionsHandlerMapping", + "ResourcesRequestHandlerMapping", + "ScalaMainClassesHandlerMapping", + "ScalaTestClassesHandlerMapping", + "ScalacOptionsHandlerMapping", + "WorkspaceBuildTargetsHandlerMapping" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.base.BuildTargetIdentifier": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A unique identifier for a target, can use any URI-compatible encoding as long as it is unique\nwithin the workspace.\n\nClients should not infer metadata out of the URI structure such as the path or query parameters,\nuse BuildTarget instead.", + "is_union": false, + "module": "pants.bsp.spec.base", + "name": "BuildTargetIdentifier", + "provider": "pants.bsp.spec.base", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.spec.compile.CompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.compile", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "is_union": false, + "module": "pants.bsp.spec.compile", + "name": "CompileResult", + "provider": "pants.core", + "returned_by_rules": ["pants.bsp.util_rules.compile.bsp_compile_request"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.lifecycle.InitializeBuildResult": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.spec.lifecycle", "pants.engine.unions"], + "dependents": [], + "documentation": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "is_union": false, + "module": "pants.bsp.spec.lifecycle", + "name": "InitializeBuildResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.lifecycle.bsp_build_initialize" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.resources.ResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.resources", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "ResourcesResult(items: 'tuple[ResourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.resources", + "name": "ResourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencyModulesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencySourcesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.spec.targets"], + "dependents": [], + "documentation": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencySourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.SourcesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.spec.targets"], + "dependents": [], + "documentation": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "SourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.WorkspaceBuildTargetsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "WorkspaceBuildTargetsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.compile.CompileOneBSPTargetRequest": { + "consumed_by_rules": ["pants.bsp.util_rules.compile.compile_bsp_target"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "CompileOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal', origin_id: 'str | None' = None, arguments: 'tuple[str, ...] | None' = ())", + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.compile.bsp_compile_request"] + }, + "pants.bsp.util_rules.compile.CompileRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.BSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Union exposed by language backends to inform BSP core rules of capabilities to advertise to\nclients.", + "is_union": true, + "module": "pants.bsp.util_rules.lifecycle", + "name": "BSPLanguageSupport", + "provider": "pants.bsp.util_rules.lifecycle", + "returned_by_rules": [], + "union_members": ["JavaBSPLanguageSupport", "ScalaBSPLanguageSupport"], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.InitializeBuildHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.lifecycle", + "name": "InitializeBuildHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.resources.ResourcesForOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ResourcesForOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesForOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.resources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.resources.bsp_resources_request"] + }, + "pants.bsp.util_rules.resources.ResourcesRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetInternal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "dependencies": ["pants.bsp.spec.base"], + "dependents": ["pants.core"], + "documentation": "BSPBuildTargetInternal(name: 'str', specs: 'RawSpecs', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetInternal", + "provider": "pants.bsp.util_rules.targets, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetSourcesInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.bsp.util_rules.targets" + ], + "dependents": ["pants.core"], + "documentation": "Source files and roots for a BSP build target.\n\nIt is a separate class so that it is computed lazily only when called for by an RPC call.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetSourcesInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargets": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": ["pants.bsp.util_rules.targets", "pants.engine.fs"], + "dependents": ["pants.core"], + "documentation": "BSPBuildTargets(targets_mapping: 'FrozenDict[str, BSPBuildTargetInternal]')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide metadata for BSP build targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPBuildTargetsMetadataRequest", + "ScalaBSPBuildTargetsMetadataRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.core" + ], + "dependents": ["pants.core"], + "documentation": "Response type for a BSPBuildTargetsMetadataRequest.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to compile targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": ["JavaBSPCompileRequest", "ScalaBSPCompileRequest"], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.compile.compile_bsp_target"] + }, + "pants.bsp.util_rules.targets.BSPCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.bsp.util_rules.compile", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.resolve.key" + ], + "dependents": ["pants.core"], + "documentation": "Result of compilation of a target capable of target compilation.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "Hook to allow language backends to provide dependency modules.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": ["ScalaBSPDependencyModulesRequest"], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": ["pants.core"], + "documentation": "BSPDependencyModulesResult(modules: 'tuple[DependencyModule, ...]', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide resources for targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": ["JavaBSPResourcesRequest", "ScalaBSPResourcesRequest"], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.resources.resources_bsp_target"] + }, + "pants.bsp.util_rules.targets.BSPResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.bsp.util_rules.resources", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "Resources for a target.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BuildTargetSourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BuildTargetSourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencyModulesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencyModulesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencySourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencySourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GenerateOneBSPBuildTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.base.build_root", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "GenerateOneBSPBuildTargetResult(build_target: 'BuildTarget', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "MaterializeBuildTargetSourcesRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_build_target_sources"] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesResult": { + "consumed_by_rules": [], + "dependencies": ["pants.base.build_root", "pants.bsp.util_rules.targets"], + "dependents": ["pants.core"], + "documentation": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_build_target_sources"] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ResolveOneDependencyModuleRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_dependency_modules"] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": ["pants.core"], + "documentation": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.bsp.util_rules.targets.bsp_dependency_modules"] + }, + "pants.bsp.util_rules.targets.WorkspaceBuildTargetsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": ["pants.bsp.protocol"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "WorkspaceBuildTargetsHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets._ParseOneBSPMappingRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "_ParseOneBSPMappingRequest(name: 'str', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "_ParseOneBSPMappingRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ] + }, + "pants.build_graph.address.BuildFileAddressRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to find the BUILD file path for an address.", + "is_union": false, + "module": "pants.build_graph.address", + "name": "BuildFileAddressRequest", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.filedeps.file_deps", + "pants.engine.internals.graph.find_owners" + ] + }, + "pants.core.goals.check.Check": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "Check", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.check.check"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.check.CheckRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "A union for targets that should be checked.\n\nSubclass and install a member of this type to provide a checker.", + "is_union": true, + "module": "pants.core.goals.check", + "name": "CheckRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCheckRequest", + "JavacCheckRequest", + "KotlincCheckRequest", + "MyPyRequest", + "PytypeRequest", + "ScalacCheckRequest", + "TerraformCheckRequest" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.check.check"] + }, + "pants.core.goals.check.CheckResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResult", + "provider": "pants.backend.experimental.python.typecheck.pytype, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.core.goals.check.CheckResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.resolve.key" + ], + "dependents": ["pants.core"], + "documentation": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResults", + "provider": "pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.typecheck.pytype, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.terraform.goals.check.terraform_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.check.check"] + }, + "pants.core.goals.check.CheckSubsystem": { + "consumed_by_rules": ["pants.core.goals.check.check"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_check"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.Deploy": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.terraform", + "pants.engine.console", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": "Deploy(exit_code: 'int')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "Deploy", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.deploy.run_deploy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.DeployFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm", + "pants.backend.experimental.terraform" + ], + "documentation": "The FieldSet type for the `deploy` goal.\n\nUnion members may list any fields required to fulfill the instantiation of the `DeployProcess`\nresult of the deploy rule.", + "is_union": true, + "module": "pants.core.goals.deploy", + "name": "DeployFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployHelmDeploymentFieldSet", + "DeployTerraformFieldSet" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.deploy.run_deploy"] + }, + "pants.core.goals.deploy.DeployProcess": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "A process that when executed will have the side effect of deploying a target.\n\nTo provide with the ability to deploy a given target, create a custom `DeployFieldSet` for\nthat given target and implement a rule that returns `DeployProcess` for that custom field set:\n\nExample:\n\n @dataclass(frozen=True)\n class MyDeploymentFieldSet(DeployFieldSet):\n pass\n\n @rule\n async def my_deployment_process(field_set: MyDeploymentFieldSet) -> DeployProcess:\n # Create the underlying process that executes the deployment\n process = Process(...)\n return DeployProcess(\n name=\"my_deployment\",\n process=InteractiveProcess.from_process(process)\n )\n\n def rules():\n return [\n *collect_rules(),\n UnionRule(DeployFieldSet, MyDeploymentFieldSet)\n ]\n\nUse the `publish_dependencies` field to provide with a list of targets that produce packages\nwhich need to be externally published before the deployment process is executed.", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeployProcess", + "provider": "pants.backend.experimental.helm, pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.terraform.goals.deploy.run_terraform_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.deploy.run_deploy"] + }, + "pants.core.goals.deploy.DeploySubsystem": { + "consumed_by_rules": ["pants.core.goals.deploy.run_deploy"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeploySubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_experimental_deploy"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy._PublishProcessesForTargetRequest": { + "consumed_by_rules": [ + "pants.core.goals.deploy.publish_process_for_target" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "_PublishProcessesForTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "_PublishProcessesForTargetRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.deploy.run_deploy"] + }, + "pants.core.goals.export.Export": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.base.build_root", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "Export", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.export.export"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.export.ExportRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A union for exportable data provided by a backend.\n\nSubclass and install a member of this type to export data.", + "is_union": true, + "module": "pants.core.goals.export", + "name": "ExportRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["ExportVenvsRequest"], + "union_type": null, + "used_in_rules": ["pants.core.goals.export.export"] + }, + "pants.core.goals.export.ExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.python"], + "documentation": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = (), resolve: 'str | None' = None)", + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResult", + "provider": "pants.backend.python", + "returned_by_rules": ["pants.backend.python.goals.export.do_export"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.core.goals.export.ExportResults": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.export.export"] + }, + "pants.core.goals.export.ExportSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.export.export" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_export"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.AbstractFixRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fix", + "name": "AbstractFixRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "PreambleRequest", + "PyUpgradeRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.Batch": { + "consumed_by_rules": ["pants.backend.python.lint.black.rules.black_fmt"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python.lint.black"], + "documentation": "Batch(tool_name: 'str', elements: 'tuple[PartitionElementT, ...]', partition_metadata: 'PartitionMetadataT', snapshot: 'Snapshot')", + "is_union": true, + "module": "pants.core.goals.fix", + "name": "Batch", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.fix.Fix": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "Fix", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.fix.fix"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.FixResult": { + "consumed_by_rules": [ + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": ["pants.core"], + "documentation": "FixResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', tool_name: 'str')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixResult", + "provider": "pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.experimental.go, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.python.lint.autoflake, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.isort, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble, pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.fix.fix_batch"] + }, + "pants.core.goals.fix.FixSubsystem": { + "consumed_by_rules": ["pants.core.goals.fix.fix"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_fix"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix._FixBatchRequest": { + "consumed_by_rules": ["pants.core.goals.fix.fix_batch"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request to serially fix all the elements in the given batch.", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.fix.fix", "pants.core.goals.fmt.fmt"] + }, + "pants.core.goals.fix._FixBatchResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "dependents": ["pants.core"], + "documentation": "_FixBatchResult(results: 'tuple[FixResult, ...]')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchResult", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.fix.fix_batch"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.fix.fix", "pants.core.goals.fmt.fmt"] + }, + "pants.core.goals.fmt.AbstractFmtRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fmt", + "name": "AbstractFmtRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "PreambleRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.Fmt": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "Fmt", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.fmt.fmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtSubsystem": { + "consumed_by_rules": ["pants.core.goals.fmt.fmt"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_fmt"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "A union base for generating ecosystem-specific lockfiles.\n\nEach language ecosystem should set up a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile` and `GenerateJVMLockfile`, and register a union rule. They should\nalso set up a simple rule that goes from that class -> `WrappedGenerateLockfile`.\n\nSubclasses will usually want to add additional properties, such as what requirements to\ninstall and Python interpreter constraints.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["GenerateJvmLockfile", "GeneratePythonLockfile"], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": ["pants.core"], + "documentation": "The result of generating a lockfile for a particular resolve.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_generate_lockfiles"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateToolLockfileSentinel": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "Tools use this as an entry point to say how to generate their tool lockfile.\n\nEach language ecosystem should set up a union member of `GenerateLockfile`, like\n`GeneratePythonLockfile`, as explained in that class's docstring.\n\nEach language ecosystem should also subclass `GenerateToolLockfileSentinel`, e.g.\n`GeneratePythonToolLockfileSentinel`. The subclass does not need to do anything - it is only used to know which language ecosystems tools correspond to.\n\nThen, each tool should subclass their language ecosystem's subclass of `GenerateToolLockfileSentinel` and set up a rule that goes from the\nsubclass -> the language's lockfile request, e.g. BlackLockfileSentinel ->\nGeneratePythonLockfile. Register `UnionRule(GenerateToolLockfileSentinel, MySubclass)`.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateToolLockfileSentinel", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoogleJavaFormatToolLockfileSentinel", + "GrpcJavaToolLockfileSentinel", + "JarJarGeneratorLockfileSentinel", + "JarToolGenerateLockfileSentinel", + "JavaParserToolLockfileSentinel", + "JunitToolLockfileSentinel", + "KotlinParserToolLockfileSentinel", + "KtlintToolLockfileSentinel", + "ScalaParserToolLockfileSentinel", + "ScalafmtToolLockfileSentinel", + "ScalapbcToolLockfileSentinel", + "ScalatestToolLockfileSentinel", + "StripJarToolLockfileSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNamesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "A hook for a language ecosystem to declare which resolves it has defined.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> KnownUserResolveNames, usually by simply reading the\n`resolves` option from the relevant subsystem.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "KnownJVMUserResolveNamesRequest", + "KnownPythonUserResolveNamesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.RequestedUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "The user resolves requested for a particular language ecosystem.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> UserGenerateLockfiles.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "RequestedUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RequestedJVMUserResolveNames", + "RequestedPythonUserResolveNames" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.UserGenerateLockfiles": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.core"], + "documentation": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.WrappedGenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_snapshots.EnvironmentAwareGenerateSnapshotsRequest": { + "consumed_by_rules": [ + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request class to request a `GenerateSnapshotsResult` in an environment-aware fashion.", + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "EnvironmentAwareGenerateSnapshotsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_snapshots.generate_snapshots" + ] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshots": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshots", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_snapshots.generate_snapshots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshotsFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "The fields necessary to generate snapshots from a target.", + "is_union": true, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshotsFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["HelmUnitTestFieldSet"], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots" + ] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshotsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.engine.environment" + ], + "dependents": ["pants.core"], + "documentation": "GenerateSnapshotsResult(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshotsResult", + "provider": "pants.backend.experimental.helm, pants.core", + "returned_by_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "pants.core.goals.generate_snapshots.generate_snapshots" + ] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshotsSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshotsSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_generate_snapshots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.AbstractLintRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": "Base class for plugin types wanting to be run as part of `lint`.\n\nPlugins should define a new type which subclasses either `LintTargetsRequest` (to lint targets)\nor `LintFilesRequest` (to lint arbitrary files), and set the appropriate class variables.\nE.g.\n class DryCleaningRequest(LintTargetsRequest):\n name = DryCleaningSubsystem.options_scope\n field_set_type = DryCleaningFieldSet\n\nThen, define 2 `@rule`s:\n 1. A rule which takes an instance of your request type's `PartitionRequest` class property,\n and returns a `Partitions` instance.\n E.g.\n @rule\n async def partition(\n request: DryCleaningRequest.PartitionRequest[DryCleaningFieldSet]\n # or `request: DryCleaningRequest.PartitionRequest` if file linter\n subsystem: DryCleaningSubsystem,\n ) -> Partitions[DryCleaningFieldSet, Any]:\n if subsystem.skip:\n return Partitions()\n\n # One possible implementation\n return Partitions.single_partition(request.field_sets)\n\n 2. A rule which takes an instance of your request type's `Batch` class property, and\n returns a `LintResult instance.\n E.g.\n @rule\n async def dry_clean(\n request: DryCleaningRequest.Batch,\n ) -> LintResult:\n ...\n\nLastly, register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules()\n ]", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "AbstractLintRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BanditRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BufLintRequest", + "BuildifierRequest", + "DocformatterRequest", + "Flake8Request", + "GofmtRequest", + "GoogleJavaFormatRequest", + "HadolintRequest", + "HelmLintRequest", + "IsortRequest", + "KtlintRequest", + "PreambleRequest", + "PyUpgradeRequest", + "PydocstyleRequest", + "PylintRequest", + "RegexLintRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "RuffLintRequest", + "ScalafmtRequest", + "ShellcheckRequest", + "ShfmtRequest", + "SpectralRequest", + "TffmtRequest", + "YamllintRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.Batch": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.project_info"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "Batch", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.lint.Lint": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "Lint", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.lint.lint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', linter_name: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), _render_message: 'bool' = True)", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.helm, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.shell.lint.shellcheck, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.lint.lint"] + }, + "pants.core.goals.lint.LintSubsystem": { + "consumed_by_rules": ["pants.core.goals.lint.lint"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_lint"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.PartitionRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "PartitionRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.package.AllPackageableTargets": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.docker"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "AllPackageableTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.find_all_packageable_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.BuiltPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "is_union": false, + "module": "pants.core.goals.package", + "name": "BuiltPackage", + "provider": "pants.backend.awslambda.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.google_cloud_function.python, pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.core.goals.package.environment_aware_package", + "pants.core.target_types.package_archive_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.core.goals.package.EnvironmentAwarePackageRequest": { + "consumed_by_rules": [ + "pants.core.goals.package.environment_aware_package" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request class to request a `BuiltPackage` in an environment-aware fashion.", + "is_union": false, + "module": "pants.core.goals.package", + "name": "EnvironmentAwarePackageRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.package.Package": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "Package", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.package.package_asset"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.PackageFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "documentation": "The fields necessary to build an asset from a target.", + "is_union": true, + "module": "pants.core.goals.package", + "name": "PackageFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ArchiveFieldSet", + "DeployJarFieldSet", + "DockerPackageFieldSet", + "GoBinaryFieldSet", + "HelmPackageFieldSet", + "PackageWarFileFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonAwsLambdaFieldSet", + "PythonAwsLambdaLayerFieldSet", + "PythonDistributionFieldSet", + "PythonGoogleCloudFunctionFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package" + ] + }, + "pants.core.goals.package.PackageSubsystem": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "PackageSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_package"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.Publish": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "Publish", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.publish.run_publish"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "FieldSet for PublishRequest.\n\nUnion members may list any fields required to fulfill the instantiation of the\n`PublishProcesses` result of the publish rule.", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "HelmPublishFieldSet", + "PublishDockerImageFieldSet", + "PublishPythonPackageFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishProcesses": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcesses", + "provider": "pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.core", + "returned_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.python.goals.publish.twine_upload", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.package_for_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishProcessesRequest": { + "consumed_by_rules": ["pants.core.goals.publish.package_for_publish"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Internal request taking all field sets for a target and turning it into a `PublishProcesses`\ncollection (via registered publish plugins).", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcessesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "Implement a union member subclass of this union class along with a PublishFieldSet subclass\nthat appoints that member subclass in order to receive publish requests for targets compatible\nwith the field set.\n\nThe `packages` hold all artifacts produced for a given target to be published.\n\nExample:\n\n PublishToMyRepoRequest(PublishRequest):\n pass\n\n PublishToMyRepoFieldSet(PublishFieldSet):\n publish_request_type = PublishToMyRepoRequest\n\n # Standard FieldSet semantics from here on:\n required_fields = (MyRepositories,)\n ...", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PublishDockerImageRequest", + "PublishHelmChartRequest", + "PublishPythonPackageRequest" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.publish.package_for_publish"] + }, + "pants.core.goals.publish.PublishSubsystem": { + "consumed_by_rules": ["pants.core.goals.publish.run_publish"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_publish"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.Repl": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "Repl", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.repl.run_repl"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.ReplImplementation": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "A REPL implementation for a specific language or runtime.\n\nProxies from the top-level `repl` goal to an actual implementation.", + "is_union": true, + "module": "pants.core.goals.repl", + "name": "ReplImplementation", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": ["IPythonRepl", "PythonRepl", "ScalaRepl"], + "union_type": null, + "used_in_rules": ["pants.core.goals.repl.run_repl"] + }, + "pants.core.goals.repl.ReplRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": ["pants.core"], + "documentation": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplRequest", + "provider": "pants.backend.experimental.scala, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.repl.run_repl"] + }, + "pants.core.goals.repl.ReplSubsystem": { + "consumed_by_rules": ["pants.core.goals.repl.run_repl"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_repl"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.Run": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "Run", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.run.run"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.RunDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": ["pants.core"], + "documentation": "Like RunRequest, but launches the process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunDebugAdapterRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.run.run"] + }, + "pants.core.goals.run.RunFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary from a target to run a program/script.", + "is_union": true, + "module": "pants.core.goals.run", + "name": "RunFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployJarFieldSet", + "DockerRunFieldSet", + "GoBinaryFieldSet", + "JavaFieldSet", + "JvmArtifactFieldSet", + "KotlinFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonRequirementFieldSet", + "PythonSourceFieldSet", + "RunShellCommand", + "ScalaFieldSet", + "SystemBinaryFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run.run", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunInSandboxRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "A run request that launches the process in the sandbox for use as part of a build rule.\n\nThe arguments and environment should only use values relative to the build root (or prefixed\nwith `{chroot}`), or refer to binaries that were fetched with `BinaryPathRequest`.\n\nPresently, implementors can opt to use the existing as not guaranteeing hermeticity, which will\ninternally mark the rule as uncacheable. In such a case, non-safe APIs can be used, however,\nthis behavior can result in poorer performance, and only exists as a stop-gap while\nimplementors work to make sure their `RunRequest`-generating rules can be used in a hermetic\ncontext, or writing new custom rules. (See the Plugin Upgrade Guide for details).", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunInSandboxRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.package.deploy_jar", + "pants.jvm.target_types" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.core" + ], + "documentation": "RunRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run.run", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ] + }, + "pants.core.goals.run.RunSubsystem": { + "consumed_by_rules": ["pants.core.goals.run.run"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_run"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.AllOwnedSources": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "All files in the project already owned by targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "AllOwnedSources", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.determine_all_owned_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.DisjointSourcePutativeTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": ["pants.core"], + "documentation": "Putative target whose sources don't overlap with those of any existing targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "DisjointSourcePutativeTarget", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.EditBuildFilesRequest": { + "consumed_by_rules": ["pants.core.goals.tailor.edit_build_files"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "EditBuildFilesRequest(putative_targets: 'PutativeTargets')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditBuildFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.EditedBuildFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": ["pants.core"], + "documentation": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditedBuildFiles", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.tailor.edit_build_files"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.PutativeTarget": { + "consumed_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A potential target to add, detected by various heuristics.\n\nThis class uses the term \"target\" in the loose sense. It can also represent an invocation of a\ntarget-generating macro.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTarget", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.PutativeTargets": { + "consumed_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": ["builtins", "pants.engine.fs", "pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.PutativeTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "PutativeTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": true, + "module": "pants.core.goals.tailor", + "name": "PutativeTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PutativeDockerTargetsRequest", + "PutativeGoTargetsRequest", + "PutativeHelmTargetsRequest", + "PutativeJavaTargetsRequest", + "PutativeKotlinTargetsRequest", + "PutativeOpenApiTargetsRequest", + "PutativeProtobufTargetsRequest", + "PutativePythonTargetsRequest", + "PutativeScalaTargetsRequest", + "PutativeShellTargetsRequest", + "PutativeTerraformTargetsRequest", + "PutativeThriftTargetsRequest" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.tailor.TailorGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorGoal", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.tailor.tailor"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.TailorSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.tailor" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_tailor"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.UniquelyNamedPutativeTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependents": ["pants.core"], + "documentation": "Putative targets that have no name conflicts with existing targets (or each other).", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "UniquelyNamedPutativeTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.tailor.tailor"] + }, + "pants.core.goals.test.Batch": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "Batch", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.test.BuildPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "BuildPackageDependenciesRequest(field: 'RuntimePackageDependenciesField')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuildPackageDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.BuiltPackageDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependents": ["pants.backend.python", "pants.backend.shell"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuiltPackageDependencies", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.CoverageDataCollection": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go", "pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "CoverageDataCollection", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCoverageDataCollection", + "PytestCoverageDataCollection" + ], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.CoverageReports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": ["pants.core"], + "documentation": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "CoverageReports", + "provider": "pants.backend.experimental.go, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.PartitionRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.partition_python_tests" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "PartitionRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.test.Test": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.console", + "pants.engine.desktop", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.session", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "Test", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.test.run_tests"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.core"], + "documentation": "Like TestDebugRequest, but launches the test process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.TestDebugRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "TestDebugRequest(process: 'InteractiveProcess')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.TestExtraEnv": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "TestExtraEnv(env: 'EnvironmentVars')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestExtraEnv", + "provider": "pants.core", + "returned_by_rules": ["pants.core.goals.test.get_filtered_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary to run tests on a target.", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestFieldSet", + "HelmUnitTestFieldSet", + "JunitTestFieldSet", + "PythonTestFieldSet", + "ScalatestTestFieldSet", + "Shunit2FieldSet", + "TestShellCommandFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "Base class for plugin types wanting to be run as part of `test`.\n\nPlugins should define a new type which subclasses this type, and set the\nappropriate class variables.\nE.g.\n class DryCleaningRequest(TestRequest):\n tool_subsystem = DryCleaningSubsystem\n field_set_type = DryCleaningFieldSet\n\nThen register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules(),\n ]", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestRequest", + "HelmUnitTestRequest", + "JunitTestRequest", + "PyTestRequest", + "ScalatestTestRequest", + "ShellTestRequest", + "Shunit2TestRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process" + ], + "dependents": ["pants.core"], + "documentation": "TestResult(exit_code: 'int | None', stdout_bytes: 'bytes', stdout_digest: 'FileDigest', stderr_bytes: 'bytes', stderr_digest: 'FileDigest', addresses: 'tuple[Address, ...]', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', partition_description: 'str | None' = None, coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None, log_extra_output: 'bool' = False)", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestResult", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.jvm.test.junit.run_junit_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.goals.test.TestSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_test", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.test.run_tests", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_test"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithBlackRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithBlackRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithYapfRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithYapfRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedFieldsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedFieldsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedTargetsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RewrittenBuildFile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": ["pants.core"], + "documentation": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.RewrittenBuildFileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "RewrittenBuildFileRequest(path: 'str', lines: 'tuple[str, ...]', colors_enabled: 'bool')", + "is_union": true, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFileRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "FormatWithBlackRequest", + "FormatWithYapfRequest", + "RenameDeprecatedFieldsRequest", + "RenameDeprecatedTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_update_build_files"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.debug_adapter.DebugAdapterSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.python", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.debug_adapter", + "name": "DebugAdapterSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_debug_adapter"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": ["construct_env_aware_scope_python_bootstrap"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrap": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "PythonBootstrap(interpreter_names: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrap", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrapSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_python_bootstrap", + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrapSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_python_bootstrap"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap._ExpandInterpreterSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "_ExpandInterpreterSearchPathsRequest(interpreter_search_paths: 'Collection[str]', env_tgt: 'EnvironmentTarget')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_ExpandInterpreterSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.subsystems.python_bootstrap._SearchPaths": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": "_SearchPaths(paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_SearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.target_types.AllAssetTargets": { + "consumed_by_rules": ["pants.core.target_types.map_assets_by_path"], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.core"], + "documentation": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargets", + "provider": "pants.core", + "returned_by_rules": ["pants.core.target_types.find_all_assets"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.target_types.AllAssetTargetsByPath": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm", "pants.backend.python"], + "documentation": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsByPath", + "provider": "pants.core", + "returned_by_rules": ["pants.core.target_types.map_assets_by_path"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ] + }, + "pants.core.target_types.ArchiveFieldSet": { + "consumed_by_rules": ["pants.core.target_types.package_archive_target"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ArchiveFieldSet(address: 'Address', packages: 'ArchivePackagesField', files: 'ArchiveFilesField', format_field: 'ArchiveFormatField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.core.target_types", + "name": "ArchiveFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateFileSourceRequest": { + "consumed_by_rules": ["pants.core.target_types.hydrate_file_source"], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateFileSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateResourceSourceRequest": { + "consumed_by_rules": ["pants.core.target_types.hydrate_resource_source"], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateResourceSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.RelocateFilesViaCodegenRequest": { + "consumed_by_rules": ["pants.core.target_types.relocate_files"], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "RelocateFilesViaCodegenRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries.GunzipBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GunzipBinary(python_binary: 'PythonBuildStandaloneBinary')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "GunzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.util_rules.archive.maybe_extract_archive"] + }, + "pants.core.util_rules.adhoc_binaries.PythonBuildStandaloneBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": "A Python interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nThis interpreter is provided by Python Build Standalone https://gregoryszorc.com/docs/python-build-standalone/main/,\nwhich has a few caveats. Namely it doesn't play nicely with third-party sdists. Meaning Pants'\nscripts being run by Python Build Standalone should avoid third-party sdists.", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries._DownloadPythonBuildStandaloneBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_DownloadPythonBuildStandaloneBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_binaries._PythonBuildStandaloneBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.env_vars", + "pants.engine.platform" + ], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "AdhocProcessRequest(description: 'str', address: 'Address', working_directory: 'str', root_output_directory: 'str', argv: 'tuple[str, ...]', timeout: 'int | None', input_digest: 'Digest', immutable_input_digests: 'FrozenDict[str, Digest] | None', append_only_caches: 'FrozenDict[str, str] | None', output_files: 'tuple[str, ...]', output_directories: 'tuple[str, ...]', fetch_env_vars: 'tuple[str, ...]', supplied_env_var_values: 'FrozenDict[str, str] | None', log_on_process_errors: 'FrozenDict[int, str] | None', log_output: 'bool', capture_stdout_file: 'str | None', capture_stderr_file: 'str | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "AdhocProcessResult(process_result: 'ProcessResult', adjusted_digest: 'Digest')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessResult", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.core.util_rules.adhoc_process_support.ExtraSandboxContents": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "ExtraSandboxContents(digest: 'Digest', path: 'str | None', immutable_input_digests: 'Mapping[str, Digest]', append_only_caches: 'Mapping[str, str]', extra_env: 'Mapping[str, str]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ExtraSandboxContents", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.MergeExtraSandboxContents": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "MergeExtraSandboxContents(additions: 'tuple[ExtraSandboxContents, ...]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "MergeExtraSandboxContents", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolveExecutionDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "dependencies": [], + "dependents": ["pants.backend.shell"], + "documentation": "ResolveExecutionDependenciesRequest(address: 'Address', execution_dependencies: 'tuple[str, ...] | None', runnable_dependencies: 'tuple[str, ...] | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolveExecutionDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolvedExecutionDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": ["pants.backend.experimental.adhoc", "pants.backend.shell"], + "documentation": "ResolvedExecutionDependencies(digest: 'Digest', runnable_dependencies: 'RunnableDependencies | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.archive.CreateArchive": { + "consumed_by_rules": ["pants.core.util_rules.archive.create_archive"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "A request to create an archive.\n\nAll files in the input snapshot will be included in the resulting archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "CreateArchive", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.target_types.package_archive_target"] + }, + "pants.core.util_rules.archive.ExtractedArchive": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": ["pants.core"], + "documentation": "The result of extracting an archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "ExtractedArchive", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.core.util_rules.archive.MaybeExtractArchiveRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": ["pants.core"], + "documentation": "A request to extract a single archive file (otherwise returns the input digest).\n\n:param digest: The digest of the archive to maybe extract. If the archive contains a single file\n which matches a known suffix, the `ExtractedArchive` will contain the extracted digest.\n Otherwise the `ExtractedArchive` will contain this digest.\n:param use_suffix: If provided, extracts the single file archive as if it had this suffix.\n Useful in situations where the file is archived then renamed.\n (E.g. A Python `.whl` is a renamed `.zip`, so the client should provide `\".zip\"`)", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "MaybeExtractArchiveRequest", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.asdf.AsdfToolPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "AsdfToolPathsRequest(env_tgt: 'EnvironmentTarget', tool_name: 'str', tool_description: 'str', resolve_standard: 'bool', resolve_local: 'bool', paths_option_name: 'str', bin_relpath: 'str' = 'bin')", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.asdf.AsdfToolPathsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.base.build_root", "pants.engine.env_vars"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": "AsdfToolPathsResult(tool_name: 'str', standard_tool_paths: 'tuple[str, ...]' = (), local_tool_paths: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.config_files.ConfigFiles": { + "consumed_by_rules": [], + "dependencies": ["builtins", "pants.engine.fs"], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Config files used by a tool run by Pants.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.config_files.ConfigFilesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Resolve the specified config files if given, else look for candidate config files if\ndiscovery is enabled.\n\nFiles in `check_existence` only need to exist, whereas files in `check_content` both must exist\nand contain the bytes snippet in the file.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.distdir.DistDir": { + "consumed_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.lint.lint", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests" + ], + "dependencies": ["pants.base.build_root"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "The directory to which we write distributable files.", + "is_union": false, + "module": "pants.core.util_rules.distdir", + "name": "DistDir", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.distdir.get_distdir"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.environments.EnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "EnvironmentNameRequest(raw_value: 'str', description_of_origin: 'str')", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "EnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "pants.core.goals.lint.lint", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run" + ] + }, + "pants.core.util_rules.environments.OptionField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "OptionField", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.core.util_rules.environments.SingleEnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Asserts that all of the given environment strings resolve to the same EnvironmentName.", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "SingleEnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.core.util_rules.external_tool.DownloadedExternalTool": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "DownloadedExternalTool", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.external_tool.ExternalToolRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ExternalToolRequest(download_file_request: 'DownloadFile', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "ExternalToolRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.partitions.Partitions": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.kotlin", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": ["pants.core"], + "documentation": "A collection of (, ) pairs.\n\nWhen implementing a plugin, one of your rules will return this type, taking in a\n`PartitionRequest` specific to your plugin.\n\nThe return likely will fit into one of:\n - Returning empty partitions: E.g. if your tool is being skipped.\n - Returning one partition. The partition may contain all of the inputs\n (as will likely be the case for target-based plugins) or a subset (which will likely be the\n case for targetless plugins).\n - Returning >1 partition. This might be the case if you can't run\n the tool on all the inputs at once. E.g. having to run a Python tool on XYZ with Py3,\n and files ABC with Py2.", + "is_union": false, + "module": "pants.core.util_rules.partitions", + "name": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations, pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python, pants.backend.python.lint.autoflake, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell, pants.backend.shell.lint.shellcheck, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble", + "returned_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.project_info.regex_lint.partition_inputs", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.util_rules.search_paths.ValidateSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.search_paths.validate_search_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "ValidateSearchPathsRequest(env_tgt: 'EnvironmentTarget', search_paths: 'tuple[str, ...]', option_origin: 'str', environment_key: 'str', is_default: 'bool', local_only: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "ValidateSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.search_paths.ValidatedSearchPaths": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": "Search paths that are valid for the current target environment.", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "ValidatedSearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.search_paths.validate_search_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.search_paths.VersionManagerSearchPaths": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "VersionManagerSearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.search_paths.VersionManagerSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "VersionManagerSearchPathsRequest(env_tgt: 'EnvironmentTarget', root_dir: 'str | None', tool_path: 'str', option: 'str', version_files: 'tuple[str, ...]' = (), local_token: 'str | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "VersionManagerSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.source_files.SourceFiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "dependencies": ["builtins", "pants.backend.experimental.go"], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A merged snapshot of the `sources` fields of multiple targets.", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.source_files.determine_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.source_files.SourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.core.util_rules.source_files.determine_source_files" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala", "pants.core"], + "documentation": "SourceFilesRequest(sources_fields: Iterable[pants.engine.target.SourcesField], *, for_sources_types: Iterable[Type[pants.engine.target.SourcesField]] = (,), enable_codegen: bool = False)", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "StrippedFileName(value: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileName", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileNameRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "StrippedFileNameRequest(file_path: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFileNames": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [], + "documentation": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFileNames", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironment": { + "consumed_by_rules": ["construct_env_aware_scope_subprocess_environment"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironment", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_subprocess_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironmentVars": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": ["pants.engine.env_vars"], + "dependents": ["pants.core"], + "documentation": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironmentVars", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.BashBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The `bash` binary.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.get_bash"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.cgo_binaries", + "pants.core" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "BinaryPath(path: 'str', fingerprint: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPathRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request to find a binary of a given name.\n\nIf `check_file_entries` is `True` a BinaryPathRequest will consider any entries in the\n`search_path` that are file paths in addition to traditional directory paths.\n\nIf a `test` is specified all binaries that are found will be executed with the test args and\nonly those binaries whose test executions exit with return code 0 will be retained.\nAdditionally, if test execution includes stdout content, that will be used to fingerprint the\nbinary path so that upgrades and downgrades can be detected. A reasonable test for many programs\nmight be `BinaryPathTest(args=[\"--version\"])` since it will both ensure the program runs and\nalso produce stdout text that changes upon upgrade or downgrade of the binary at the discovered\npath.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPathRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPaths": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShims": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell" + ], + "documentation": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `immutable_input_digests`\nprovided to the `Process`, and `path_component` included in its `PATH` environment variable.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShims", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShimsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Request to create shims for one or more system binaries.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShimsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.CatBinary": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.helm"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CatBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_cat"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ChmodBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ChmodBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_chmod"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.CpBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CpBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_cp"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.DiffBinary": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format" + ], + "dependencies": [], + "dependents": ["pants.backend.codegen.protobuf.lint.buf"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_diff"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.GitBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GitBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_git"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.LnBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "LnBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_ln"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MaybeGitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "pants.vcs.git.get_git_worktree" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MaybeGitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git", + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MkdirBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MkdirBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_mkdir"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MktempBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MktempBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mktemp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MvBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": ["pants.backend.python.typecheck.mypy"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MvBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_mv"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.OpenBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "OpenBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_open"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinary": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.TarBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": ["pants.engine.platform"], + "dependents": ["pants.core"], + "documentation": "TarBinary(path: 'str', fingerprint: 'str', platform: 'Platform')", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_tar"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TouchBinary": { + "consumed_by_rules": ["pants.jvm.resources.assemble_resources_jar"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TouchBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_touch"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.UnzipBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.run.create_run_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_unzip"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.util_rules.archive.maybe_extract_archive"] + }, + "pants.core.util_rules.system_binaries.ZipBinary": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinary", + "provider": "pants.core", + "returned_by_rules": ["pants.core.util_rules.system_binaries.find_zip"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.util_rules.archive.create_archive"] + }, + "pants.core.util_rules.wrap_source.GenerateWrapSourceSourcesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.wrap_source", + "name": "GenerateWrapSourceSourcesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.engine.addresses.Addresses": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.filter_targets.filter_targets", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.engine.internals.graph.coarsened_targets_request", + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.build_graph.address", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.addresses", + "name": "Addresses", + "provider": "pants.backend.experimental.go, pants.engine.addresses", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.addresses.UnparsedAddressInputs": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go", "pants.core"], + "documentation": "Raw addresses that have not been parsed yet.\n\nYou can convert these into fully normalized `Addresses` and `Targets` like this:\n\n await Get(Addresses, UnparsedAddressInputs([\"//:tgt1\", \"//:tgt2\"], owning_address=None)\n await Get(Targets, UnparsedAddressInputs([...], owning_address=Address(\"original\"))\n\nThis is intended for contexts where the user specifies addresses outside of the `dependencies`\nfield, such as through an option or a special field on a target that is not normal\n`dependencies`. You should not use this to resolve the `dependencies` field; use\n`await Get(Addresses, DependenciesRequest)` for that.\n\nIf the addresses are coming from a target's fields, set `owning_address` so that relative\nreferences like `:sibling` work properly.\n\nUnlike the `dependencies` field, this type does not work with `!` and `!!` ignores.\n\nSet `description_of_origin` to a value like \"CLI arguments\" or \"the `dependencies` field\nfrom {tgt.address}\". It is used for better error messages.", + "is_union": false, + "module": "pants.engine.addresses", + "name": "UnparsedAddressInputs", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ] + }, + "pants.engine.desktop.OpenFilesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "OpenFilesRequest(files: Iterable[pathlib.PurePath], *, error_if_open_not_found: bool = True)", + "is_union": false, + "module": "pants.engine.desktop", + "name": "OpenFilesRequest", + "provider": "pants.engine.desktop", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.core.goals.test.run_tests"] + }, + "pants.engine.env_vars.EnvironmentVarsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Requests a subset of the variables set in the environment.\n\nRequesting only the relevant subset of the environment reduces invalidation caused by unrelated\nchanges.", + "is_union": false, + "module": "pants.engine.env_vars", + "name": "EnvironmentVarsRequest", + "provider": "pants.engine.env_vars", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_env_aware_scope_apache_thrift", + "construct_env_aware_scope_docker", + "construct_env_aware_scope_go_generate", + "construct_env_aware_scope_golang", + "construct_env_aware_scope_jvm", + "construct_env_aware_scope_nodejs", + "construct_env_aware_scope_pex", + "construct_env_aware_scope_python_bootstrap", + "construct_env_aware_scope_python_native_code", + "construct_env_aware_scope_shell_setup", + "construct_env_aware_scope_subprocess_environment", + "construct_env_aware_scope_test", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.core.goals.export.export", + "pants.core.goals.test.get_filtered_environment", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.environment.EnvironmentName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The normalized name for an environment, from `[environments-preview].names`, after applying\nthings like the __local__ matcher.\n\nNote that we have this type, rather than only `EnvironmentTarget`, for a more efficient rule\ngraph. This node impacts the equality of many downstream nodes, so we want its identity to only\nbe a single string, rather than a Target instance.", + "is_union": false, + "module": "pants.engine.environment", + "name": "EnvironmentName", + "provider": "pants.engine.environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish", + "pants.core.goals.test.run_tests", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.fs.CreateDigest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to create a Digest with the input FileContent/FileEntry/SymlinkEntry/Directory\nvalues.\n\nThe engine will create any parent directories necessary, e.g. `FileContent('a/b/c.txt')` will\nresult in `a/`, `a/b`, and `a/b/c.txt` being created. You only need to use `Directory` to\ncreate an empty directory.\n\nThis does _not_ actually materialize the digest to the build root. You must use\n`engine.fs.Workspace` in a `@goal_rule` to save the resulting digest to disk.", + "is_union": false, + "module": "pants.engine.fs", + "name": "CreateDigest", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.javascript.package_json.pnpm_workspace_files", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_setup_py", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors" + ] + }, + "pants.engine.fs.DigestSubset": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to get a subset of a digest.\n\nThe digest will be traversed symlink-oblivious to match the provided globs. If you require a\nsymlink-aware subset, you can access the digest's entries `Get(DigestEntries, Digest, digest)`,\nfilter them out, and create a new digest: `Get(Digest, CreateDigest(...))`.\n\nExample:\n\n result = await Get(Digest, DigestSubset(original_digest, PathGlobs([\"subdir1\", \"f.txt\"]))", + "is_union": false, + "module": "pants.engine.fs", + "name": "DigestSubset", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.dists.find_build_system", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "pants.engine.fs.DownloadFile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Retrieve the contents of a file via an HTTP GET request or directly for local file:// URLs.\n\nTo compute the `expected_digest`, manually download the file, then run `shasum -a 256` to\ncompute the fingerprint and `wc -c` to compute the expected length of the downloaded file in\nbytes.", + "is_union": false, + "module": "pants.engine.fs", + "name": "DownloadFile", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.engine.fs.FileContent": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.parse_package_json" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "The content of a file.\n\nThis can be used to create a new Digest with `Get(Digest, CreateDigest)`. You can also get back\na list of `FileContent` objects by using `Get(DigestContents, Digest)`.", + "is_union": false, + "module": "pants.engine.fs", + "name": "FileContent", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.read_package_jsons" + ] + }, + "pants.engine.fs.PathGlobs": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.read_package_jsons" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.openapi.lint.spectral"], + "documentation": "PathGlobs(globs: 'Iterable[str]', glob_match_error_behavior: 'GlobMatchErrorBehavior' = , conjunction: 'GlobExpansionConjunction' = , description_of_origin: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.fs", + "name": "PathGlobs", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.package_json.all_package_json", + "pants.backend.javascript.package_json.package_json_for_source", + "pants.backend.javascript.package_json.parse_package_json", + "pants.backend.javascript.package_json.pnpm_workspace_files", + "pants.backend.javascript.package_json.read_package_jsons", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.core.goals.fix.fix_batch", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.util_rules.config_files.find_config_file", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_source_paths", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ] + }, + "pants.engine.internals.build_files.AddressFamilyDir": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The directory to find addresses for.\n\nThis does _not_ recurse into subdirectories.", + "is_union": false, + "module": "pants.engine.internals.build_files", + "name": "AddressFamilyDir", + "provider": "pants.engine.internals.build_files", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.peek.get_target_data"] + }, + "pants.engine.internals.graph.GenerateFileTargets": { + "consumed_by_rules": [ + "pants.engine.internals.graph.generate_file_targets" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "GenerateFileTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.engine.internals.graph.Owners": { + "consumed_by_rules": [], + "dependencies": [ + "pants.build_graph.address", + "pants.core", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "Owners", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.find_owners"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.OwnersRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.find_owners"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request for the owners of a set of file paths.\n\nTODO: This is widely used as an effectively-public API. It should probably move to\n`pants.engine.target`.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "OwnersRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.ResolveAllTargetGeneratorRequests": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ResolveAllTargetGeneratorRequests(description_of_origin: 'str', of_type: 'type[TargetGenerator] | None' = None)", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolveAllTargetGeneratorRequests", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.all_package_json" + ] + }, + "pants.engine.internals.graph.ResolveTargetGeneratorRequests": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ResolveTargetGeneratorRequests(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolveTargetGeneratorRequests", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph.ResolvedTargetGeneratorRequests": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.internals.mapper", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "ResolvedTargetGeneratorRequests(requests: 'tuple[GenerateTargetsRequest, ...]' = ())", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_generator_target_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.all_package_json", + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph.SubprojectRoots": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "SubprojectRoots", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_subproject_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph.WrappedTargetForBootstrap": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target", "pants.engine.unions"], + "dependents": [], + "documentation": "Used to avoid a rule graph cycle when evaluating bootstrap targets.\n\nThis does not work with target generation and parametrization. It also ignores any unrecognized\nfields in the target, to accommodate plugin fields which are not yet registered during\nbootstrapping.\n\nThis should only be used by bootstrapping code.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph._AdaptorAndType": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.internals.graph", + "pants.engine.internals.target_adaptor", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_AdaptorAndType(adaptor: 'TargetAdaptor', target_type: 'type[Target]')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_AdaptorAndType", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph._DependencyMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_DependencyMapping(mapping: 'FrozenDict[Address, tuple[Address, ...]]', visited: 'FrozenOrderedSet[Target]', roots_as_targets: 'Collection[Target]')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.graph._DependencyMappingRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_DependencyMappingRequest(tt_request: 'TransitiveTargetsRequest', expanded_targets: 'bool')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMappingRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.graph._RequestAdaptorAndType": { + "consumed_by_rules": [ + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_RequestAdaptorAndType(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_RequestAdaptorAndType", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizations": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.engine.internals.parametrize", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala" + ], + "documentation": "All parametrizations and generated targets for a single input Address.\n\nIf a Target has been parametrized, the original Target might _not_ be present, due to no Target\nbeing addressable at the un-parameterized Address.", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizations", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizationsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "_TargetParametrizationsRequest(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizationsRequest", + "provider": "pants.engine.internals.parametrize", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.synthetic_targets.SyntheticAddressMaps": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A collection of `SyntheticAddressMap` for all synthetic target adaptors.", + "is_union": false, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticAddressMaps", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.synthetic_targets.SyntheticTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Union members of the `SyntheticTargetsRequest` should implement a rule returning an instance\nof a `SyntheticAddressMaps`.", + "is_union": true, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticTargetsRequest", + "provider": "pants.engine.internals.synthetic_targets", + "returned_by_rules": [], + "union_members": ["PythonSyntheticLockfileTargetsRequest"], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.target_adaptor.TargetAdaptorRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Lookup the TargetAdaptor for an Address.", + "is_union": false, + "module": "pants.engine.internals.target_adaptor", + "name": "TargetAdaptorRequest", + "provider": "pants.engine.internals.target_adaptor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ] + }, + "pants.engine.process.FallibleProcessResult": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "Result of executing a process which might fail.\n\nIf the process has a non-zero exit code, this will not raise an exception, unlike ProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "FallibleProcessResult", + "provider": "pants.backend.experimental.python.lint.ruff, pants.engine.process", + "returned_by_rules": ["pants.backend.python.lint.ruff.rules.run_ruff"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.engine.process.InteractiveProcess": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell", + "pants.backend.terraform.goals.deploy", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm", + "pants.backend.experimental.terraform" + ], + "documentation": "InteractiveProcess(argv: 'Iterable[str]', *, env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), run_in_workspace: 'bool' = False, forward_signals_to_process: 'bool' = True, restartable: 'bool' = False, append_only_caches: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, keep_sandboxes: 'KeepSandboxes' = ) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "InteractiveProcess", + "provider": "pants.backend.experimental.helm, pants.backend.experimental.terraform, pants.engine.process", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.terraform.goals.deploy.run_terraform_deploy", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.export.export", + "pants.core.goals.publish.run_publish", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.process.Process": { + "consumed_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.sdk", + "pants.backend.helm.util_rules.tool", + "pants.backend.javascript.nodejs_project_environment", + "pants.backend.javascript.subsystems.nodejs", + "pants.backend.javascript.subsystems.nodejs_tool", + "pants.backend.python", + "pants.backend.terraform.dependency_inference", + "pants.backend.terraform.tool", + "pants.engine.env_vars", + "pants.engine.platform", + "pants.jvm.jdk_rules", + "pants.jvm.resolve.coursier_setup" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell" + ], + "documentation": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , remote_cache_speculation_delay_millis: 'int' = 0) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "Process", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.terraform, pants.backend.shell, pants.core, pants.engine.process", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.process.ProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Result of executing a process which should not fail.\n\nIf the process has a non-zero exit code, this will raise an exception, unlike\nFallibleProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessResult", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.engine.process.ProductDescription": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core" + ], + "dependents": ["pants.backend.experimental.helm"], + "documentation": "ProductDescription(value: 'str')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProductDescription", + "provider": "pants.backend.experimental.helm, pants.engine.process", + "returned_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactory": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "is_union": false, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactory", + "provider": "pants.backend.experimental.tools.workunit_logger, pants.core", + "returned_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback", + "pants.goal.stats_aggregator.construct_callback" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.tools.workunit_logger", + "pants.core" + ], + "documentation": "A request for a particular WorkunitsCallbackFactory.", + "is_union": true, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactoryRequest", + "provider": "pants.engine.streaming_workunit_handler", + "returned_by_rules": [], + "union_members": [ + "StatsAggregatorCallbackFactoryRequest", + "WorkunitLoggerCallbackFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.AllTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "pants.backend.docker.target_types.all_docker_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.helm.target_types.all_helm_artifact_targets", + "pants.backend.helm.target_types.all_helm_chart_targets", + "pants.backend.helm.target_types.all_helm_deployment_targets", + "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "pants.backend.javascript.package_json.all_first_party_node_package_targets", + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions", + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "pants.backend.shell.dependency_inference.find_all_shell_targets", + "pants.backend.terraform.target_types.all_terraform_deployment_targets", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.target_types.find_all_assets", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": ["pants.core"], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.shell", + "pants.core" + ], + "documentation": "All targets in the project, but with target generators replaced by their generated targets,\nunlike `AllUnexpandedTargets`.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.find_all_targets"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.engine.target.AllUnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": ["pants.engine.target"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core" + ], + "documentation": "All targets in the project, including generated targets.\n\nThis should generally be avoided because it is relatively expensive to compute and is frequently\ninvalidated, but it can be necessary for things like dependency inference to build a global\nmapping of imports to targets.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_all_unexpanded_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.CoarsenedTargets": { + "consumed_by_rules": [ + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "dependencies": ["pants.engine.environment"], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "The CoarsenedTarget roots of a transitive graph walk for some addresses.\n\nTo collect all reachable CoarsenedTarget members, use `def closure`.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": ["pants.engine.internals.graph.coarsened_targets"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.jvm.classpath.classpath", + "pants.jvm.run.create_run_request" + ] + }, + "pants.engine.target.CoarsenedTargetsRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.coarsened_targets"], + "dependencies": ["pants.engine.addresses"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request to get CoarsenedTargets for input roots.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.coarsened_targets_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions" + ] + }, + "pants.engine.target.DependenciesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "DependenciesRequest(field: 'Dependencies', should_traverse_deps_predicate: 'ShouldTraverseDepsPredicate' = TraverseIfDependenciesField())", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.package_json.find_owning_package", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.jvm.package.war.package_war" + ] + }, + "pants.engine.target.DependenciesRuleApplicationRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to return the applicable dependency rule action for each dependency of a target.", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRuleApplicationRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.backend.project_info.peek.get_target_data"] + }, + "pants.engine.target.ExplicitlyProvidedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The literal addresses from a BUILD file `dependencies` field.\n\nAlmost always, you should use `await Get(Addresses, DependenciesRequest)` instead, which will\nconsider dependency inference and apply ignores. However, this type can be\nuseful particularly within inference rules to see if a user already explicitly\nprovided a dependency.\n\nResolve using `await Get(ExplicitlyProvidedDependencies, DependenciesRequest)`.\n\nNote that the `includes` are not filtered based on the `ignores`: this type preserves exactly\nwhat was in the BUILD file.", + "is_union": false, + "module": "pants.engine.target", + "name": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.ExplicitlyProvidedDependenciesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ExplicitlyProvidedDependenciesRequest(field: 'Dependencies')", + "is_union": false, + "module": "pants.engine.target", + "name": "ExplicitlyProvidedDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldDefaultFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java", "pants.backend.python"], + "documentation": "Registers a dynamic default for a Field.\n\nSee `FieldDefaults`.", + "is_union": true, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "JvmResolveFieldDefaultFactoryRequest", + "PythonResolveFieldDefaultFactoryRequest" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.field_defaults"] + }, + "pants.engine.target.FieldDefaultFactoryResult": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A wrapper for a function which computes the default value of a Field.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.field_defaults"] + }, + "pants.engine.target.FieldDefaults": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "Generic Field default values. To install a default, see `FieldDefaultFactoryRequest`.\n\nTODO: This is to work around the fact that Field value defaulting cannot have arbitrary\nsubsystem requirements, and so e.g. `JvmResolveField` and `PythonResolveField` have methods\nwhich compute the true value of the field given a subsytem argument. Consumers need to\nbe type aware, and `@rules` cannot have dynamic requirements.\n\nAdditionally, `__defaults__` should mean that computed default Field values should become\nmore rare: i.e. `JvmResolveField` and `PythonResolveField` could potentially move to\nhardcoded default values which users override with `__defaults__` if they'd like to change\nthe default resolve names.\n\nSee https://github.com/pantsbuild/pants/issues/12934 about potentially allowing unions\n(including Field registrations) to have `@rule_helper` methods, which would allow the\ncomputation of an AsyncField to directly require a subsystem. Since\nhttps://github.com/pantsbuild/pants/pull/17947 rules may use any methods as rule helpers without\nspecial decoration so this should now be possible to implement.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaults", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.field_defaults"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldSetsPerTarget": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target", "pants.engine.unions"], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.shell", + "pants.core" + ], + "documentation": "FieldSetsPerTarget(collection: 'Iterable[Iterable[_FS]]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.FieldSetsPerTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "FieldSetsPerTargetRequest(field_set_superclass: 'Type[_FS]', targets: 'Iterable[Target]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.GenerateSourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A request to go from protocol sources -> a particular language.\n\nThis should be subclassed for each distinct codegen implementation. The subclasses must define\nthe class properties `input` and `output`. The subclass must also be registered via\n`UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest)`, for example.\n\nThe rule to actually implement the codegen should take the subclass as input, and it must\nreturn `GeneratedSources`.\n\nThe `exportable` attribute disables the use of this codegen by the `export-codegen` goal when\nset to False.\n\nFor example:\n\n class GenerateFortranFromAvroRequest:\n input = AvroSources\n output = FortranSources\n\n @rule\n def generate_fortran_from_avro(request: GenerateFortranFromAvroRequest) -> GeneratedSources:\n ...\n\n def rules():\n return [\n generate_fortran_from_avro,\n UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateDockerContextFiles", + "GenerateDockerfileRequest", + "GenerateFileSourceRequest", + "GenerateFilesFromAdhocToolRequest", + "GenerateFilesFromShellCommandRequest", + "GenerateGoFromProtobufRequest", + "GenerateJavaFromProtobufRequest", + "GeneratePythonFromProtobufRequest", + "GeneratePythonFromSetuptoolsSCMRequest", + "GeneratePythonFromThriftRequest", + "GenerateResourceSourceRequest", + "GenerateScalaFromProtobufRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "RelocateFilesViaCodegenRequest" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.hydrate_sources"] + }, + "pants.engine.target.GenerateTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.plugin_development", + "pants.backend.python" + ], + "documentation": "GenerateTargetsRequest(generator: '_TargetGenerator', template_address: 'Address', template: 'dict[str, Any]', overrides: 'dict[str, dict[Address, dict[str, Any]]]')", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateFileTargets", + "GenerateFromPantsRequirementsRequest", + "GenerateFromPipenvRequirementsRequest", + "GenerateFromPoetryRequirementsRequest", + "GenerateFromPythonRequirementsRequest", + "GenerateJvmArtifactForScalaTargets", + "GenerateNodePackageTargets", + "GenerateTargetsFromGoModRequest", + "GenerateTargetsFromPexBinaries" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.GeneratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "GeneratedSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.hydrate_sources"] + }, + "pants.engine.target.GeneratedTargets": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.java", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.fs", + "pants.engine.internals.target_adaptor", + "pants.engine.unions" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A mapping of the address of generated targets to the targets themselves.", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedTargets", + "provider": "pants.backend.experimental.go, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.scala, pants.backend.plugin_development, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.javascript.package_json.generate_node_package_targets", + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "pants.backend.scala.target_types.generate_jvm_artifact_targets", + "pants.engine.internals.graph.generate_file_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.HydrateSourcesRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.hydrate_sources"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "HydrateSourcesRequest(field: 'SourcesField', *, for_sources_types: 'Iterable[type[SourcesField]]' = (,), enable_codegen: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "HydrateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.HydratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The result of hydrating a SourcesField.\n\nThe `sources_type` will indicate which of the `HydrateSourcesRequest.for_sources_type` the\nresult corresponds to, e.g. if the result comes from `FilesSources` vs. `PythonSources`. If this\nvalue is None, then the input `SourcesField` was not one of the expected types; or, when codegen\nwas enabled in the request, there was no valid code generator to generate the requested language\nfrom the original input. This property allows for switching on the result, e.g. handling\nhydrated files() sources differently than hydrated Python sources.", + "is_union": false, + "module": "pants.engine.target", + "name": "HydratedSources", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.hydrate_sources"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.InferDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A request to infer dependencies by analyzing source files.\n\nTo set up a new inference implementation, subclass this class. Set the class property\n`infer_from` to the FieldSet subclass you are able to infer from. This will cause the FieldSet\nclass, and any subclass, to use your inference implementation.\n\nNote that there cannot be more than one implementation for a particular `FieldSet` class.\n\nRegister this subclass with `UnionRule(InferDependenciesRequest, InferFortranDependencies)`, for example.\n\nThen, create a rule that takes the subclass as a parameter and returns `InferredDependencies`.\n\nFor example:\n\n class InferFortranDependencies(InferDependenciesRequest):\n infer_from = FortranDependenciesInferenceFieldSet\n\n @rule\n def infer_fortran_dependencies(request: InferFortranDependencies) -> InferredDependencies:\n hydrated_sources = await Get(HydratedSources, HydrateSources(request.sources))\n ...\n return InferredDependencies(...)\n\n def rules():\n return [\n infer_fortran_dependencies,\n UnionRule(InferDependenciesRequest, InferFortranDependencies),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "InferDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "InferApacheThriftPythonDependencies", + "InferConftestDependencies", + "InferDockerDependencies", + "InferGoBinaryMainDependencyRequest", + "InferGoPackageDependenciesRequest", + "InferGoThirdPartyPackageDependenciesRequest", + "InferHelmChartDependenciesRequest", + "InferHelmDeploymentDependenciesRequest", + "InferHelmUnitTestChartDependencyRequest", + "InferInitDependencies", + "InferJSDependenciesRequest", + "InferJavaSourceDependencies", + "InferKotlinJunitTestDependencyRequest", + "InferKotlinRuntimeDependencyRequest", + "InferKotlinSourceDependencies", + "InferNodePackageDependenciesRequest", + "InferOpenApiDocumentDependenciesRequest", + "InferOpenApiSourceDependenciesRequest", + "InferPexBinaryEntryPointDependency", + "InferProtobufDependencies", + "InferProtobufJavaRuntimeDependencyRequest", + "InferPythonDistributionDependencies", + "InferPythonFaaSHandlerDependency", + "InferPythonImportDependencies", + "InferPythonProtobufDependencies", + "InferScalaLibraryDependencyRequest", + "InferScalaPBRuntimeDependencyRequest", + "InferScalaPluginDependenciesRequest", + "InferScalaSourceDependencies", + "InferShellDependencies", + "InferStevedoreNamespacesDependencies", + "InferTerraformModuleDependenciesRequest", + "InferThriftDependencies" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.InferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.addresses", + "pants.engine.fs", + "pants.engine.internals.native_dep_inference" + ], + "dependents": ["pants.backend.experimental.go"], + "documentation": "InferredDependencies(include: 'Iterable[Address]', *, exclude: 'Iterable[Address]' = ()) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "InferredDependencies", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.framework.stevedore, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.PluginField": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": true, + "module": "pants.engine.target", + "name": "PluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField", + "OptionField" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.SourcesPaths": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "dependencies": ["pants.engine.fs", "pants.engine.target"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "The resolved file names of the `source`/`sources` field.\n\nThis does not consider codegen, and only captures the files from the field.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPaths", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.SourcesPathsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request to resolve the file names of the `source`/`sources` field.\n\nUse via `Get(SourcesPaths, SourcesPathRequest(tgt.get(SourcesField))`.\n\nThis is faster than `Get(HydratedSources, HydrateSourcesRequest)` because it does not snapshot\nthe files and it only resolves the file names.\n\nThis does not consider codegen, and only captures the files from the field. Use\n`HydrateSourcesRequest` to use codegen.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPathsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettings": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings", + "pants.backend.codegen.thrift.target_types.generator_settings", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.scala.target_types.scala_settings_request", + "pants.backend.shell.target_types.generator_settings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.generate_file_targets"] + }, + "pants.engine.target.TargetFilesGeneratorSettingsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "An optional union to provide dynamic settings for a `TargetFilesGenerator`.\n\nSee `TargetFilesGenerator`.", + "is_union": true, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettingsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GeneratorSettingsRequest", + "GeneratorSettingsRequest", + "PythonFilesGeneratorSettingsRequest", + "ScalaSettingsRequest", + "ShellGeneratorSettingsRequest" + ], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.generate_file_targets"] + }, + "pants.engine.target.TargetRootsToFieldSetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "TargetRootsToFieldSetsRequest(field_set_superclass: 'Type[_FS]', *, goal_description: 'str', no_applicable_targets_behavior: 'NoApplicableTargetsBehavior', shard: 'int' = 0, num_shards: 'int' = -1) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetRootsToFieldSetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.generate_snapshots.generate_snapshots", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.run_publish", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.target.TargetTypesToGenerateTargetsRequests": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": ["pants.engine.unions"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.target", + "name": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.target_types_to_generate_targets_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.Targets": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.go_generate", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A heterogeneous collection of instances of Target subclasses.\n\nWhile every element will be a subclass of `Target`, there may be many different `Target` types\nin this collection, e.g. some `FileTarget` and some `PythonTestTarget`.\n\nOften, you will want to filter out the relevant targets by looking at what fields they have\nregistered, e.g.:\n\n valid_tgts = [tgt for tgt in tgts if tgt.has_fields([Compatibility, PythonSources])]\n\nYou should not check the Target's actual type because this breaks custom target types;\nfor example, prefer `tgt.has_field(PythonTestsSourcesField)` to\n`isinstance(tgt, PythonTestsTarget)`.", + "is_union": false, + "module": "pants.engine.target", + "name": "Targets", + "provider": "pants.backend.experimental.go, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.javascript.package_json.find_owning_package", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.engine.target.TransitiveTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.environment", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A set of Target roots, and their transitive, flattened, de-duped dependencies.\n\nIf a target root is a dependency of another target root, then it will show up both in `roots`\nand in `dependencies`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.transitive_targets"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.TransitiveTargetsRequest": { + "consumed_by_rules": ["pants.engine.internals.graph.transitive_targets"], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "A request to get the transitive dependencies of the input roots.\n\nResolve the transitive targets with `await Get(TransitiveTargets,\nTransitiveTargetsRequest([addr1, addr2])`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.faas.build_lambdex", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.UnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": ["pants.engine.addresses"], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.backend.python", + "pants.core" + ], + "documentation": "Like `Targets`, but will not replace target generators with their generated targets (e.g.\nreplace `python_sources` \"BUILD targets\" with generated `python_source` \"file targets\").", + "is_union": false, + "module": "pants.engine.target", + "name": "UnexpandedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.project_info.peek.peek", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping" + ] + }, + "pants.engine.target.ValidateDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": "A request to validate dependencies after they have been computed.\n\nAn implementing rule should raise an exception if dependencies are invalid.", + "is_union": true, + "module": "pants.engine.target", + "name": "ValidateDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": ["PythonValidateDependenciesRequest"], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.ValidatedDependencies": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.go", "pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "ValidatedDependencies()", + "is_union": false, + "module": "pants.engine.target", + "name": "ValidatedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.engine.internals.graph.resolve_dependencies"] + }, + "pants.engine.target.WrappedTarget": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.environment", "pants.engine.target"], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A light wrapper to encapsulate all the distinct `Target` subclasses into a single type.\n\nThis is necessary when using a single target in a rule because the engine expects exact types\nand does not work with subtypes.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": ["pants.engine.internals.graph.resolve_target"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.resolve.resolve_for_package", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.engine.target.WrappedTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.go"], + "documentation": "Used with `WrappedTarget` to get the Target corresponding to an address.\n\n`description_of_origin` is used for error messages when the address does not actually exist. If\nyou are confident this cannot happen, set the string to something like ``.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.resolve.resolve_for_package", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetry": { + "consumed_by_rules": [], + "dependencies": ["pants.option.scope"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetry", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_anonymous_telemetry"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorCallbackFactoryRequest": { + "consumed_by_rules": ["pants.goal.stats_aggregator.construct_callback"], + "dependencies": ["pants.engine.streaming_workunit_handler"], + "dependents": ["pants.core"], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorSubsystem": { + "consumed_by_rules": ["pants.goal.stats_aggregator.construct_callback"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorSubsystem", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_stats"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.bsp.compile.BSPClasspathEntryRequest": { + "consumed_by_rules": ["pants.jvm.bsp.compile.notify_for_classpath_entry"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A wrapper around a `ClasspathEntryRequest` which notifies the BSP client on completion.\n\nTODO: Because this struct contains a `task_id`, messages will re-render in every run, even\nthough the underlying computation does not re-run. See #15426 for an alternative.", + "is_union": false, + "module": "pants.jvm.bsp.compile", + "name": "BSPClasspathEntryRequest", + "provider": "pants.jvm.bsp.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.classpath.Classpath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "Classpath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.classpath.classpath"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.classpath.LooseClassfiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.scala", + "pants.core", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "The contents of a classpath entry as loose classfiles.\n\nNote that `ClasspathEntry` and `Classpath` both guarantee that they contain JAR files, and so\ncreating loose classfiles from them involves extracting their entry.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "LooseClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.classpath.loose_classfiles"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.compile.ClasspathDependenciesRequest": { + "consumed_by_rules": ["pants.jvm.compile.classpath_dependency_requests"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ClasspathDependenciesRequest(request: 'ClasspathEntryRequest', ignore_generated: 'bool' = False)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathDependenciesRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.ClasspathEntry": { + "consumed_by_rules": ["pants.jvm.classpath.loose_classfiles"], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nIf `[jvm].reproducible_jars`, then all JARs in a classpath entry must have had timestamps\nstripped -- either natively, or via the `pants.jvm.strip_jar` rules.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.\n\nNote: Non-jar artifacts (e.g., executables with \"exe\" packaging) may end up on the classpath if\nthey are dependencies.\nTODO: Does there need to be a filtering mechanism to exclude non-jar artifacts in the default case?", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.jvm.compile", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.jvm.compile.required_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.classpath.classpath", + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.compile.ClasspathEntryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "A request for a ClasspathEntry for the given CoarsenedTarget and resolve.\n\nTODO: Move to `classpath.py`.", + "is_union": true, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [ + "CompileJavaSourceRequest", + "CompileKotlinSourceRequest", + "CompileScalaSourceRequest", + "CoursierFetchRequest", + "DeployJarClasspathEntryRequest", + "JvmResourcesRequest", + "ScalaArtifactClasspathEntryRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.compile.ClasspathEntryRequestFactory": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependencies": ["pants.engine.unions"], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.compile.calculate_jvm_request_types"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.compile.ClasspathEntryRequests": { + "consumed_by_rules": ["pants.jvm.compile.compile_classpath_entries"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java, pants.jvm.compile", + "returned_by_rules": ["pants.jvm.compile.classpath_dependency_requests"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.compile.compile_classpath_entries"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntry": { + "consumed_by_rules": ["pants.jvm.compile.required_classfiles"], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.bsp.compile", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resources.assemble_resources_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmTypeProvidingTargets": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": ["pants.backend.experimental.go"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AvailableThirdPartyArtifacts": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.ThirdPartySymbolMapping": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "The third party symbols provided by all `jvm_artifact` targets.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.symbol_mapper.FirstPartyMappingRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "An entry point for a specific implementation of mapping JVM package names to owning targets.\n\nAll implementations will be merged together.\n\nThe addresses should all be file addresses, rather than BUILD addresses.", + "is_union": true, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "FirstPartyMappingRequest", + "provider": "pants.jvm.dependency_inference.symbol_mapper", + "returned_by_rules": [], + "union_members": [ + "FirstPartyJavaTargetsMappingRequest", + "FirstPartyKotlinTargetsMappingRequest", + "FirstPartyScalaTargetsMappingRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMap": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "The first party symbols provided by a single inference implementation.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMap", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMapping": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "The merged first and third party symbols provided by all inference implementations.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.GenerateJvmLockfile": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.unions", + "pants.jvm.goals.lockfile", + "pants.jvm.resolve.common" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', artifacts: 'ArtifactRequirements')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": ["pants.jvm.goals.lockfile.setup_user_lockfile_requests"] + }, + "pants.jvm.goals.lockfile.KnownJVMUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "KnownJVMUserResolveNamesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.RequestedJVMUserResolveNames": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "RequestedJVMUserResolveNames", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.experimental.scala"], + "documentation": "Hook for backends to validate the artifact requirements requested for a resolve.\n\nThe main user is the Scala backend which will ensure scala-library is present in the resolve.", + "is_union": true, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": ["ValidateResolveHasScalaRuntimeRequest"], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveResult": { + "consumed_by_rules": [], + "dependencies": ["pants.backend.experimental.java"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile._ValidateJvmArtifactsRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "_ValidateJvmArtifactsRequest(artifacts: 'ArtifactRequirements', resolve_name: 'str')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "_ValidateJvmArtifactsRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.goals.lockfile.setup_user_lockfile_requests"] + }, + "pants.jvm.jar_tool.jar_tool.JarToolCompiledClassfiles": { + "consumed_by_rules": ["pants.jvm.jar_tool.jar_tool.run_jar_tool"], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JarToolCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jar_tool.jar_tool.build_jar_tool"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jar_tool.jar_tool.JarToolGenerateLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolGenerateLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool" + ] + }, + "pants.jvm.jar_tool.jar_tool.JarToolRequest": { + "consumed_by_rules": ["pants.jvm.jar_tool.jar_tool.run_jar_tool"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JarToolRequest(*, jar_name: 'str', digest: 'Digest', main_class: 'str | None' = None, classpath_entries: 'Iterable[str] | None' = None, manifest: 'str | None' = None, jars: 'Iterable[str] | None' = None, file_mappings: 'Mapping[str, str] | None' = None, default_action: 'JarDuplicateAction | None' = None, policies: 'Iterable[tuple[str, str | JarDuplicateAction]] | None' = None, skip: 'Iterable[str] | None' = None, compress: 'bool' = False, update: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolRequest", + "provider": "pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.deploy_jar.package_deploy_jar"] + }, + "pants.jvm.jdk_rules.InternalJdk": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "InternalJdk", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jdk_rules.internal_jdk"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jdk_rules.JdkEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.jdk_rules" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int', global_jvm_options: 'tuple[str, ...]', java_home_command: 'str')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkEnvironment", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JdkRequest": { + "consumed_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Request for a JDK with a specific major version, or a default (`--jvm-jdk` or System).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkRequest", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JvmProcess": { + "consumed_by_rules": ["pants.jvm.jdk_rules.jvm_process"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JvmProcess(jdk: 'JdkEnvironment', argv: 'Iterable[str]', classpath_entries: 'Iterable[str]', input_digest: 'Digest', description: 'str', level: 'LogLevel' = , extra_jvm_options: 'Iterable[str] | None' = None, extra_nailgun_keys: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_env: 'Mapping[str, str] | None' = None, timeout_seconds: 'int | float | None' = None, cache_scope: 'ProcessCacheScope | None' = None, use_nailgun: 'bool' = True, remote_cache_speculation_delay: 'int | None' = None)", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JvmProcess", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.jdk_rules.Nailgun": { + "consumed_by_rules": ["pants.jvm.jdk_rules.prepare_jdk_environment"], + "dependencies": ["pants.backend.experimental.scala", "pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Nailgun(classpath_entry: 'ClasspathEntry')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "Nailgun", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.jdk_rules.fetch_nailgun"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.deploy_jar_classpath" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarClasspathEntryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "DeployJarFieldSet(address: 'Address', main_class: pants.jvm.target_types.JvmMainClassNameField, output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmDependenciesField, jdk_version: pants.jvm.target_types.JvmJdkField, duplicate_policy: pants.jvm.target_types.DeployJarDuplicatePolicyField, shading_rules: pants.jvm.target_types.DeployJarShadingRulesField, exclude_files: pants.jvm.target_types.DeployJarExcludeFilesField)", + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarFieldSet", + "provider": "pants.backend.experimental.java, pants.jvm.package.deploy_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.jvm.package.war.PackageWarFileFieldSet": { + "consumed_by_rules": ["pants.jvm.package.war.package_war"], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "PackageWarFileFieldSet(address: 'Address', output_path: 'OutputPathField', dependencies: 'JvmWarDependenciesField', descriptor: 'JvmWarDescriptorAddressField', content: 'JvmWarContentField', shading_rules: 'JvmWarShadingRulesField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "PackageWarFileFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.jvm.package.war.RenderWarContentRequest": { + "consumed_by_rules": ["pants.jvm.package.war.render_war_content"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderWarContentRequest(content: 'JvmWarContentField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarContentRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.package.war.RenderWarDeploymentDescriptorRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderWarDeploymentDescriptorRequest(descriptor: 'JvmWarDescriptorAddressField', owning_address: 'Address')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarDeploymentDescriptorRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.package.war.RenderedWarContent": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.addresses", + "pants.jvm.package.war" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderedWarContent(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarContent", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.package.war.render_war_content"], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.package.war.RenderedWarDeploymentDescriptor": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.package.war" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "RenderedWarDeploymentDescriptor(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.jvm.package.war.package_war"] + }, + "pants.jvm.resolve.common.ArtifactRequirements": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java" + ], + "documentation": "An ordered list of Coordinates used as requirements.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "ArtifactRequirements", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.common", + "returned_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.common.GatherJvmCoordinatesRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A request to turn strings of coordinates (`group:artifact:version`) and/or addresses to\n`jvm_artifact` targets into `ArtifactRequirements`.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "GatherJvmCoordinatesRequest", + "provider": "pants.jvm.resolve.common", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierFetchRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierFetchRequest", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierLockfileEntry": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A single artifact entry from a Coursier-resolved lockfile.\n\nThese fields are nearly identical to the JSON objects from the\n\"dependencies\" entries in Coursier's --json-output-file format.\nBut unlike Coursier's JSON report, a CoursierLockfileEntry\nincludes the content-address of the artifact fetched by Coursier\nand ingested by Pants.\n\nFor example, a Coursier JSON report dependency entry might look like this:\n\n```\n{\n \"coord\": \"com.chuusai:shapeless_2.13:2.3.3\",\n \"file\": \"/home/USER/.cache/coursier/v1/https/repo1.maven.org/maven2/com/chuusai/shapeless_2.13/2.3.3/shapeless_2.13-2.3.3.jar\",\n \"directDependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ],\n \"dependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ]\n}\n```\n\nThe equivalent CoursierLockfileEntry would look like this:\n\n```\nCoursierLockfileEntry(\n coord=\"com.chuusai:shapeless_2.13:2.3.3\", # identical\n file_name=\"shapeless_2.13-2.3.3.jar\" # PurePath(entry[\"file\"].name)\n direct_dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n file_digest=FileDigest(fingerprint=, ...),\n)\n```\n\nThe fields `remote_url` and `pants_address` are set by Pants if the `coord` field matches a\n`jvm_artifact` that had either the `url` or `jar` fields set.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierLockfileEntry", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.resolve.common" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolvedLockfile": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.common", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ResolvedClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A collection of resolved classpath entries.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspath": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.jvm.resolve.common", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "A fully fetched and merged classpath for running a JVM tool.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspathRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "A request to set up the classpath for a JVM tool by fetching artifacts and merging the\nclasspath.\n\n:param prefix: if set, should be a relative directory that will\n be prepended to every classpath element. This is useful for\n keeping all classpath elements isolated under a single directory\n in a process invocation, where other inputs on the process's\n root directory might interfere with un-prefixed classpath\n entries (or vice versa).", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspathRequest", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_setup.Coursier": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.platform" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "Coursier", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.resolve.coursier_setup.setup_coursier"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.coursier_setup.CoursierFetchProcess": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "CoursierFetchProcess(args: 'Tuple[str, ...]', input_digest: 'Digest', output_directories: 'Tuple[str, ...]', output_files: 'Tuple[str, ...]', description: 'str')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierFetchProcess", + "provider": "pants.jvm.resolve.coursier_setup", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_setup.CoursierSubsystem": { + "consumed_by_rules": ["pants.jvm.resolve.coursier_setup.setup_coursier"], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_coursier"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.jvm_tool.GenerateJvmLockfileFromTool": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.rules", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.java.dependency_inference.java_parser", + "pants.backend.java.lint.google_java_format.rules", + "pants.backend.kotlin.dependency_inference.kotlin_parser", + "pants.backend.kotlin.lint.ktlint.rules", + "pants.backend.scala.dependency_inference.scala_parser", + "pants.backend.scala.lint.scalafmt.rules", + "pants.backend.scala.test.scalatest", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.shading.jarjar", + "pants.jvm.strip_jar.strip_jar", + "pants.jvm.test.junit" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "is_union": false, + "module": "pants.jvm.resolve.jvm_tool", + "name": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.key.CoursierResolveKey": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.key", + "name": "CoursierResolveKey", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.key", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resources.JvmResourcesRequest": { + "consumed_by_rules": ["pants.jvm.resources.assemble_resources_jar"], + "dependencies": ["pants.jvm.compile"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resources", + "name": "JvmResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJar": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.shading.rules.shade_jar" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_jarjar"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJarGeneratorLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJarGeneratorLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.shading.jarjar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": ["pants.jvm.shading.rules.shade_jar"] + }, + "pants.jvm.shading.rules.ShadeJarRequest": { + "consumed_by_rules": ["pants.jvm.shading.rules.shade_jar"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ShadeJarRequest(*, path: 'str | PurePath', digest: 'Digest', rules: 'Iterable[JvmShadingRule] | None' = None, skip_manifest: 'bool | None' = None, misplaced_class_strategy: 'MisplacedClassStrategy | None' = None) -> 'None'", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadeJarRequest", + "provider": "pants.jvm.shading.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.shading.rules.ShadedJar": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.jvm.shading.rules" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ShadedJar(path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadedJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.shading.rules.shade_jar"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarCompiledClassfiles": { + "consumed_by_rules": ["pants.jvm.strip_jar.strip_jar.strip_jar"], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "StripJarCompiledClassfiles(digest: Digest)", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.strip_jar.strip_jar.build_processors"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.strip_jar.strip_jar.StripJarRequest": { + "consumed_by_rules": ["pants.jvm.strip_jar.strip_jar.strip_jar"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "StripJarRequest(digest: Digest, filenames: Tuple[str, ...])", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarRequest", + "provider": "pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.package_deploy_jar" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.jvm.subsystems.JvmSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_jvm", + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.target_types.generate_jvm_artifact_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.target_types.jvm_resolve_field_default_factory", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.subsystems", + "name": "JvmSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["construct_scope_jvm"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.target_types.GenericJvmRunRequest": { + "consumed_by_rules": ["pants.jvm.run.create_run_request"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "Allows the use of a generic rule to return a `RunRequest` based on the field set.", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "GenericJvmRunRequest", + "provider": "pants.jvm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ] + }, + "pants.jvm.target_types.JvmArtifactFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": "JvmArtifactFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', group: 'JvmArtifactGroupField', artifact: 'JvmArtifactArtifactField', version: 'JvmArtifactVersionField', packages: 'JvmArtifactPackagesField', url: 'JvmArtifactUrlField')", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmArtifactFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.jvm.target_types.JvmResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "dependencies": ["pants.engine.target"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmJdkField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmJdkField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmResolveField": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.target"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmResolveField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestFieldSet": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": "JunitTestFieldSet(address: 'Address', sources: 'JunitTestSourceField', timeout: 'JunitTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'TestExtraEnvVarsField')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestRequest": { + "consumed_by_rules": [], + "dependencies": ["pants.core"], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.java"], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": ["pants.jvm.test.junit.setup_junit_for_target"] + }, + "pants.jvm.test.junit.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.env_vars", + "pants.jvm.test.junit" + ], + "dependents": ["pants.backend.experimental.java"], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetup", + "provider": "pants.backend.experimental.java", + "returned_by_rules": ["pants.jvm.test.junit.setup_junit_for_target"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.test.junit.TestSetupRequest": { + "consumed_by_rules": ["pants.jvm.test.junit.setup_junit_for_target"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "TestSetupRequest(field_set: 'JunitTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetupRequest", + "provider": "pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.util_rules.ExtractFileDigest": { + "consumed_by_rules": ["pants.jvm.util_rules.digest_to_file_digest"], + "dependencies": [], + "dependents": ["pants.backend.experimental.java"], + "documentation": "ExtractFileDigest(digest: 'Digest', file_path: 'str')", + "is_union": false, + "module": "pants.jvm.util_rules", + "name": "ExtractFileDigest", + "provider": "pants.jvm.util_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.option.global_options.GlobalOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.run.run", + "pants.core.util_rules.distdir.get_distdir", + "pants.engine.internals.graph.extract_subproject_roots", + "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "pants.jvm.jdk_rules.jvm_process" + ], + "dependencies": ["pants.option.scope"], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.option.global_options", + "name": "GlobalOptions", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.global_options.UnmatchedBuildFileGlobs": { + "consumed_by_rules": [ + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_source_paths" + ], + "dependencies": ["pants.core"], + "dependents": ["pants.backend.experimental.go"], + "documentation": "What to do when globs do not match in BUILD files.", + "is_union": false, + "module": "pants.option.global_options", + "name": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_unmatched_build_file_globs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.scope.Scope": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "An options scope.", + "is_union": false, + "module": "pants.option.scope", + "name": "Scope", + "provider": "pants.option.scope", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_scope_", + "construct_scope_add_trailing_comma", + "construct_scope_anonymous_telemetry", + "construct_scope_apache_thrift", + "construct_scope_autoflake", + "construct_scope_bandit", + "construct_scope_black", + "construct_scope_buf", + "construct_scope_build_deprecations_fixer", + "construct_scope_buildifier", + "construct_scope_check", + "construct_scope_count_loc", + "construct_scope_coursier", + "construct_scope_coverage_py", + "construct_scope_debug_adapter", + "construct_scope_debugpy", + "construct_scope_dependencies", + "construct_scope_dependents", + "construct_scope_docformatter", + "construct_scope_docker", + "construct_scope_dockerfile_parser", + "construct_scope_download_terraform", + "construct_scope_experimental_bsp", + "construct_scope_experimental_deploy", + "construct_scope_export", + "construct_scope_export_codegen", + "construct_scope_filedeps", + "construct_scope_filter", + "construct_scope_fix", + "construct_scope_flake8", + "construct_scope_fmt", + "construct_scope_generate_lockfiles", + "construct_scope_generate_snapshots", + "construct_scope_go_generate", + "construct_scope_go_test", + "construct_scope_gofmt", + "construct_scope_golang", + "construct_scope_google_java_format", + "construct_scope_grpc_python_plugin", + "construct_scope_hadolint", + "construct_scope_helm", + "construct_scope_helm_k8s_parser", + "construct_scope_helm_post_renderer", + "construct_scope_helm_unittest", + "construct_scope_ipython", + "construct_scope_isort", + "construct_scope_jarjar", + "construct_scope_java_infer", + "construct_scope_javac", + "construct_scope_junit", + "construct_scope_jvm", + "construct_scope_kotlin", + "construct_scope_kotlin_infer", + "construct_scope_kotlinc", + "construct_scope_ktlint", + "construct_scope_lambdex", + "construct_scope_lint", + "construct_scope_list", + "construct_scope_mypy", + "construct_scope_mypy_protobuf", + "construct_scope_nodejs", + "construct_scope_nodejs_infer", + "construct_scope_openapi", + "construct_scope_package", + "construct_scope_paths", + "construct_scope_peek", + "construct_scope_pex", + "construct_scope_pex_binary_defaults", + "construct_scope_pex_cli", + "construct_scope_preamble", + "construct_scope_protobuf_java_grpc", + "construct_scope_protoc", + "construct_scope_publish", + "construct_scope_py_constraints", + "construct_scope_pydocstyle", + "construct_scope_pylint", + "construct_scope_pyoxidizer", + "construct_scope_pytest", + "construct_scope_python", + "construct_scope_python_bootstrap", + "construct_scope_python_dump_source_analysis", + "construct_scope_python_infer", + "construct_scope_python_native_code", + "construct_scope_python_protobuf", + "construct_scope_python_repos", + "construct_scope_python_thrift", + "construct_scope_pytype", + "construct_scope_pyupgrade", + "construct_scope_regex_lint", + "construct_scope_repl", + "construct_scope_roots", + "construct_scope_ruff", + "construct_scope_run", + "construct_scope_scala", + "construct_scope_scala_infer", + "construct_scope_scalac", + "construct_scope_scalafmt", + "construct_scope_scalapb", + "construct_scope_scalatest", + "construct_scope_scc", + "construct_scope_setup_py_generation", + "construct_scope_setuptools", + "construct_scope_setuptools_scm", + "construct_scope_shell_setup", + "construct_scope_shell_test", + "construct_scope_shellcheck", + "construct_scope_shfmt", + "construct_scope_shunit2", + "construct_scope_source", + "construct_scope_spectral", + "construct_scope_stats", + "construct_scope_subprocess_environment", + "construct_scope_tailor", + "construct_scope_terraform_fmt", + "construct_scope_terraform_hcl2_parser", + "construct_scope_terraform_validate", + "construct_scope_test", + "construct_scope_thrift", + "construct_scope_twine", + "construct_scope_update_build_files", + "construct_scope_workunit_logger", + "construct_scope_yamllint", + "construct_scope_yapf" + ] + }, + "pants.option.subsystem.PluginOption": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": ["pants.backend.python"], + "documentation": null, + "is_union": true, + "module": "pants.option.subsystem", + "name": "PluginOption", + "provider": "pants.option.subsystem", + "returned_by_rules": [], + "union_members": ["ExportPluginOptions"], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.AllSourceRoots": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": ["pants.engine.fs"], + "dependents": ["pants.backend.project_info", "pants.backend.python"], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "AllSourceRoots", + "provider": "pants.core", + "returned_by_rules": ["pants.source.source_root.all_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.OptionalSourceRoot": { + "consumed_by_rules": [], + "dependencies": ["pants.engine.fs", "pants.source.source_root"], + "dependents": ["pants.core"], + "documentation": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.OptionalSourceRootsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.source.source_root"], + "dependents": ["pants.core"], + "documentation": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": ["pants.source.source_root.get_source_roots"] + }, + "pants.source.source_root.SourceRoot": { + "consumed_by_rules": [], + "dependencies": ["pants.source.source_root"], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRoot(path: 'str')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRoot", + "provider": "pants.core", + "returned_by_rules": ["pants.source.source_root.get_source_root"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ] + }, + "pants.source.source_root.SourceRootConfig": { + "consumed_by_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ], + "dependencies": ["pants.option.scope"], + "dependents": ["pants.core"], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootConfig", + "provider": "pants.core", + "returned_by_rules": ["construct_scope_source"], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.SourceRootRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_source_root" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Find the source root for the given path.\n\nIf you have multiple paths, particularly if many of them share parent directories, you'll get\nbetter performance with a `SourceRootsRequest` (see above) instead.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.SourceRootsRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_roots" + ], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "Find the source roots for the given files and/or dirs.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRootsResult": { + "consumed_by_rules": [], + "dependencies": ["pants.source.source_root"], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsResult", + "provider": "pants.core", + "returned_by_rules": ["pants.source.source_root.get_source_roots"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ] + }, + "pants.vcs.git.GitWorktreeRequest": { + "consumed_by_rules": ["pants.vcs.git.get_git_worktree"], + "dependencies": [], + "dependents": ["pants.core"], + "documentation": "GitWorktreeRequest(gitdir: 'PathLike[str] | None' = None, subdir: 'PathLike[str] | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "GitWorktreeRequest", + "provider": "pants.vcs.git", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + }, + "pants.vcs.git.MaybeGitWorktree": { + "consumed_by_rules": [], + "dependencies": ["pants.vcs.git"], + "dependents": ["pants.backend.experimental.python"], + "documentation": "MaybeGitWorktree(git_worktree: 'GitWorktree | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "MaybeGitWorktree", + "provider": "pants.core", + "returned_by_rules": ["pants.vcs.git.get_git_worktree"], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + } + }, + "name_to_backend_help_info": { + "pants.backend.awslambda.python": { + "description": "Create AWS Lambdas from Python code.\n\nSee https://www.pantsbuild.org/docs/awslambda-python.", + "enabled": true, + "name": "pants.backend.awslambda.python", + "provider": "pants" + }, + "pants.backend.build_files.fix.deprecations": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fix.deprecations", + "provider": "pants" + }, + "pants.backend.build_files.fmt.black": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.black", + "provider": "pants" + }, + "pants.backend.build_files.fmt.buildifier": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.buildifier", + "provider": "pants" + }, + "pants.backend.build_files.fmt.yapf": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.yapf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.lint.buf": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.protobuf.lint.buf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.python": { + "description": "Generate Python sources from Protocol Buffers (Protobufs).\n\nSee https://www.pantsbuild.org/docs/protobuf.", + "enabled": true, + "name": "pants.backend.codegen.protobuf.python", + "provider": "pants" + }, + "pants.backend.codegen.thrift.apache.python": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.thrift.apache.python", + "provider": "pants" + }, + "pants.backend.docker": { + "description": "", + "enabled": true, + "name": "pants.backend.docker", + "provider": "pants" + }, + "pants.backend.docker.lint.hadolint": { + "description": "", + "enabled": true, + "name": "pants.backend.docker.lint.hadolint", + "provider": "pants" + }, + "pants.backend.experimental.adhoc": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.adhoc", + "provider": "pants" + }, + "pants.backend.experimental.cc": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cc", + "provider": "pants" + }, + "pants.backend.experimental.cc.lint.clangformat": { + "description": "A formatter for C/C++ (and several other languages).\n\nSee https://clang.llvm.org/docs/ClangFormat.html for details.", + "enabled": false, + "name": "pants.backend.experimental.cc.lint.clangformat", + "provider": "pants" + }, + "pants.backend.experimental.codegen.avro.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.avro.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.go", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.scala", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.apache.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.apache.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.scala": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.scala", + "provider": "pants" + }, + "pants.backend.experimental.cue": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cue", + "provider": "pants" + }, + "pants.backend.experimental.debian": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.debian", + "provider": "pants" + }, + "pants.backend.experimental.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.go", + "provider": "pants" + }, + "pants.backend.experimental.go.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.golangci_lint": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.golangci_lint", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.vet": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.vet", + "provider": "pants" + }, + "pants.backend.experimental.helm": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.helm", + "provider": "pants" + }, + "pants.backend.experimental.helm.check.kubeconform": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.helm.check.kubeconform", + "provider": "pants" + }, + "pants.backend.experimental.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java", + "provider": "pants" + }, + "pants.backend.experimental.java.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.java.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.java.lint.google_java_format": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java.lint.google_java_format", + "provider": "pants" + }, + "pants.backend.experimental.javascript": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.javascript", + "provider": "pants" + }, + "pants.backend.experimental.javascript.lint.prettier": { + "description": "A formatter for JS/TS (and several other languages).\n\nSee https://prettier.io/ for details.", + "enabled": false, + "name": "pants.backend.experimental.javascript.lint.prettier", + "provider": "pants" + }, + "pants.backend.experimental.kotlin": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.kotlin.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.lint.ktlint": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin.lint.ktlint", + "provider": "pants" + }, + "pants.backend.experimental.openapi": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi", + "provider": "pants" + }, + "pants.backend.experimental.openapi.codegen.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.openapi.codegen.java", + "provider": "pants" + }, + "pants.backend.experimental.openapi.lint.spectral": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi.lint.spectral", + "provider": "pants" + }, + "pants.backend.experimental.python": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.django": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.framework.django", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.stevedore": { + "description": "A python \"framework\" for apps to dynamically load plugins.\n\nSee https://github.com/openstack/stevedore for details.", + "enabled": true, + "name": "pants.backend.experimental.python.framework.stevedore", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.add_trailing_comma": { + "description": "Autoformatter to automatically add trailing commas to calls and literals.\n\nSee https://github.com/asottile/add-trailing-comma for details.", + "enabled": true, + "name": "pants.backend.experimental.python.lint.add_trailing_comma", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.autoflake": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.pyupgrade": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.ruff": { + "description": "Linter & formatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://github.com/charliermarsh/ruff", + "enabled": true, + "name": "pants.backend.experimental.python.lint.ruff", + "provider": "pants" + }, + "pants.backend.experimental.python.packaging.pyoxidizer": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python.packaging.pyoxidizer", + "provider": "pants" + }, + "pants.backend.experimental.python.typecheck.pyright": { + "description": "Static type checker for Python, running on NodeJS.\n\nSee https://github.com/Microsoft/pyright for details.", + "enabled": false, + "name": "pants.backend.experimental.python.typecheck.pyright", + "provider": "pants" + }, + "pants.backend.experimental.python.typecheck.pytype": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python.typecheck.pytype", + "provider": "pants" + }, + "pants.backend.experimental.rust": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.rust", + "provider": "pants" + }, + "pants.backend.experimental.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala", + "provider": "pants" + }, + "pants.backend.experimental.scala.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.scala.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.scala.lint.scalafmt": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala.lint.scalafmt", + "provider": "pants" + }, + "pants.backend.experimental.swift": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.swift", + "provider": "pants" + }, + "pants.backend.experimental.terraform": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.terraform", + "provider": "pants" + }, + "pants.backend.experimental.terraform.lint.tfsec": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.terraform.lint.tfsec", + "provider": "pants" + }, + "pants.backend.experimental.tools.workunit_logger": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.tools.workunit_logger", + "provider": "pants" + }, + "pants.backend.experimental.tools.yamllint": { + "description": "A configurable linter for YAML files.\n\nSee https://yamllint.readthedocs.io/ for details.", + "enabled": true, + "name": "pants.backend.experimental.tools.yamllint", + "provider": "pants" + }, + "pants.backend.experimental.visibility": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.visibility", + "provider": "pants" + }, + "pants.backend.google_cloud_function.python": { + "description": "Create Google Cloud Functions from Python code.\n\nSee https://www.pantsbuild.org/docs/google-cloud-function-python.", + "enabled": true, + "name": "pants.backend.google_cloud_function.python", + "provider": "pants" + }, + "pants.backend.plugin_development": { + "description": "", + "enabled": true, + "name": "pants.backend.plugin_development", + "provider": "pants" + }, + "pants.backend.project_info": { + "description": "Information on your project, such as listing the targets in your project.", + "enabled": true, + "name": "pants.backend.project_info", + "provider": "pants" + }, + "pants.backend.python": { + "description": "Support for Python.\n\nSee https://www.pantsbuild.org/docs/python-backend.", + "enabled": true, + "name": "pants.backend.python", + "provider": "pants" + }, + "pants.backend.python.lint.autoflake": { + "description": "Autoformatter for removing unused Python imports.\n\nSee https://github.com/myint/autoflake for details.", + "enabled": true, + "name": "pants.backend.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.python.lint.bandit": { + "description": "Security linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://bandit.readthedocs.io/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.bandit", + "provider": "pants" + }, + "pants.backend.python.lint.black": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://black.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.black", + "provider": "pants" + }, + "pants.backend.python.lint.docformatter": { + "description": "Python autoformatter for PEP257 docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/myint/docformatter.", + "enabled": true, + "name": "pants.backend.python.lint.docformatter", + "provider": "pants" + }, + "pants.backend.python.lint.flake8": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://flake8.pycqa.org/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.flake8", + "provider": "pants" + }, + "pants.backend.python.lint.isort": { + "description": "Autoformatter for Python import statements.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://pycqa.github.io/isort/.", + "enabled": true, + "name": "pants.backend.python.lint.isort", + "provider": "pants" + }, + "pants.backend.python.lint.pydocstyle": { + "description": "Static analysis tool for checking compliance with Python docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttp://www.pydocstyle.org/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.pydocstyle", + "provider": "pants" + }, + "pants.backend.python.lint.pylint": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://www.pylint.org.", + "enabled": true, + "name": "pants.backend.python.lint.pylint", + "provider": "pants" + }, + "pants.backend.python.lint.pyupgrade": { + "description": "https://github.com/asottile/pyupgrade.\n\nA tool to automatically upgrade syntax for newer versions of the language.", + "enabled": true, + "name": "pants.backend.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.python.lint.yapf": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/google/yapf .", + "enabled": true, + "name": "pants.backend.python.lint.yapf", + "provider": "pants" + }, + "pants.backend.python.mixed_interpreter_constraints": { + "description": "", + "enabled": true, + "name": "pants.backend.python.mixed_interpreter_constraints", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv.custom_install": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv.custom_install", + "provider": "pants" + }, + "pants.backend.python.typecheck.mypy": { + "description": "Type checker for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://mypy.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.typecheck.mypy", + "provider": "pants" + }, + "pants.backend.shell": { + "description": "", + "enabled": true, + "name": "pants.backend.shell", + "provider": "pants" + }, + "pants.backend.shell.lint.shellcheck": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shellcheck", + "provider": "pants" + }, + "pants.backend.shell.lint.shfmt": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shfmt", + "provider": "pants" + }, + "pants.backend.tools.preamble": { + "description": "", + "enabled": true, + "name": "pants.backend.tools.preamble", + "provider": "pants" + }, + "pants.backend.tools.taplo": { + "description": "", + "enabled": false, + "name": "pants.backend.tools.taplo", + "provider": "pants" + }, + "pants.backend.url_handlers.s3": { + "description": "", + "enabled": false, + "name": "pants.backend.url_handlers.s3", + "provider": "pants" + }, + "pants.core": { + "description": "Core rules for Pants to operate correctly.\n\nThese are always activated and cannot be disabled.", + "enabled": true, + "name": "pants.core", + "provider": "pants" + } + }, + "name_to_build_file_info": { + "PANTS_VERSION": { + "documentation": null, + "is_target": false, + "name": "PANTS_VERSION", + "signature": null + }, + "__defaults__": { + "documentation": "Provide default field values.\n\nLearn more https://www.pantsbuild.org/v2.18/docs/targets#field-default-values", + "is_target": false, + "name": "__defaults__", + "signature": "(*args: 'SetDefaultsT', ignore_unknown_fields: 'bool' = False, ignore_unknown_targets: 'bool' = False, **kwargs) -> 'None'" + }, + "__dependencies_rules__": { + "documentation": "Declare dependencies rules.", + "is_target": false, + "name": "__dependencies_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "__dependents_rules__": { + "documentation": "Declare dependents rules.", + "is_target": false, + "name": "__dependents_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "_generator_sources_helper": { + "documentation": null, + "is_target": true, + "name": "_generator_sources_helper", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfile": { + "documentation": null, + "is_target": true, + "name": "_lockfile", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfiles": { + "documentation": null, + "is_target": true, + "name": "_lockfiles", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "adhoc_tool": { + "documentation": null, + "is_target": true, + "name": "adhoc_tool", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "archive": { + "documentation": null, + "is_target": true, + "name": "archive", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "build_file_dir": { + "documentation": "Returns the path to the directory of the current BUILD file.\n\nThe returned value is an instance of `PurePath` to make path name manipulations easy.\n\nSee: https://docs.python.org/3/library/pathlib.html#pathlib.PurePath", + "is_target": false, + "name": "build_file_dir", + "signature": "() -> 'PurePath'" + }, + "deploy_jar": { + "documentation": null, + "is_target": true, + "name": "deploy_jar", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_environment": { + "documentation": null, + "is_target": true, + "name": "docker_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_image": { + "documentation": null, + "is_target": true, + "name": "docker_image", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "duplicate_rule": { + "documentation": "DeployJarDuplicateRule(pattern: 'str', action: 'str')", + "is_target": false, + "name": "duplicate_rule", + "signature": "(pattern: 'str', action: 'str') -> None" + }, + "env": { + "documentation": "Reference environment variable.", + "is_target": false, + "name": "env", + "signature": "(name: 'str', *args, **kwargs) -> 'Any'" + }, + "experimental_test_shell_command": { + "documentation": null, + "is_target": true, + "name": "experimental_test_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_go_package_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_go_package_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_java_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_python_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_resources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_scala_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "file": { + "documentation": null, + "is_target": true, + "name": "file", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "files": { + "documentation": null, + "is_target": true, + "name": "files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_binary": { + "documentation": null, + "is_target": true, + "name": "go_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_mod": { + "documentation": null, + "is_target": true, + "name": "go_mod", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_package": { + "documentation": null, + "is_target": true, + "name": "go_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_third_party_package": { + "documentation": null, + "is_target": true, + "name": "go_third_party_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_artifact": { + "documentation": null, + "is_target": true, + "name": "helm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_chart": { + "documentation": null, + "is_target": true, + "name": "helm_chart", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_deployment": { + "documentation": null, + "is_target": true, + "name": "helm_deployment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_test": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_tests": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "http_source": { + "documentation": "http_source(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')", + "is_target": false, + "name": "http_source", + "signature": "(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')" + }, + "java_source": { + "documentation": null, + "is_target": true, + "name": "java_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "java_sources": { + "documentation": null, + "is_target": true, + "name": "java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_test": { + "documentation": null, + "is_target": true, + "name": "junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_tests": { + "documentation": null, + "is_target": true, + "name": "junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_artifact": { + "documentation": null, + "is_target": true, + "name": "jvm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_exclude": { + "documentation": "JvmArtifactExclusion(group: 'str', artifact: 'str | None' = None)", + "is_target": false, + "name": "jvm_exclude", + "signature": "(group: 'str', artifact: 'str | None' = None) -> None" + }, + "jvm_war": { + "documentation": null, + "is_target": true, + "name": "jvm_war", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_test": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_tests": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_source": { + "documentation": null, + "is_target": true, + "name": "kotlin_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlinc_plugin": { + "documentation": null, + "is_target": true, + "name": "kotlinc_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "local_environment": { + "documentation": null, + "is_target": true, + "name": "local_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_document": { + "documentation": null, + "is_target": true, + "name": "openapi_document", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_documents": { + "documentation": null, + "is_target": true, + "name": "openapi_documents", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_source": { + "documentation": null, + "is_target": true, + "name": "openapi_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_sources": { + "documentation": null, + "is_target": true, + "name": "openapi_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pants_requirements": { + "documentation": null, + "is_target": true, + "name": "pants_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "parametrize": { + "documentation": "A builtin function/dataclass that can be used to parametrize Targets.\n\nParametrization is applied between TargetAdaptor construction and Target instantiation, which\nmeans that individual Field instances need not be aware of it.", + "is_target": false, + "name": "parametrize", + "signature": "(*args: 'str', **kwargs: 'Any') -> 'None'" + }, + "per_platform": { + "documentation": "An object containing differing homogeneous platform-dependent values.\n\nThe values should be evaluated for the execution environment, and not the host environment\n(I.e. it should be evaluated in a `rule` which requests `Platform`).\n\nExpected usage is roughly:\n\n```python\nclass MyFieldType(...):\n value = str | per_platform[str]\n\n @classmethod\n def compute_value( # type: ignore[override]\n cls,\n raw_value: Optional[Union[str, per_platform[str]]],\n address: Address,\n ) -> Optional[Union[str, per_platform[str]]]:\n if isinstance(raw_value, per_platform):\n # NOTE: Ensure the values are homogenous\n raw_value.check_types(str)\n\n return raw_value\n\n...\n\n@rule\nasync def my_rule(..., platform: Platform) -> ...:\n field_value = target[MyFieldType].value\n\n if isinstance(field_value, per_platform):\n field_value = field_value.get_value_for_platform(platform)\n\n ...\n```\n\nNOTE: Support for this object should be heavily weighed, as it would be innaproriate to use in\ncertain contexts (such as the `source` field in a `foo_source` target, where the intent is to\nsupport differing source files based on platform. The result would be that dependency inference\n(and therefore the dependencies field) wouldn't be knowable on the host, which is not something\nthe engine can support yet).", + "is_target": false, + "name": "per_platform", + "signature": "(linux_arm64: '_T | None' = None, linux_x86_64: '_T | None' = None, macos_arm64: '_T | None' = None, macos_x86_64: '_T | None' = None) -> None" + }, + "pex_binaries": { + "documentation": null, + "is_target": true, + "name": "pex_binaries", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pex_binary": { + "documentation": null, + "is_target": true, + "name": "pex_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pipenv_requirements": { + "documentation": null, + "is_target": true, + "name": "pipenv_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "poetry_requirements": { + "documentation": null, + "is_target": true, + "name": "poetry_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_source": { + "documentation": null, + "is_target": true, + "name": "protobuf_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_sources": { + "documentation": null, + "is_target": true, + "name": "protobuf_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pyoxidizer_binary": { + "documentation": null, + "is_target": true, + "name": "pyoxidizer_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_artifact": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "python_artifact", + "signature": "(**kwargs) -> None" + }, + "python_aws_lambda_function": { + "documentation": null, + "is_target": true, + "name": "python_aws_lambda_function", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_aws_lambda_layer": { + "documentation": null, + "is_target": true, + "name": "python_aws_lambda_layer", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_awslambda": { + "documentation": null, + "is_target": true, + "name": "python_awslambda", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_distribution": { + "documentation": null, + "is_target": true, + "name": "python_distribution", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_google_cloud_function": { + "documentation": null, + "is_target": true, + "name": "python_google_cloud_function", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirement": { + "documentation": null, + "is_target": true, + "name": "python_requirement", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirements": { + "documentation": null, + "is_target": true, + "name": "python_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_source": { + "documentation": null, + "is_target": true, + "name": "python_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_sources": { + "documentation": null, + "is_target": true, + "name": "python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test": { + "documentation": null, + "is_target": true, + "name": "python_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test_utils": { + "documentation": null, + "is_target": true, + "name": "python_test_utils", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_tests": { + "documentation": null, + "is_target": true, + "name": "python_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "relocated_files": { + "documentation": null, + "is_target": true, + "name": "relocated_files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "remote_environment": { + "documentation": null, + "is_target": true, + "name": "remote_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resource": { + "documentation": null, + "is_target": true, + "name": "resource", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resources": { + "documentation": null, + "is_target": true, + "name": "resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "run_shell_command": { + "documentation": null, + "is_target": true, + "name": "run_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_artifact": { + "documentation": null, + "is_target": true, + "name": "scala_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_exclude": { + "documentation": "ScalaArtifactExclusion(group: 'str', artifact: 'str | None' = None, crossversion: 'str' = 'partial')", + "is_target": false, + "name": "scala_exclude", + "signature": "(group: 'str', artifact: 'str | None' = None, crossversion: 'str' = 'partial') -> None" + }, + "scala_junit_test": { + "documentation": null, + "is_target": true, + "name": "scala_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_junit_tests": { + "documentation": null, + "is_target": true, + "name": "scala_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_source": { + "documentation": null, + "is_target": true, + "name": "scala_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_sources": { + "documentation": null, + "is_target": true, + "name": "scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalac_plugin": { + "documentation": null, + "is_target": true, + "name": "scalac_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_test": { + "documentation": null, + "is_target": true, + "name": "scalatest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_tests": { + "documentation": null, + "is_target": true, + "name": "scalatest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "setup_py": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "setup_py", + "signature": "(**kwargs) -> None" + }, + "shading_keep": { + "documentation": "JvmShadingKeepRule(pattern: 'str')", + "is_target": false, + "name": "shading_keep", + "signature": "(pattern: 'str') -> None" + }, + "shading_relocate": { + "documentation": "JvmShadingRelocateRule(package: 'str', into: 'str | None' = None)", + "is_target": false, + "name": "shading_relocate", + "signature": "(package: 'str', into: 'str | None' = None) -> None" + }, + "shading_rename": { + "documentation": "JvmShadingRenameRule(pattern: 'str', replacement: 'str')", + "is_target": false, + "name": "shading_rename", + "signature": "(pattern: 'str', replacement: 'str') -> None" + }, + "shading_zap": { + "documentation": "JvmShadingZapRule(pattern: 'str')", + "is_target": false, + "name": "shading_zap", + "signature": "(pattern: 'str') -> None" + }, + "shell_command": { + "documentation": null, + "is_target": true, + "name": "shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_source": { + "documentation": null, + "is_target": true, + "name": "shell_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_sources": { + "documentation": null, + "is_target": true, + "name": "shell_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_test": { + "documentation": null, + "is_target": true, + "name": "shunit2_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_tests": { + "documentation": null, + "is_target": true, + "name": "shunit2_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "stevedore_namespace": { + "documentation": "str(object='') -> str\nstr(bytes_or_buffer[, encoding[, errors]]) -> str\n\nCreate a new string object from the given object. If encoding or\nerrors is specified, then the object must expose a data buffer\nthat will be decoded using the given encoding and error handler.\nOtherwise, returns the result of object.__str__() (if defined)\nor repr(object).\nencoding defaults to sys.getdefaultencoding().\nerrors defaults to 'strict'.", + "is_target": false, + "name": "stevedore_namespace", + "signature": null + }, + "system_binary": { + "documentation": null, + "is_target": true, + "name": "system_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "target": { + "documentation": null, + "is_target": true, + "name": "target", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "terraform_deployment": { + "documentation": null, + "is_target": true, + "name": "terraform_deployment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "terraform_module": { + "documentation": null, + "is_target": true, + "name": "terraform_module", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_source": { + "documentation": null, + "is_target": true, + "name": "thrift_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_sources": { + "documentation": null, + "is_target": true, + "name": "thrift_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "vcs_version": { + "documentation": null, + "is_target": true, + "name": "vcs_version", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + } + }, + "name_to_goal_info": { + "check": { + "consumed_scopes": ["", "check", "environments-preview", "filter"], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": ["", "dependents", "environments-preview", "filter"], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": ["", "dependencies", "environments-preview", "filter"], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "dependents": { + "consumed_scopes": ["", "dependents", "environments-preview", "filter"], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.core" + }, + "experimental-deploy": { + "consumed_scopes": [ + "", + "environments-preview", + "experimental-deploy", + "filter" + ], + "description": "Perform a deployment process.", + "is_implemented": true, + "name": "experimental-deploy", + "provider": "pants.core" + }, + "experimental-explorer": { + "consumed_scopes": [], + "description": "Run the Pants Explorer Web UI server.", + "is_implemented": true, + "name": "experimental-explorer", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": ["", "environments-preview", "export", "filter"], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": ["", "environments-preview", "filter"], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.core" + }, + "filedeps": { + "consumed_scopes": ["", "environments-preview", "filedeps", "filter"], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "fix": { + "consumed_scopes": ["", "environments-preview", "filter", "fix"], + "description": "Autofix source code.", + "is_implemented": true, + "name": "fix", + "provider": "pants.core" + }, + "fmt": { + "consumed_scopes": ["", "environments-preview", "filter", "fmt"], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": ["", "environments-preview", "generate-lockfiles"], + "description": "Generate lockfiles for third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "generate-snapshots": { + "consumed_scopes": ["", "environments-preview", "filter"], + "description": "Generate test snapshots.", + "is_implemented": true, + "name": "generate-snapshots", + "provider": "pants.core" + }, + "go-generate": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "go-generate", + "go-test", + "golang" + ], + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the `//go:generate` directives.\n\nSee https://go.dev/blog/generate for details.", + "is_implemented": true, + "name": "go-generate", + "provider": "pants.backend.experimental.go" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": ["", "environments-preview", "filter", "lint"], + "description": "Run linters/formatters/fixers in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": ["", "environments-preview", "filter", "list"], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": ["", "environments-preview", "filter"], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": ["", "environments-preview", "filter", "paths"], + "description": "List the paths between two addresses. Either address may represent a group of targets, e.g. `--from=src/app/main.py --to=src/library::`.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": ["", "environments-preview", "filter", "peek"], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": ["", "environments-preview", "filter", "publish"], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "python-dump-source-analysis": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "pex", + "pex-cli", + "python", + "python-bootstrap", + "python-dump-source-analysis", + "python-infer", + "python-native-code", + "source", + "subprocess-environment" + ], + "description": "Dump source analysis for python_source targets.", + "is_implemented": true, + "name": "python-dump-source-analysis", + "provider": "pants.backend.experimental.python" + }, + "repl": { + "consumed_scopes": ["", "environments-preview", "filter", "repl"], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": ["roots", "source"], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": ["", "environments-preview", "filter", "tailor"], + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.18/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_rule_info": { + "construct_env_aware_scope_apache_thrift": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["ApacheThriftSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_apache_thrift", + "output_type": "EnvironmentAware", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_env_aware_scope_docker": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["DockerOptions", "EnvironmentTarget"], + "name": "construct_env_aware_scope_docker", + "output_type": "EnvironmentAware", + "provider": "pants.backend.docker" + }, + "construct_env_aware_scope_go_generate": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["GoGenerateGoalSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_go_generate", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_golang": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["GolangSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_golang", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_jvm": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["JvmSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_jvm", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.java" + }, + "construct_env_aware_scope_nodejs": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["NodeJS", "EnvironmentTarget"], + "name": "construct_env_aware_scope_nodejs", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_env_aware_scope_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["PexSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_pex", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["PythonBootstrapSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_python_bootstrap", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_native_code": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["PythonNativeCodeSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_python_native_code", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_shell_setup": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["ShellSetup", "EnvironmentTarget"], + "name": "construct_env_aware_scope_shell_setup", + "output_type": "EnvironmentAware", + "provider": "pants.backend.shell" + }, + "construct_env_aware_scope_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["SubprocessEnvironment", "EnvironmentTarget"], + "name": "construct_env_aware_scope_subprocess_environment", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_test": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["TestSubsystem", "EnvironmentTarget"], + "name": "construct_env_aware_scope_test", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_scope_": { + "description": null, + "documentation": "Options to control the overall behavior of Pants.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_", + "output_type": "GlobalOptions", + "provider": "pants.core" + }, + "construct_scope_add_trailing_comma": { + "description": null, + "documentation": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_add_trailing_comma", + "output_type": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "construct_scope_anonymous_telemetry": { + "description": null, + "documentation": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + }, + "construct_scope_apache_thrift": { + "description": null, + "documentation": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_autoflake": { + "description": null, + "documentation": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_autoflake", + "output_type": "Autoflake", + "provider": "pants.backend.python.lint.autoflake" + }, + "construct_scope_bandit": { + "description": null, + "documentation": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_bandit", + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + }, + "construct_scope_black": { + "description": null, + "documentation": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_black", + "output_type": "Black", + "provider": "pants.core" + }, + "construct_scope_buf": { + "description": null, + "documentation": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_buf", + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "construct_scope_build_deprecations_fixer": { + "description": null, + "documentation": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for:\n\n - Renamed targets\n - Renamed fields", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_build_deprecations_fixer", + "output_type": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "construct_scope_buildifier": { + "description": null, + "documentation": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_buildifier", + "output_type": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "construct_scope_check": { + "description": null, + "documentation": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_check", + "output_type": "CheckSubsystem", + "provider": "pants.core" + }, + "construct_scope_count_loc": { + "description": null, + "documentation": "Count lines of code.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_count_loc", + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_coursier": { + "description": null, + "documentation": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_coursier", + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_coverage_py": { + "description": null, + "documentation": "Configuration for Python test coverage measurement.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_debug_adapter": { + "description": null, + "documentation": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_debug_adapter", + "output_type": "DebugAdapterSubsystem", + "provider": "pants.core" + }, + "construct_scope_debugpy": { + "description": null, + "documentation": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_debugpy", + "output_type": "DebugPy", + "provider": "pants.backend.python" + }, + "construct_scope_dependencies": { + "description": null, + "documentation": "List the dependencies of the input files/targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_dependencies", + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_dependents": { + "description": null, + "documentation": "List all targets that depend on any of the input files/targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_dependents", + "output_type": "DependentsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_docformatter": { + "description": null, + "documentation": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_docformatter", + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + }, + "construct_scope_docker": { + "description": null, + "documentation": "Options for interacting with Docker.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_docker", + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + }, + "construct_scope_dockerfile_parser": { + "description": null, + "documentation": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + }, + "construct_scope_download_terraform": { + "description": null, + "documentation": "Terraform (https://terraform.io)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_experimental_bsp": { + "description": null, + "documentation": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_experimental_bsp", + "output_type": "BSPGoal", + "provider": "pants.core" + }, + "construct_scope_experimental_deploy": { + "description": null, + "documentation": "Perform a deployment process.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_experimental_deploy", + "output_type": "DeploySubsystem", + "provider": "pants.core" + }, + "construct_scope_export": { + "description": null, + "documentation": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_export", + "output_type": "ExportSubsystem", + "provider": "pants.core" + }, + "construct_scope_export_codegen": { + "description": null, + "documentation": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_type": "ExportCodegenSubsystem", + "provider": "pants.core" + }, + "construct_scope_filedeps": { + "description": null, + "documentation": "List all source and BUILD files a target depends on.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_filedeps", + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_filter": { + "description": null, + "documentation": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_filter", + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_fix": { + "description": null, + "documentation": "Autofix source code.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_fix", + "output_type": "FixSubsystem", + "provider": "pants.core" + }, + "construct_scope_flake8": { + "description": null, + "documentation": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_flake8", + "output_type": "Flake8", + "provider": "pants.backend.python.lint.flake8" + }, + "construct_scope_fmt": { + "description": null, + "documentation": "Autoformat source code.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_fmt", + "output_type": "FmtSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_lockfiles": { + "description": null, + "documentation": "Generate lockfiles for third-party dependencies.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_snapshots": { + "description": null, + "documentation": "Generate test snapshots.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_generate_snapshots", + "output_type": "GenerateSnapshotsSubsystem", + "provider": "pants.core" + }, + "construct_scope_go_generate": { + "description": null, + "documentation": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the `//go:generate` directives.\n\nSee https://go.dev/blog/generate for details.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_go_generate", + "output_type": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_go_test": { + "description": null, + "documentation": "Options for Go tests.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_go_test", + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_gofmt": { + "description": null, + "documentation": "Gofmt-specific options.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_gofmt", + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_golang": { + "description": null, + "documentation": "Options for Golang support.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_golang", + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_google_java_format": { + "description": null, + "documentation": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "construct_scope_grpc_python_plugin": { + "description": null, + "documentation": "The gRPC Protobuf plugin for Python.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_hadolint": { + "description": null, + "documentation": "A linter for Dockerfiles.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_hadolint", + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + }, + "construct_scope_helm": { + "description": null, + "documentation": "The Helm command line (https://helm.sh)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm", + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_k8s_parser": { + "description": null, + "documentation": "Analyses K8S manifests rendered by Helm.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm_k8s_parser", + "output_type": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_post_renderer": { + "description": null, + "documentation": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm_post_renderer", + "output_type": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_unittest": { + "description": null, + "documentation": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/helm-unittest)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_helm_unittest", + "output_type": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_ipython": { + "description": null, + "documentation": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_ipython", + "output_type": "IPython", + "provider": "pants.backend.python" + }, + "construct_scope_isort": { + "description": null, + "documentation": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_isort", + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + }, + "construct_scope_jarjar": { + "description": null, + "documentation": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_jarjar", + "output_type": "JarJar", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_java_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_java_infer", + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_javac": { + "description": null, + "documentation": "The javac Java source compiler.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_javac", + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_junit": { + "description": null, + "documentation": "The JUnit test framework (https://junit.org)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_junit", + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_jvm": { + "description": null, + "documentation": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_jvm", + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_kotlin": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_kotlin", + "output_type": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlin_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Kotlin targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_kotlin_infer", + "output_type": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlinc": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_kotlinc", + "output_type": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_ktlint": { + "description": null, + "documentation": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_ktlint", + "output_type": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "construct_scope_lambdex": { + "description": null, + "documentation": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_lambdex", + "output_type": "Lambdex", + "provider": "pants.backend.awslambda.python" + }, + "construct_scope_lint": { + "description": null, + "documentation": "Run linters/formatters/fixers in check mode.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_lint", + "output_type": "LintSubsystem", + "provider": "pants.core" + }, + "construct_scope_list": { + "description": null, + "documentation": "Lists all targets matching the file or target arguments.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_list", + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_mypy": { + "description": null, + "documentation": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_mypy", + "output_type": "MyPy", + "provider": "pants.backend.python.typecheck.mypy" + }, + "construct_scope_mypy_protobuf": { + "description": null, + "documentation": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_nodejs": { + "description": null, + "documentation": "The Node.js Javascript runtime (including Corepack).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_nodejs", + "output_type": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_nodejs_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for javascript targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_nodejs_infer", + "output_type": "NodeJSInfer", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_openapi": { + "description": null, + "documentation": "The OpenAPI Specification (https://swagger.io/specification/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_openapi", + "output_type": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi" + }, + "construct_scope_package": { + "description": null, + "documentation": "Create a distributable package.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_package", + "output_type": "PackageSubsystem", + "provider": "pants.core" + }, + "construct_scope_paths": { + "description": null, + "documentation": "List the paths between two addresses. Either address may represent a group of targets, e.g. `--from=src/app/main.py --to=src/library::`.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_paths", + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_peek": { + "description": null, + "documentation": "Display BUILD target info", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_peek", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_pex": { + "description": null, + "documentation": "How Pants uses Pex to run Python subprocesses.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pex", + "output_type": "PexSubsystem", + "provider": "pants.core" + }, + "construct_scope_pex_binary_defaults": { + "description": null, + "documentation": "Default settings for creating PEX executables.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + }, + "construct_scope_pex_cli": { + "description": null, + "documentation": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_type": "PexCli", + "provider": "pants.core" + }, + "construct_scope_preamble": { + "description": null, + "documentation": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's `string.Template` substitutions): - $year: The current year (only used when actually writing the year to the file).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_preamble", + "output_type": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble" + }, + "construct_scope_protobuf_java_grpc": { + "description": null, + "documentation": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_protobuf_java_grpc", + "output_type": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "construct_scope_protoc": { + "description": null, + "documentation": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_protoc", + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_publish": { + "description": null, + "documentation": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_publish", + "output_type": "PublishSubsystem", + "provider": "pants.core" + }, + "construct_scope_py_constraints": { + "description": null, + "documentation": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "construct_scope_pydocstyle": { + "description": null, + "documentation": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pydocstyle", + "output_type": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "construct_scope_pylint": { + "description": null, + "documentation": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pylint", + "output_type": "Pylint", + "provider": "pants.backend.python.lint.pylint" + }, + "construct_scope_pyoxidizer": { + "description": null, + "documentation": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "construct_scope_pytest": { + "description": null, + "documentation": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pytest", + "output_type": "PyTest", + "provider": "pants.backend.python" + }, + "construct_scope_python": { + "description": null, + "documentation": "Options for Pants's Python backend.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python", + "output_type": "PythonSetup", + "provider": "pants.core" + }, + "construct_scope_python_bootstrap": { + "description": null, + "documentation": "Options used to locate Python interpreters.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_dump_source_analysis": { + "description": null, + "documentation": "Dump source analysis for python_source targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_dump_source_analysis", + "output_type": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_python_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_infer", + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_python_native_code": { + "description": null, + "documentation": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_type": "PythonNativeCodeSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_protobuf": { + "description": null, + "documentation": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.18/docs/protobuf-python.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_python_repos": { + "description": null, + "documentation": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_repos", + "output_type": "PythonRepos", + "provider": "pants.core" + }, + "construct_scope_python_thrift": { + "description": null, + "documentation": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_pytype": { + "description": null, + "documentation": "The Pytype utility for typechecking Python code (https://github.com/google/pytype).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pytype", + "output_type": "Pytype", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "construct_scope_pyupgrade": { + "description": null, + "documentation": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_type": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "construct_scope_regex_lint": { + "description": null, + "documentation": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_repl": { + "description": null, + "documentation": "Open a REPL with the specified code loadable.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_repl", + "output_type": "ReplSubsystem", + "provider": "pants.core" + }, + "construct_scope_roots": { + "description": null, + "documentation": "List the repo's registered source roots.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_roots", + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_ruff": { + "description": null, + "documentation": "The Ruff Python formatter (https://github.com/charliermarsh/ruff).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_ruff", + "output_type": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "construct_scope_run": { + "description": null, + "documentation": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_run", + "output_type": "RunSubsystem", + "provider": "pants.core" + }, + "construct_scope_scala": { + "description": null, + "documentation": "Scala programming language", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scala", + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scala_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalac": { + "description": null, + "documentation": "The Scala compiler.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalac", + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalafmt": { + "description": null, + "documentation": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "construct_scope_scalapb": { + "description": null, + "documentation": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalapb", + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "construct_scope_scalatest": { + "description": null, + "documentation": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scalatest", + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scc": { + "description": null, + "documentation": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_scc", + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + }, + "construct_scope_setup_py_generation": { + "description": null, + "documentation": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools": { + "description": null, + "documentation": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_setuptools", + "output_type": "Setuptools", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools_scm": { + "description": null, + "documentation": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_setuptools_scm", + "output_type": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_shell_setup": { + "description": null, + "documentation": "Options for Pants's Shell support.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + }, + "construct_scope_shell_test": { + "description": null, + "documentation": "Options for Pants' Shell test support.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shell_test", + "output_type": "ShellTestSubsystem", + "provider": "pants.backend.shell" + }, + "construct_scope_shellcheck": { + "description": null, + "documentation": "A linter for shell scripts.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + }, + "construct_scope_shfmt": { + "description": null, + "documentation": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shfmt", + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + }, + "construct_scope_shunit2": { + "description": null, + "documentation": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_shunit2", + "output_type": "Shunit2", + "provider": "pants.backend.shell" + }, + "construct_scope_source": { + "description": null, + "documentation": "Configuration for roots of source trees.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_source", + "output_type": "SourceRootConfig", + "provider": "pants.core" + }, + "construct_scope_spectral": { + "description": null, + "documentation": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_spectral", + "output_type": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_stats": { + "description": null, + "documentation": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_stats", + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + }, + "construct_scope_subprocess_environment": { + "description": null, + "documentation": "Environment settings for forked subprocesses.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + }, + "construct_scope_tailor": { + "description": null, + "documentation": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_tailor", + "output_type": "TailorSubsystem", + "provider": "pants.core" + }, + "construct_scope_terraform_fmt": { + "description": null, + "documentation": "Terraform fmt options.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_hcl2_parser": { + "description": null, + "documentation": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_validate": { + "description": null, + "documentation": "Terraform validate options.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_test": { + "description": null, + "documentation": "Run tests.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_test", + "output_type": "TestSubsystem", + "provider": "pants.core" + }, + "construct_scope_thrift": { + "description": null, + "documentation": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_thrift", + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_twine": { + "description": null, + "documentation": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_twine", + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_update_build_files": { + "description": null, + "documentation": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.18/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_workunit_logger": { + "description": null, + "documentation": "Workunit Logger subsystem. Useful for debugging pants itself.", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_workunit_logger", + "output_type": "WorkunitLogger", + "provider": "pants.backend.experimental.tools.workunit_logger" + }, + "construct_scope_yamllint": { + "description": null, + "documentation": "A linter for YAML files (https://yamllint.readthedocs.io)", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_yamllint", + "output_type": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "construct_scope_yapf": { + "description": null, + "documentation": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": ["Get(ScopedOptions, Scope, ..)"], + "input_types": [], + "name": "construct_scope_yapf", + "output_type": "Yapf", + "provider": "pants.core" + }, + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request": { + "description": "Running run_in_sandbox target", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunInSandboxRequest, {EnvironmentName: .., RunFieldSet: ..})", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., AdhocProcessRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateFilesFromAdhocToolRequest"], + "name": "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["SystemBinaryFieldSet"], + "name": "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function": { + "description": "Create Python AWS Lambda Function", + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, BuildLambdexRequest, ..)", + "Get(BuiltPackage, BuildPythonFaaSRequest, ..)" + ], + "input_types": ["PythonAwsLambdaFieldSet", "Lambdex"], + "name": "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer": { + "description": "Create Python AWS Lambda Layer", + "documentation": null, + "input_gets": ["Get(BuiltPackage, BuildPythonFaaSRequest, ..)"], + "input_types": ["PythonAwsLambdaLayerFieldSet", "Lambdex"], + "name": "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RegisteredTargetTypes", "UnionMembership"], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix": { + "description": "Fix deprecated field names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RenameFieldsInFileRequest", "RenamedFieldTypes"], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RegisteredTargetTypes"], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix": { + "description": "Fix deprecated target type names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RenameTargetsInFileRequest", "RenamedTargetTypes"], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fmt.black.register.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Black"], + "name": "pants.backend.build_files.fmt.black.register.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.black" + }, + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt": { + "description": "Format with Buildifier", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Buildifier", "Platform"], + "name": "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "pants.backend.build_files.fmt.yapf.register.yapf_fmt": { + "description": "Format with Yapf", + "documentation": null, + "input_gets": [ + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Yapf"], + "name": "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Yapf", "BuildFileOptions"], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.codegen.export_codegen_goal.export_codegen": { + "description": "`export-codegen` goal", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "FilteredTargets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_type": "ExportCodegen", + "provider": "pants.core" + }, + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf": { + "description": "Generate Go source files from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets": { + "description": "Map import paths for all Go Protobuf targets.", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "ProtobufGoModuleImportPathsMappingsHook", + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": ["GoCodegenBuildProtobufRequest"], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "PackageAnalyzerSetup", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProtobufJavaRuntimeForResolve, ProtobufJavaRuntimeForResolveRequest, ..)", + "Get(ProtobufJavaGrpcRuntimeForResolve, ProtobufJavaGrpcRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferProtobufJavaRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaGrpcRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "output_type": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "output_type": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GrpcJavaToolLockfileSentinel", + "JavaProtobufGrpcSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf": { + "description": "Generate Java from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc", + "ProtobufJavaGrpcPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GrpcJavaToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["Platform"], + "name": "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "output_type": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "BufSubsystem"], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format": { + "description": "Format with buf format", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "BufSubsystem", "DiffBinary", "Platform"], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_type": "FixResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "BufSubsystem"], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf": { + "description": "Lint with buf lint", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "BufSubsystem", "Platform"], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_type": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies": { + "description": "Inferring Protobuf dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["InferProtobufDependencies", "ProtobufMapping", "Protoc"], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files": { + "description": "Creating map of Protobuf file names to Protobuf targets", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": ["AllProtobufTargets"], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules": { + "description": "Creating map of Protobuf targets to generated Python modules", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf": { + "description": "Generate Python from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaPBRuntimeForResolve, ScalaPBRuntimeForResolveRequest, ..)" + ], + "input_types": ["InferScalaPBRuntimeDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPBRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "output_type": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf": { + "description": "Generate Scala from Protobuf", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalapbcToolLockfileSentinel", "ScalaPBSubsystem"], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": ["MaterializeJvmPluginRequest"], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["MaterializeJvmPluginsRequest"], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["ScalaPBSubsystem", "InternalJdk"], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.tailor.find_putative_targets": { + "description": "Determine candidate Protobuf targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets": { + "description": "Find all Protobuf targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GeneratorSettingsRequest", "Protoc"], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules": { + "description": "Creating map of Thrift targets to generated Python modules", + "documentation": null, + "input_gets": ["Get(ParsedThrift, ParsedThriftRequest, ..)"], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InferApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift": { + "description": "Generate Python from Thrift", + "documentation": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["GenerateThriftSourcesRequest", "ApacheThriftSetup"], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem", + "EnvironmentAware", + "EnvironmentTarget" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies": { + "description": "Inferring Thrift dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files": { + "description": "Creating map of Thrift file names to Thrift targets", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": ["AllThriftTargets"], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets": { + "description": "Determine candidate Thrift targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets": { + "description": "Find all Thrift targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GeneratorSettingsRequest", "ThriftSubsystem"], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["ParsedThriftRequest"], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.docker.goals.package_image.build_docker_image": { + "description": null, + "documentation": "Build a Docker image using `docker build`.", + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "DockerPackageFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "KeepSandboxes", + "UnionMembership" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.publish.push_docker_images": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerRunFieldSet", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.tailor.find_putative_targets": { + "description": "Determine candidate Docker targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.lint.hadolint.rules.run_hadolint": { + "description": "Lint with Hadolint", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "Hadolint", "Platform"], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_type": "LintResult", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": ["DockerfileInfoRequest"], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["DockerfileParser"], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": ["Get(Process, VenvPexProcess, ..)"], + "input_types": ["DockerfileParseRequest", "ParserSetup"], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.target_types.all_docker_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.docker.target_types.all_docker_targets", + "output_type": "AllDockerImageTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies": { + "description": null, + "documentation": "Inspects the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": ["InferDockerDependencies", "AllPackageableTargets"], + "name": "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.get_docker": { + "description": "Finding the `docker` binary and related tooling", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": ["DockerOptions", "EnvironmentAware"], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_args.docker_build_args": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DockerBuildArgsRequest", "DockerOptions"], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": ["DockerBuildContextRequest"], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GenerateDockerContextFiles"], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile": { + "description": null, + "documentation": null, + "input_gets": ["Get(Snapshot, CreateDigest, ..)"], + "input_types": ["GenerateDockerfileRequest"], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)" + ], + "input_types": [ + "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.go_sources.load_go_binary.setup_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": ["LoadedGoBinaryRequest", "GoRoot"], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.check.check_go": { + "description": "Check Go compilation", + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": ["GoCheckRequest"], + "name": "pants.backend.go.goals.check.check_go", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.go_generate": { + "description": "`go-generate` goal", + "documentation": null, + "input_gets": [ + "Get(RunPackageGeneratorsResult, RunPackageGeneratorsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["Targets", "Workspace"], + "name": "pants.backend.go.goals.generate.go_generate", + "output_type": "GoGenerateGoal", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.merge_digests_with_overwrite": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["OverwriteMergeDigests"], + "name": "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "output_type": "Digest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.run_go_package_generators": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, OverwriteMergeDigests, ..)" + ], + "input_types": [ + "RunPackageGeneratorsRequest", + "GoRoot", + "EnvironmentAware" + ], + "name": "pants.backend.go.goals.generate.run_go_package_generators", + "output_type": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.package_binary.package_go_binary": { + "description": "Package Go binary", + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["GoBinaryFieldSet"], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.create_go_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": ["Get(BuiltPackage, PackageFieldSet, ..)"], + "input_types": ["GoBinaryFieldSet"], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_package_target": { + "description": null, + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": ["FindPutativeGoPackageTargetRequest", "AllOwnedSources"], + "name": "pants.backend.go.goals.tailor.find_putative_go_package_target", + "output_type": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_targets": { + "description": "Determine candidate Go targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FindPutativeGoPackageTargetResult, FindPutativeGoPackageTargetRequest, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources", + "GolangSubsystem" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.prepare_go_test_binary": { + "description": "Prepare Go test binary", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(GenerateCoverageSetupCodeResult, GenerateCoverageSetupCodeRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": ["PrepareGoTestBinaryRequest", "PackageAnalyzerSetup"], + "name": "pants.backend.go.goals.test.prepare_go_test_binary", + "output_type": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.run_go_tests": { + "description": "Test with Go", + "documentation": null, + "input_gets": [ + "Get(FalliblePrepareGoTestBinaryResult, PrepareGoTestBinaryRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "GoTestSubsystem", + "TestExtraEnv", + "GoRoot" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.lint.gofmt.rules.gofmt_fmt": { + "description": "Format with gofmt", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "GofmtSubsystem", "GoRoot"], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.generate_targets_from_go_mod": { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "documentation": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": ["GenerateTargetsFromGoModRequest", "UnionMembership"], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_map_import_paths_by_module": { + "description": "Analyze and map Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis": { + "description": "Analyze Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMappings, GoModuleImportPathsMappingsHook, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.backend.go.target_type_rules.go_merge_import_paths_analysis", + "output_type": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_dependencies": { + "description": "Infer dependencies for first-party Go packages", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": ["InferGoPackageDependenciesRequest"], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies": { + "description": "Infer dependencies for third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": ["InferGoThirdPartyPackageDependenciesRequest"], + "name": "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.map_import_paths_to_packages": { + "description": "Map Go targets owned by module to import paths", + "documentation": null, + "input_gets": [], + "input_types": [ + "GoImportPathMappingRequest", + "AllGoModuleImportPathsMappings" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_type": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["AssembleGoAssemblyFilesRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "output_type": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["GenerateAssemblySymabisRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "output_type": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary": { + "description": "Determine first-party package used by `go_binary` target", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["GoBinaryMainPackageRequest"], + "name": "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": ["InferGoBinaryMainDependencyRequest"], + "name": "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "GoBuildOptionsFromTargetRequest", + "GoRoot", + "GolangSubsystem", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "output_type": "GoBuildOptions", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.build_go_package": { + "description": "Compile with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(ApplyCodeCoverageResult, ApplyCodeCoverageRequest, ..)", + "Get(CheckForGolangAssemblyResult, CheckForGolangAssemblyRequest, ..)", + "Get(CGoCompileResult, CGoCompileRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleGenerateAssemblySymabisResult, GenerateAssemblySymabisRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(FallibleAssembleGoAssemblyFilesResult, AssembleGoAssemblyFilesRequest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["BuildGoPackageRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly": { + "description": null, + "documentation": "Return true if any of the given `s_files` look like it could be a Golang-format assembly\nlanguage file.\n\nThis is used by the cgo rules as a heuristic to determine if the user is passing Golang assembly\nformat instead of gcc assembly format.", + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["CheckForGolangAssemblyRequest", "SetupAsmCheckBinary"], + "name": "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "output_type": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id": { + "description": null, + "documentation": null, + "input_gets": ["Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)"], + "input_types": ["GoCompileActionIdRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.render_embed_config": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["RenderEmbedConfigRequest"], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.required_built_go_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FallibleBuiltGoPackage"], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "output_type": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FallibleBuildGoPackageRequest"], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["_ResolveStdlibEmbedConfigRequest"], + "name": "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "output_type": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request": { + "description": "Set up Go compilation request", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(_ResolveStdlibEmbedConfigResult, _ResolveStdlibEmbedConfigRequest, ..)" + ], + "input_types": ["BuildGoPackageRequestForStdlibRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.cgo_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CGoPkgConfigFlagsResult, CGoPkgConfigFlagsRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(BashBinary)", + "Get(CGoCompilerWrapperScript)", + "Get(SetupCompilerCmdResult, SetupCompilerCmdRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": ["CGoCompileRequest", "GoRoot", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.cgo.cgo_compile_request", + "output_type": "CGoCompileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["CheckCompilerSupportsFlagRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "output_type": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": [], + "name": "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "output_type": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.setup_compiler_cmd": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CheckCompilerSupportsOptionResult, CheckCompilerSupportsFlagRequest, ..)" + ], + "input_types": ["SetupCompilerCmdRequest", "GoRoot"], + "name": "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "output_type": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path": { + "description": null, + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["CGoBinaryPathRequest", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "output_type": "BinaryPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["CGoPkgConfigFlagsRequest"], + "name": "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "output_type": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["GenerateCoverageSetupCodeRequest"], + "name": "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "output_type": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(ApplyCodeCoverageToFileResult, ApplyCodeCoverageToFileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ApplyCodeCoverageRequest"], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "output_type": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["ApplyCodeCoverageToFileRequest"], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "output_type": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": ["RenderGoCoverageProfileToHtmlRequest"], + "name": "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "output_type": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports": { + "description": "Merge Go coverage data", + "documentation": null, + "input_gets": [ + "Get(RenderGoCoverageReportResult, RenderGoCoverageReportRequest, ..)" + ], + "input_types": ["GoCoverageDataCollection"], + "name": "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(RenderGoCoverageProfileToHtmlResult, RenderGoCoverageProfileToHtmlRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "RenderGoCoverageReportRequest", + "DistDir", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "output_type": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["FirstPartyPkgAnalysisRequest", "PackageAnalyzerSetup"], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": ["FirstPartyPkgImportPathRequest"], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["FirstPartyPkgDigestRequest"], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(PathEnvironmentVariable)" + ], + "input_types": ["GolangSubsystem", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "output_type": "GoBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.determine_go_mod_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["GoModInfoRequest"], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets": { + "description": "Find all `go_mod` targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllUnexpandedTargets"], + "name": "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "output_type": "AllGoModTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod": { + "description": null, + "documentation": null, + "input_gets": ["Get(UnexpandedTargets, RawSpecs, ..)"], + "input_types": ["NearestAncestorGoModRequest"], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "output_type": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_owning_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(NearestAncestorGoModResult, NearestAncestorGoModRequest, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(Address, AddressInput, ..)" + ], + "input_types": ["OwningGoModRequest", "AllGoModTargets"], + "name": "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.goroot.setup_goroot": { + "description": "Find Go binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["GolangSubsystem", "GoBootstrap", "EnvironmentTarget"], + "name": "pants.backend.go.util_rules.goroot.setup_goroot", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltGoPackage, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["SdkImplicitLinkerDependenciesHook"], + "name": "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "output_type": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages": { + "description": "Analyze Go standard library packages.", + "documentation": null, + "input_gets": ["Get(ProcessResult, GoSdkProcess, ..)"], + "input_types": ["GoStdLibPackagesRequest"], + "name": "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "output_type": "GoStdLibPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_config.generate_import_config": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["ImportConfigRequest"], + "name": "pants.backend.go.util_rules.import_config.generate_import_config", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.link_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ImplicitLinkerDependencies, ImplicitLinkerDependenciesHook, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": ["LinkGoBinaryRequest", "LinkerSetup", "UnionMembership"], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.setup_go_linker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["BashBinary", "EnvironmentAware"], + "name": "pants.backend.go.util_rules.link.setup_go_linker", + "output_type": "LinkerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer": { + "description": null, + "documentation": null, + "input_gets": ["Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)"], + "input_types": ["GoRoot"], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.compute_go_tool_id": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, GoSdkProcess, ..)"], + "input_types": ["GoSdkToolIDRequest"], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["GoRoot"], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.setup_go_sdk_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "EnvironmentAware", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.tests_analysis.generate_testmain": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["GenerateTestMainRequest"], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": ["AnalyzeThirdPartyModuleRequest", "PackageAnalyzerSetup"], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["AnalyzeThirdPartyPackageRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, GoSdkProcess, ..)"], + "input_types": ["ModuleDescriptorsRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages": { + "description": "Download and analyze all third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": ["AllThirdPartyPackagesRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.extract_package_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": ["ThirdPartyPkgAnalysisRequest"], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function": { + "description": "Create Python Google Cloud Function", + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, BuildLambdexRequest, ..)", + "Get(BuiltPackage, BuildPythonFaaSRequest, ..)" + ], + "input_types": ["PythonGoogleCloudFunctionFieldSet", "Lambdex"], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping": { + "description": null, + "documentation": null, + "input_gets": ["Get(HelmChartMetadata, HelmChartMetaSourceField, ..)"], + "input_types": ["AllHelmChartTargets"], + "name": "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "output_type": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata": { + "description": "Inferring Helm chart dependencies", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "InferHelmChartDependenciesRequest", + "FirstPartyHelmChartMapping", + "ThirdPartyHelmArtifactMapping", + "HelmSubsystem" + ], + "name": "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.analyse_deployment": { + "description": "Analyse Helm deployment", + "documentation": null, + "input_gets": [ + "Get(RenderedHelmFiles, HelmDeploymentRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ParsedKubeManifest, ParseKubeManifestRequest, ..)" + ], + "input_types": ["AnalyseHelmDeploymentRequest"], + "name": "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "output_type": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmDeploymentReport, AnalyseHelmDeploymentRequest, ..)", + "Get(MaybeAddress, AddressInput, ..)" + ], + "input_types": [ + "FirstPartyHelmDeploymentMappingRequest", + "AllDockerImageTargets" + ], + "name": "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "output_type": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies": { + "description": "Find the dependencies needed by a Helm deployment", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)" + ], + "input_types": ["InferHelmDeploymentDependenciesRequest"], + "name": "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)" + ], + "input_types": [ + "InferHelmUnitTestChartDependencyRequest", + "AllHelmChartTargets", + "AllAssetTargetsByPath" + ], + "name": "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.deploy.run_helm_deploy": { + "description": "Run Helm deploy process", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmPostRenderer, HelmDeploymentPostRendererRequest, ..)", + "Get(InteractiveProcess, HelmDeploymentRequest, ..)" + ], + "input_types": ["DeployHelmDeploymentFieldSet", "HelmSubsystem"], + "name": "pants.backend.helm.goals.deploy.run_helm_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.partition_helm_lint": { + "description": null, + "documentation": null, + "input_gets": ["Get(HelmChart, HelmChartRequest, ..)"], + "input_types": ["PartitionRequest"], + "name": "pants.backend.helm.goals.lint.partition_helm_lint", + "output_type": "Partitions", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.run_helm_lint": { + "description": "Lint Helm charts", + "documentation": null, + "input_gets": ["Get(FallibleProcessResult, HelmProcess, ..)"], + "input_types": ["Batch", "HelmSubsystem"], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.package.run_helm_package": { + "description": "Package Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["HelmPackageFieldSet"], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.publish.publish_helm_chart": { + "description": "Push Helm chart to OCI registries", + "documentation": null, + "input_gets": ["Get(Process, HelmProcess, ..)"], + "input_types": ["PublishHelmChartRequest", "HelmSubsystem"], + "name": "pants.backend.helm.goals.publish.publish_helm_chart", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.tailor.find_putative_helm_targets": { + "description": "Determine candidate Helm chart targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeHelmTargetsRequest", + "AllOwnedSources", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["HelmArtifact", "HelmSubsystem"], + "name": "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "output_type": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping": { + "description": null, + "documentation": null, + "input_gets": ["Get(ResolvedHelmArtifact, HelmArtifact, ..)"], + "input_types": ["AllHelmArtifactTargets"], + "name": "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "output_type": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch.fetch_helm_artifact": { + "description": "Fetch Helm artifact", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ResolvedHelmArtifact, HelmArtifact, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["FetchHelmArtifactRequest"], + "name": "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "output_type": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["HelmKubeParserSubsystem"], + "name": "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "output_type": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest": { + "description": "Parse Kubernetes resource manifest", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["ParseKubeManifestRequest", "_HelmKubeParserTool"], + "name": "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "output_type": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher": { + "description": "Configure Helm post-renderer", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupHelmPostRenderer", + "_HelmPostRendererTool", + "CatBinary" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "output_type": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool": { + "description": "Setup Helm post renderer binaries", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["HelmPostRendererSubsystem"], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "output_type": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestPluginBinding", + "HelmUnitTestSubsystem", + "Platform" + ], + "name": "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "output_type": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_artifact_targets", + "output_type": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_chart_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_chart_targets", + "output_type": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_deployment_targets", + "output_type": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_unittest_test_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "output_type": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmUnitTestSetup, HelmUnitTestSetupRequest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["HelmUnitTestFieldSet"], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "output_type": "GenerateSnapshotsResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.run_helm_unittest": { + "description": "Run Helm Unittest", + "documentation": null, + "input_gets": [ + "Get(HelmUnitTestSetup, HelmUnitTestSetupRequest, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["Batch", "TestSubsystem"], + "name": "pants.backend.helm.test.unittest.run_helm_unittest", + "output_type": "TestResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.setup_helm_unittest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["HelmUnitTestSetupRequest", "HelmUnitTestSubsystem"], + "name": "pants.backend.helm.test.unittest.setup_helm_unittest", + "output_type": "HelmUnitTestSetup", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.create_chart_from_artifact": { + "description": "Compile third parth Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": ["FetchedHelmArtifact"], + "name": "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.find_chart_for_deployment": { + "description": "Find Helm deployment's chart", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)" + ], + "input_types": ["FindHelmDeploymentChart"], + "name": "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.get_helm_chart": { + "description": "Compile Helm chart", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["HelmChartRequest", "HelmSubsystem"], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["ParseHelmChartMetadataDigest"], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": ["HelmChartMetaSourceField"], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": ["HelmChartMetadata"], + "name": "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment": { + "description": "Prepare Helm deployment post-renderer", + "documentation": null, + "input_gets": [ + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)", + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)" + ], + "input_types": [ + "HelmDeploymentPostRendererRequest", + "UnionMembership", + "DockerOptions" + ], + "name": "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "output_type": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(Process, HelmProcess, ..)"], + "input_types": ["_HelmDeploymentProcessWrapper"], + "name": "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.render_helm_chart": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["RenderHelmChartRequest"], + "name": "pants.backend.helm.util_rules.renderer.render_helm_chart", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.run_renderer": { + "description": "Render Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["_HelmDeploymentProcessWrapper"], + "name": "pants.backend.helm.util_rules.renderer.run_renderer", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process": { + "description": "Prepare Helm deployment renderer", + "documentation": null, + "input_gets": [ + "Get(HelmChart, FindHelmDeploymentChart, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": ["HelmDeploymentRequest", "HelmSubsystem"], + "name": "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "output_type": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.find_chart_source_root": { + "description": "Detect Helm chart source root", + "documentation": null, + "input_gets": ["Get(HydratedSources, HydrateSourcesRequest, ..)"], + "input_types": ["HelmChartRootRequest"], + "name": "pants.backend.helm.util_rules.sources.find_chart_source_root", + "output_type": "HelmChartRoot", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.get_helm_source_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["HelmChartSourceFilesRequest"], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.all_helm_plugins": { + "description": null, + "documentation": null, + "input_gets": ["Get(HelmPlugin, ExternalHelmPluginBinding, ..)"], + "input_types": ["UnionMembership"], + "name": "pants.backend.helm.util_rules.tool.all_helm_plugins", + "output_type": "HelmPlugins", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.download_external_helm_plugin": { + "description": "Download external Helm plugin", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["ExternalHelmPluginRequest"], + "name": "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "output_type": "HelmPlugin", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.helm_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["HelmProcess", "HelmBinary", "HelmSubsystem"], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.setup_helm": { + "description": "Download and configure Helm", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": ["HelmSubsystem", "HelmPlugins", "Platform"], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.java.bsp.rules.bsp_java_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["JavaBSPCompileRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_java_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["JavaBSPResourcesRequest", "BuildRoot"], + "name": "pants.backend.java.bsp.rules.bsp_java_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_javac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": ["JavacOptionsParams"], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JavaBSPBuildTargetsMetadataRequest"], + "name": "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.handle_bsp_java_options_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["HandleJavacOptionsRequest", "BuildRoot"], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.compile.javac.compile_java_source": { + "description": "Compile with javac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "JvmSubsystem", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.backend.java.dependency_inference.java_parser.build_processors", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JavaParserToolLockfileSentinel"], + "name": "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["SourceFiles"], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis": { + "description": "Inferring Java dependencies and exports by source analysis", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis": { + "description": "Inferring Java dependencies by source analysis", + "documentation": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": ["InferJavaSourceDependencies"], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets": { + "description": "Find all Java targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols": { + "description": "Map all first party Java targets to their packages", + "documentation": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.check.javac_check": { + "description": "Check javac compilation", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["JavacCheckRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.java.goals.check.javac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.tailor.find_putative_targets": { + "description": "Determine candidate Java targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources", + "JavacSubsystem" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt": { + "description": "Format with Google Java Format", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "GoogleJavaFormatSubsystem", "InternalJdk"], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OwningNodePackage, OwningNodePackageRequest, ..)", + "Get(InferenceMetadata, PackageJsonSourceField, ..)", + "Get(NativeParsedJavascriptDependencies, NativeDependenciesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(NodePackageCandidateMap, RequestNodePackagesCandidateMap, ..)" + ], + "input_types": ["InferJSDependenciesRequest", "NodeJSInfer"], + "name": "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PackageJsonEntryPoints, PackageJsonSourceField, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": ["InferNodePackageDependenciesRequest", "NodeJSInfer"], + "name": "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages": { + "description": null, + "documentation": null, + "input_gets": ["Get(OwningNodePackage, OwningNodePackageRequest, ..)"], + "input_types": [ + "RequestNodePackagesCandidateMap", + "FirstPartyNodePackageTargets" + ], + "name": "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "output_type": "NodePackageCandidateMap", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PackageJsonImports"], + "name": "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata", + "output_type": "InferenceMetadata", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InstalledNodePackage, InstalledNodePackageRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["InstalledNodePackageRequest"], + "name": "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "output_type": "InstalledNodePackageWithSource", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.install_node_package.install_node_packages_for_address": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(NodeJsProjectEnvironment, NodeJSProjectEnvironmentRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InstalledNodePackageWithSource, InstalledNodePackageRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, NodeJsProjectEnvironmentProcess, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["InstalledNodePackageRequest", "UnionMembership"], + "name": "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "output_type": "InstalledNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.nodejs_project.find_node_js_projects": { + "description": null, + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "AllPackageJson", + "PnpmWorkspaces", + "NodeJS", + "UserChosenNodeJSResolveAliases" + ], + "name": "pants.backend.javascript.nodejs_project.find_node_js_projects", + "output_type": "AllNodeJSProjects", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment": { + "description": "Assembling nodejs project environment", + "documentation": null, + "input_gets": [ + "Get(ChosenNodeResolve, RequestNodeResolve, ..)", + "Get(OwningNodePackage, OwningNodePackageRequest, ..)" + ], + "input_types": ["NodeJSProjectEnvironmentRequest"], + "name": "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment", + "output_type": "NodeJsProjectEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, NodeJSToolProcess, ..)" + ], + "input_types": ["NodeJsProjectEnvironmentProcess"], + "name": "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.all_first_party_node_package_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.javascript.package_json.all_first_party_node_package_targets", + "output_type": "FirstPartyNodePackageTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.all_package_json": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedTargetGeneratorRequests, ResolveAllTargetGeneratorRequests, ..)", + "Get(PackageJsonForGlobs, PathGlobs, ..)" + ], + "input_types": [], + "name": "pants.backend.javascript.package_json.all_package_json", + "output_type": "AllPackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.all_package_json_names": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllPackageJson"], + "name": "pants.backend.javascript.package_json.all_package_json_names", + "output_type": "AllPackageJsonNames", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.find_owning_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": ["OwningNodePackageRequest"], + "name": "pants.backend.javascript.package_json.find_owning_package", + "output_type": "OwningNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.generate_node_package_targets": { + "description": null, + "documentation": null, + "input_gets": ["Get(PackageJson, PackageJsonSourceField, ..)"], + "input_types": [ + "GenerateNodePackageTargets", + "UnionMembership", + "AllPackageJsonNames" + ], + "name": "pants.backend.javascript.package_json.generate_node_package_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.package_json_for_source": { + "description": null, + "documentation": null, + "input_gets": ["Get(PackageJsonForGlobs, PathGlobs, ..)"], + "input_types": ["PackageJsonSourceField"], + "name": "pants.backend.javascript.package_json.package_json_for_source", + "output_type": "PackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.parse_package_json": { + "description": null, + "documentation": null, + "input_gets": ["Get(Snapshot, PathGlobs, ..)"], + "input_types": ["FileContent"], + "name": "pants.backend.javascript.package_json.parse_package_json", + "output_type": "PackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.pnpm_workspace_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["AllPackageJson"], + "name": "pants.backend.javascript.package_json.pnpm_workspace_files", + "output_type": "PnpmWorkspaces", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.read_package_jsons": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(PackageJson, FileContent, ..)" + ], + "input_types": ["PathGlobs"], + "name": "pants.backend.javascript.package_json.read_package_jsons", + "output_type": "PackageJsonForGlobs", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.script_entrypoints_for_source": { + "description": null, + "documentation": null, + "input_gets": ["Get(PackageJson, PackageJsonSourceField, ..)"], + "input_types": ["PackageJsonSourceField"], + "name": "pants.backend.javascript.package_json.script_entrypoints_for_source", + "output_type": "PackageJsonEntryPoints", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.subpath_imports_for_source": { + "description": null, + "documentation": null, + "input_gets": ["Get(PackageJson, PackageJsonSourceField, ..)"], + "input_types": ["PackageJsonSourceField"], + "name": "pants.backend.javascript.package_json.subpath_imports_for_source", + "output_type": "PackageJsonImports", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.resolve.resolve_for_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(OwningNodePackage, OwningNodePackageRequest, ..)" + ], + "input_types": ["RequestNodeResolve", "AllNodeJSProjects"], + "name": "pants.backend.javascript.resolve.resolve_for_package", + "output_type": "ChosenNodeResolve", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.resolve.resolve_to_first_party_node_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["NodeJSProjectResolves", "FirstPartyNodePackageTargets"], + "name": "pants.backend.javascript.resolve.resolve_to_first_party_node_package", + "output_type": "FirstPartyNodePackageResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.resolve.resolve_to_projects": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllNodeJSProjects", "UserChosenNodeJSResolveAliases"], + "name": "pants.backend.javascript.resolve.resolve_to_projects", + "output_type": "NodeJSProjectResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries": { + "description": "Finding Node.js distribution binaries.", + "documentation": null, + "input_gets": ["Get(DownloadedExternalTool, ExternalToolRequest, ..)"], + "input_types": ["NodeJS", "Platform", "_BinaryPathsPerVersion"], + "name": "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "output_type": "NodeJSBinaries", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version": { + "description": "Testing for Node.js binaries.", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["NodeJSBootstrap"], + "name": "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "output_type": "_BinaryPathsPerVersion", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.node_process_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["NodeJSBinaries", "EnvironmentAware"], + "name": "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "output_type": "NodeJSProcessEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(VersionManagerSearchPaths, VersionManagerSearchPathsRequest, ..)", + "Get(PathEnvironmentVariable)" + ], + "input_types": ["EnvironmentAware"], + "name": "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "output_type": "NodeJSBootstrap", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool": { + "description": "Preparing Corepack managed tool.", + "documentation": null, + "input_gets": ["Get(ProcessResult, Process, ..)"], + "input_types": [ + "CorepackToolRequest", + "NodeJSProcessEnvironment", + "NodeJS" + ], + "name": "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "output_type": "CorepackToolDigest", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CorepackToolDigest, CorepackToolRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["NodeJSToolProcess", "NodeJSProcessEnvironment"], + "name": "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["NodeJS"], + "name": "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases", + "output_type": "UserChosenNodeJSResolveAliases", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(NodeJS)", + "Get(Process, NodeJSToolProcess, ..)", + "Get(NodeJSProjectResolves)", + "Get(FirstPartyNodePackageResolves)", + "Get(InstalledNodePackage, InstalledNodePackageRequest, ..)", + "Get(Process, NodeJsProjectEnvironmentProcess, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["NodeJSToolRequest"], + "name": "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source": { + "description": "Compile with kotlinc", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(KotlincPluginTargetsForTarget, KotlincPluginsForTargetRequest, ..)", + "Get(KotlincPlugins, KotlincPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinSubsystem", + "KotlincSubsystem", + "CompileKotlinSourceRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlincPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "output_type": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "output_type": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["KotlincPluginsRequest"], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "output_type": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "KotlincPluginsForTargetRequest", + "AllKotlincPluginTargets", + "JvmSubsystem", + "KotlincSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "output_type": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": ["KotlinParserCompiledClassfiles", "SourceFiles"], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "output_type": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KotlinParserToolLockfileSentinel"], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": [ + "FallibleKotlinSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "output_type": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "output_type": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis": { + "description": "Inferring Kotlin dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferKotlinSourceDependencies", + "KotlinInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency": { + "description": "Infer dependency on Kotlin runtime artifacts for Kotlin targets.", + "documentation": null, + "input_gets": [ + "Get(KotlinRuntimeForResolve, KotlinRuntimeForResolveRequest, ..)" + ], + "input_types": ["InferKotlinRuntimeDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "output_type": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets": { + "description": "Find all Kotlin targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "output_type": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols": { + "description": "Map all first party Kotlin targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyKotlinTargetsMappingRequest", + "AllKotlinTargets", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.check.kotlinc_check": { + "description": "Check compilation for Kotlin", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["KotlincCheckRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.kotlin.goals.check.kotlinc_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.tailor.find_putative_targets": { + "description": "Determine candidate Kotlin targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeKotlinTargetsRequest", + "AllOwnedSources", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KtlintToolLockfileSentinel", "KtlintSubsystem"], + "name": "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt": { + "description": "Format with Ktlint", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KtlintToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "KtlintSubsystem", "InternalJdk"], + "name": "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency": { + "description": "Infer dependency on Kotlin Junit support artifact.", + "documentation": null, + "input_gets": [ + "Get(KotlinJunitLibrariesForResolve, KotlinJunitLibrariesForResolveRequest, ..)" + ], + "input_types": ["InferKotlinJunitTestDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinJunitLibrariesForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "output_type": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["InferOpenApiDocumentDependenciesRequest"], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["InferOpenApiSourceDependenciesRequest"], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.parse_openapi_sources": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": ["ParseOpenApiSources"], + "name": "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "output_type": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.goals.tailor.find_putative_targets": { + "description": "Determine candidate OpenAPI targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)" + ], + "input_types": [ + "PutativeOpenApiTargetsRequest", + "AllOwnedSources", + "OpenApiSubsystem" + ], + "name": "pants.backend.openapi.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.lint.spectral.rules.run_spectral": { + "description": "Lint with Spectral", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, NodeJSToolRequest, ..)" + ], + "input_types": ["Batch", "SpectralSubsystem"], + "name": "pants.backend.openapi.lint.spectral.rules.run_spectral", + "output_type": "LintResult", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + "pants.backend.project_info.count_loc.count_loc": { + "description": "`count-loc` goal", + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsPaths", + "Platform" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependencies.dependencies": { + "description": "`dependencies` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": ["Console", "Addresses", "DependenciesSubsystem"], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.dependents_goal": { + "description": "`dependents` goal", + "documentation": null, + "input_gets": ["Get(Dependents, DependentsRequest, ..)"], + "input_types": ["Addresses", "DependentsSubsystem", "Console"], + "name": "pants.backend.project_info.dependents.dependents_goal", + "output_type": "DependentsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.find_dependents": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DependentsRequest", "AddressToDependents"], + "name": "pants.backend.project_info.dependents.find_dependents", + "output_type": "Dependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.map_addresses_to_dependents": { + "description": "Map all targets to their dependents", + "documentation": null, + "input_gets": ["Get(Addresses, DependenciesRequest, ..)"], + "input_types": ["AllUnexpandedTargets"], + "name": "pants.backend.project_info.dependents.map_addresses_to_dependents", + "output_type": "AddressToDependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filedeps.file_deps": { + "description": "`filedeps` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": ["Console", "FiledepsSubsystem", "BuildRoot", "Addresses"], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filter_targets.filter_targets": { + "description": "`filter` goal", + "documentation": null, + "input_gets": [], + "input_types": ["Addresses", "FilterSubsystem", "Console"], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_roots.list_roots": { + "description": "`roots` goal", + "documentation": null, + "input_gets": [], + "input_types": ["Console", "RootsSubsystem", "AllSourceRoots"], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_type": "Roots", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_targets.list_targets": { + "description": "`list` goal", + "documentation": null, + "input_gets": ["Get(UnexpandedTargets, Addresses, ..)"], + "input_types": ["Addresses", "ListSubsystem", "Console"], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_type": "List", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.get_paths_between_root_and_destination": { + "description": "Get paths between root and destination.", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": ["RootDestinationPair"], + "name": "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "output_type": "SpecsPaths", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.get_paths_between_root_and_destinations": { + "description": null, + "documentation": null, + "input_gets": ["Get(SpecsPaths, RootDestinationPair, ..)"], + "input_types": ["RootDestinationsPair"], + "name": "pants.backend.project_info.paths.get_paths_between_root_and_destinations", + "output_type": "SpecsPathsCollection", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.paths": { + "description": "`paths` goal", + "documentation": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(SpecsPathsCollection, RootDestinationsPair, ..)" + ], + "input_types": ["Console", "PathsSubsystem"], + "name": "pants.backend.project_info.paths.paths", + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.get_target_data": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OptionalAddressFamily, AddressFamilyDir, ..)", + "Get(DependenciesRuleApplication, DependenciesRuleApplicationRequest, ..)" + ], + "input_types": ["UnexpandedTargets", "PeekSubsystem"], + "name": "pants.backend.project_info.peek.get_target_data", + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.peek": { + "description": "`peek` goal", + "documentation": null, + "input_gets": ["Get(TargetDatas, UnexpandedTargets, ..)"], + "input_types": ["Console", "PeekSubsystem", "UnexpandedTargets"], + "name": "pants.backend.project_info.peek.peek", + "output_type": "Peek", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.lint_with_regex_patterns": { + "description": "Lint with regex patterns", + "documentation": null, + "input_gets": ["Get(DigestContents, PathGlobs, ..)"], + "input_types": ["Batch", "RegexLintSubsystem"], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_type": "LintResult", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "RegexLintSubsystem"], + "name": "pants.backend.project_info.regex_lint.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.project_info" + }, + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects": { + "description": "Find all Python targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules": { + "description": "Creating map of first party Python targets to Python modules", + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses": { + "description": "Creating map of third party targets to Python modules", + "documentation": null, + "input_gets": [], + "input_types": ["AllPythonTargets", "PythonSetup"], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": [ + "PythonInferSubsystem", + "GeneralPythonDependencyVisitorRequest" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.general_parser_script", + "output_type": "PythonDependencyVisitor", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonDependencyVisitor, PythonDependencyVisitorRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.get_parser_script", + "output_type": "ParserScript", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(NativeParsedPythonDependencies, NativeDependenciesRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ParsePythonDependenciesRequest", + "ParserScript", + "UnionMembership", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": ["UnownedImportPossibleOwnerRequest", "PythonSetup"], + "name": "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "output_type": "UnownedImportPossibleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies": { + "description": "Inferring dependencies on `conftest.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source": { + "description": "Inferring Python dependencies by analyzing source", + "documentation": null, + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies": { + "description": "Inferring dependencies on `__init__.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies": { + "description": null, + "documentation": "Find the owning targets for the parsed dependencies.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargetsByPath)" + ], + "input_types": [ + "ResolvedParsedPythonDependenciesRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "output_type": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points": { + "description": "Find all `python_distribution` targets with `stevedore_namespace` entry_points", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "output_type": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces": { + "description": "Find `python_distribution` targets with entry_points in selected `stevedore_namespace`s", + "documentation": null, + "input_gets": [], + "input_types": [ + "StevedoreNamespacesProviderTargetsRequest", + "StevedoreExtensions" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces", + "output_type": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies": { + "description": "Infer dependencies based on `stevedore_namespaces` field.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": ["InferStevedoreNamespacesDependencies"], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions": { + "description": "Create map of `stevedore_namespace` to `python_distribution` targets", + "documentation": null, + "input_gets": [], + "input_types": ["AllStevedoreExtensionTargets"], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions", + "output_type": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension": { + "description": "Generate entry_points.txt to imitate `python_distribution` installation.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(Paths, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["GenerateEntryPointsTxtFromStevedoreExtensionRequest"], + "name": "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["CoverageSubsystem"], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.generate_coverage_reports": { + "description": "Generate Pytest coverage reports", + "documentation": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "KeepSandboxes", + "DistDir" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.merge_coverage_data": { + "description": "Merge Pytest coverage data", + "documentation": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage": { + "description": null, + "documentation": null, + "input_gets": ["Get(VenvPex, PexRequest, ..)"], + "input_types": ["CoverageSubsystem"], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis": { + "description": "`python-dump-source-analysis` goal", + "documentation": null, + "input_gets": [ + "Get(PythonSourceAnalysis, PythonImportDependenciesInferenceFieldSet, ..)" + ], + "input_types": [ + "DumpPythonSourceAnalysisSubsystem", + "Targets", + "Console" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis", + "output_type": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single": { + "description": null, + "documentation": "Infer the dependencies for a single python fieldset, keeping all the intermediate results.", + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "PythonImportDependenciesInferenceFieldSet", + "PythonSetup" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "output_type": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.export.do_export": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(ProcessResult, PexProcess, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "VenvExportRequest", + "PexPEX", + "PexEnvironment", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.do_export", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EditableLocalDists, EditableLocalDistsRequest, ..)", + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "_ExportVenvForResolveRequest", + "PythonSetup", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "output_type": "MaybeExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenvs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeExportResult, _ExportVenvForResolveRequest, ..)" + ], + "input_types": ["ExportVenvsRequest", "ExportSubsystem"], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_type": "ExportResults", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.lockfile.determine_python_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KnownPythonUserResolveNamesRequest", "PythonSetup"], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.generate_lockfile": { + "description": "Generate Python lockfile", + "documentation": null, + "input_gets": [ + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "GenerateLockfilesSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonSyntheticLockfileTargetsRequest", "PythonSetup"], + "name": "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "output_type": "SyntheticAddressMaps", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GeneratePythonLockfile"], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.core" + }, + "pants.backend.python.goals.package_dists.package_python_dist": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_dists.package_python_dist", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request": { + "description": null, + "documentation": null, + "input_gets": ["Get(Pex, PexFromTargetsRequest, ..)"], + "input_types": ["PexFromTargetsRequestForBuiltPackage"], + "name": "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.package_pex_binary.package_pex_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)" + ], + "input_types": ["PexBinaryFieldSet", "PexBinaryDefaults"], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_type": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.publish.twine_upload": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.pytest_runner.debug_python_test": { + "description": "Set up Pytest to run interactively", + "documentation": null, + "input_gets": ["Get(TestSetup, TestSetupRequest, ..)"], + "input_types": ["Batch"], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.debugpy_python_test": { + "description": "Set up debugpy to run an interactive Pytest session", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch", + "DebugPy", + "DebugAdapterSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.partition_python_tests": { + "description": "Partition Pytest", + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "PythonSetup"], + "name": "pants.backend.python.goals.pytest_runner.partition_python_tests", + "output_type": "Partitions", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": ["AllPytestPluginSetupsRequest", "UnionMembership"], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_python_tests": { + "description": "Run Pytest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["Batch", "TestSubsystem"], + "name": "pants.backend.python.goals.pytest_runner.run_python_tests", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(PexRequirementsInfo, PexRequirements, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_runtime_packages": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["RuntimePackagesPluginRequest"], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_ipython_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_python_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["PythonRepl", "PexEnvironment", "PythonSetup"], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexFromTargetsRequestForBuiltPackage, PexBinaryFieldSet, ..)", + "Get(BuiltPackage, PexFromTargetsRequestForBuiltPackage, ..)", + "Get(PythonExecutable, InterpreterConstraintsRequest, ..)" + ], + "input_types": ["PexBinaryFieldSet"], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)" + ], + "input_types": [ + "PythonRequirementFieldSet", + "PexEnvironment", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "DebugPy", + "DebugAdapterSubsystem", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["PythonSourceFieldSet", "PexEnvironment", "PythonSetup"], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["PythonSourceFieldSet", "PexEnvironment", "PythonSetup"], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.tailor.find_putative_targets": { + "description": "Determine candidate Python targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt": { + "description": "Format with add-trailing-comma", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "AddTrailingComma"], + "name": "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.autoflake.rules.autoflake_fix": { + "description": "Fix with Autoflake", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Autoflake"], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint": { + "description": "Lint with Bandit", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["Batch", "Bandit"], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.rules.partition_bandit": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Bandit", "PythonSetup"], + "name": "pants.backend.python.lint.bandit.rules.partition_bandit", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.black.rules.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Black"], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.rules.partition_black": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Black", "PythonSetup"], + "name": "pants.backend.python.lint.black.rules.partition_black", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.docformatter.rules.docformatter_fmt": { + "description": "Format with docformatter", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Docformatter", "KeepSandboxes"], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.flake8.rules.partition_flake8": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.partition_flake8", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.rules.run_flake8": { + "description": "Lint with Flake8", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["Batch", "Flake8", "Flake8FirstPartyPlugins"], + "name": "pants.backend.python.lint.flake8.rules.run_flake8", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["Flake8"], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.isort.rules.isort_fmt": { + "description": "Format with isort", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Isort", "KeepSandboxes"], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint": { + "description": "Lint with Pydocstyle", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["Batch", "Pydocstyle"], + "name": "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.backend.python.lint.pylint.rules.partition_pylint": { + "description": "Determine if necessary to partition Pylint input", + "documentation": null, + "input_gets": ["Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)"], + "input_types": [ + "PartitionRequest", + "Pylint", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.partition_pylint", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.run_pylint": { + "description": "Lint using Pylint", + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PexResolveInfo, Pex, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Pylint", + "PylintFirstPartyPlugins", + "PexEnvironment" + ], + "name": "pants.backend.python.lint.pylint.rules.run_pylint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["Pylint"], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix": { + "description": "Fix with pyupgrade", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "PyUpgrade"], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.backend.python.lint.ruff.rules.ruff_fix": { + "description": "Fix with ruff", + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, _RunRuffRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Ruff"], + "name": "pants.backend.python.lint.ruff.rules.ruff_fix", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.ruff_lint": { + "description": "Lint with ruff", + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, _RunRuffRequest, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.python.lint.ruff.rules.ruff_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.run_ruff": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["_RunRuffRequest", "Ruff"], + "name": "pants.backend.python.lint.ruff.rules.run_ruff", + "output_type": "FallibleProcessResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.yapf.rules.yapf_fmt": { + "description": "Format with yapf", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Yapf"], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements": { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.python_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from requirements.txt or PEP 621 compliant pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints": { + "description": "`py-constraints` goal", + "documentation": null, + "input_gets": [ + "Get(AllTargets)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependents, DependentsRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, CreateDigest, ..)"], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary", + "Platform" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": ["Get(BuiltPackage, PackageFieldSet, ..)"], + "input_types": ["PyOxidizerFieldSet"], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GenerateTargetsFromPexBinaries", "UnionMembership"], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency": { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies": { + "description": null, + "documentation": "Infer dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_files_generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonResolveFieldDefaultFactoryRequest", "PythonSetup"], + "name": "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_pex_entry_point": { + "description": "Determining the entry point for a `pex_binary` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["ResolvePexEntryPointRequest"], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points": { + "description": "Determining the entry points for a `python_distribution` target", + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": ["ResolvePythonDistributionEntryPointsRequest"], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.validate_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": ["Get(WrappedTarget, WrappedTargetRequest, ..)"], + "input_types": ["PythonValidateDependenciesRequest", "PythonSetup"], + "name": "pants.backend.python.target_types_rules.validate_python_dependencies", + "output_type": "ValidatedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment": { + "description": "Get mypyc build environment", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)" + ], + "input_types": [ + "MyPycDistBuildEnvironmentRequest", + "MyPyFirstPartyPlugins", + "MyPyConfigFile", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "output_type": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions": { + "description": "Determine if necessary to partition MyPy input", + "documentation": null, + "input_gets": ["Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)"], + "input_types": ["MyPyRequest", "MyPy", "PythonSetup"], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck": { + "description": "Typecheck using MyPy", + "documentation": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": ["MyPyRequest", "MyPy"], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "BuildRoot", + "MyPy", + "PythonSetup", + "MkdirBinary", + "MktempBinary", + "CpBinary", + "MvBinary", + "LnBinary", + "GlobalOptions" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": ["MyPy"], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["MyPy"], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions": { + "description": "Determine if it is necessary to partition Pytype's input (interpreter_constraints and resolves)", + "documentation": null, + "input_gets": ["Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)"], + "input_types": ["PytypeRequest", "Pytype", "PythonSetup"], + "name": "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "output_type": "PytypePartitions", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck": { + "description": "Typecheck using Pytype", + "documentation": null, + "input_gets": [ + "Get(PytypePartitions, PytypeRequest, ..)", + "Get(CheckResult, PytypePartition, ..)" + ], + "input_types": ["PytypeRequest", "Pytype"], + "name": "pants.backend.python.typecheck.pytype.rules.pytype_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition": { + "description": "Pytype typecheck each partition based on its interpreter_constraints", + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["PytypePartition", "Pytype", "PexEnvironment"], + "name": "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": ["AncestorFilesRequest"], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.find_build_system": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, DigestSubset, ..)"], + "input_types": ["BuildSystemRequest", "Setuptools"], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.run_pep517_build": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["DistBuildRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.faas.build_lambdex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PythonFaaSCompletePlatforms, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": ["BuildLambdexRequest", "Lambdex", "Platform"], + "name": "pants.backend.python.util_rules.faas.build_lambdex", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.build_python_faas": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RuntimePlatforms, RuntimePlatformsRequest, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PexVenv, PexVenvRequest, ..)" + ], + "input_types": ["BuildPythonFaaSRequest"], + "name": "pants.backend.python.util_rules.faas.build_python_faas", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": ["Get(CompletePlatforms, UnparsedAddressInputs, ..)"], + "input_types": ["PythonFaaSCompletePlatforms"], + "name": "pants.backend.python.util_rules.faas.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency": { + "description": "Inferring dependency from the python FaaS `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonFaaSHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.infer_runtime_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PythonFaaSCompletePlatforms, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["RuntimePlatformsRequest"], + "name": "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "output_type": "RuntimePlatforms", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.resolve_python_faas_handler": { + "description": "Determining the handler for a python FaaS target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["ResolvePythonFaaSHandlerRequest"], + "name": "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "output_type": "ResolvedPythonFaaSHandler", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.local_dists.build_local_dists": { + "description": "Building local distributions", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": ["LocalDistsPexRequest"], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists": { + "description": "Building editable local distributions (PEP 660)", + "documentation": null, + "input_gets": [ + "Get(LocalDistPEP660Wheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "EditableLocalDistsRequest", + "ResolveSortedPythonDistributionTargets", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "output_type": "EditableLocalDists", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions": { + "description": "Find all Python Distribution targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions", + "output_type": "AllPythonDistributionTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(PEP660BuildResult, DistBuildRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "output_type": "LocalDistPEP660Wheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build": { + "description": null, + "documentation": "Run our PEP 517 / PEP 660 wrapper script to generate an editable wheel.\n\nThe PEP 517 / PEP 660 wraper script is responsible for building the editable wheel.\nThe backend wrapper script, along with the commands that install the editable wheel,\nneed to conform to the following specs so that Pants is a PEP 660 compliant frontend,\na PEP 660 compliant backend, and that it builds a compliant wheel and install.\n\nNOTE: PEP 660 does not address the `.data` directory, so the wrapper ignores it.\n\nRelevant Specs:\n https://peps.python.org/pep-0517/\n https://peps.python.org/pep-0660/\n https://packaging.python.org/en/latest/specifications/platform-compatibility-tags/\n https://packaging.python.org/en/latest/specifications/recording-installed-packages/\n https://packaging.python.org/en/latest/specifications/direct-url-data-structure/\n https://packaging.python.org/en/latest/specifications/binary-distribution-format/", + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["DistBuildRequest", "PythonSetup", "BuildRoot"], + "name": "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "output_type": "PEP660BuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve": { + "description": "Associate resolves with all Python Distribution targets in project", + "documentation": null, + "input_gets": ["Get(OwnedDependencies, DependencyOwner, ..)"], + "input_types": ["AllPythonDistributionTargets", "PythonSetup"], + "name": "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "output_type": "ResolveSortedPythonDistributionTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": ["Get(SetupKwargs, SetupKwargsRequest, ..)"], + "input_types": ["ExportedTarget", "UnionMembership"], + "name": "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": ["GenerateSetupPyRequest"], + "name": "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.generate_chroot": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": ["DistBuildChrootRequest", "SetupPyGeneration"], + "name": "pants.backend.python.util_rules.package_dists.generate_chroot", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.generate_setup_py": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["GenerateSetupPyRequest"], + "name": "pants.backend.python.util_rules.package_dists.generate_setup_py", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_exporting_owner": { + "description": "Get exporting owner for target", + "documentation": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": ["OwnedDependency"], + "name": "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_owned_dependencies": { + "description": "Find all code to be published in the distribution", + "documentation": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": ["DependencyOwner", "UnionMembership"], + "name": "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_requirements": { + "description": "Compute distribution's 3rd party requirements", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.util_rules.package_dists.get_requirements", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": ["DistBuildChrootRequest", "UnionMembership"], + "name": "pants.backend.python.util_rules.package_dists.get_sources", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex.build_pex": { + "description": null, + "documentation": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(PexRequirementsInfo, PexRequirements, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": ["PexRequest", "PythonSetup", "PexSubsystem"], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_type": "BuildPexResult", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_optional_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(Pex, PexRequest, ..)"], + "input_types": ["OptionalPexRequest"], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_type": "OptionalPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(BuildPexResult, PexRequest, ..)"], + "input_types": ["PexRequest"], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_type": "Pex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_venv_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["VenvPexRequest", "BashBinary", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_type": "VenvPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, PexProcess, ..)"], + "input_types": ["PexPEX", "Pex"], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": ["Get(ProcessResult, VenvPexProcess, ..)"], + "input_types": ["VenvPex"], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["UnparsedAddressInputs"], + "name": "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": ["Get(CompletePlatforms, UnparsedAddressInputs, ..)"], + "input_types": ["PexCompletePlatformsField"], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.find_interpreter": { + "description": "Find Python interpreter for constraints", + "documentation": null, + "input_gets": [ + "Get(PythonExecutable, PythonProvider, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexSubsystem", + "EnvironmentTarget", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_type": "PythonExecutable", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.get_req_strings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": ["PexRequirements"], + "name": "pants.backend.python.util_rules.pex.get_req_strings", + "output_type": "PexRequirementsInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_pex_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["PexProcess", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_venv_pex_process": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["VenvPexProcess", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.wrap_venv_prex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PexRequest", "PexEnvironment"], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_type": "VenvPexRequest", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.download_pex_pex": { + "description": null, + "documentation": null, + "input_gets": ["Get(DownloadedExternalTool, ExternalToolRequest, ..)"], + "input_types": ["PexCli", "Platform"], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_type": "PexPEX", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonBuildStandaloneBinary", + "EnvironmentAware", + "GlobalOptions", + "PexSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_environment.find_pex_python": { + "description": "Prepare environment for running PEXes", + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBuildStandaloneBinary", + "PexSubsystem", + "EnvironmentAware", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_type": "PexEnvironment", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve": { + "description": null, + "documentation": null, + "input_gets": ["Get(TransitiveTargets, TransitiveTargetsRequest, ..)"], + "input_types": ["ChosenPythonResolveRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_type": "PexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, PathGlobs, ..)"], + "input_types": ["PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RequirementsPexRequest"], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": ["_RepositoryPexRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets": { + "description": null, + "documentation": null, + "input_gets": ["Get(TransitiveTargets, TransitiveTargetsRequest, ..)"], + "input_types": ["InterpreterConstraintsRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ResolvePexConfigRequest", + "PythonSetup", + "PythonRepos", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "output_type": "ResolvePexConfig", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Resolve", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "output_type": "Lockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.load_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["LoadedLockfileRequest", "PythonSetup"], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_type": "LoadedLockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_venv.pex_venv": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": ["PexVenvRequest"], + "name": "pants.backend.python.util_rules.pex_venv.pex_venv", + "output_type": "PexVenv", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.python_sources.prepare_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["PythonSourceFilesRequest", "UnionMembership"], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.python_sources.strip_python_sources": { + "description": null, + "documentation": null, + "input_gets": ["Get(StrippedSourceFiles, SourceFiles, ..)"], + "input_types": ["PythonSourceFiles"], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets": { + "description": "Find all vcs_version targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "output_type": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeGitWorktree, GitWorktreeRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GeneratePythonFromSetuptoolsSCMRequest", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules": { + "description": null, + "documentation": null, + "input_gets": ["Get(StrippedFileName, StrippedFileNameRequest, ..)"], + "input_types": [ + "AllVCSVersionTargets", + "PythonSetup", + "PythonVCSVersionMappingMarker" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsMetadataRequest", + "BashBinary", + "JvmSubsystem", + "ScalaSubsystem", + "BuildRoot", + "ReadlinkBinary" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ScalaBSPCompileRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaMainClassesParams"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request", + "output_type": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ScalaBSPResourcesRequest", "BuildRoot"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaTestClassesParams"], + "name": "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request", + "output_type": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": ["ScalacOptionsParams"], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.collect_thirdparty_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ThirdpartyModulesRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "output_type": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["HandleScalacOptionsRequest", "BuildRoot", "Workspace"], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ScalaBSPDependencyModulesRequest", "BuildRoot"], + "name": "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "output_type": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.compile_scala_source": { + "description": "Compile with scalac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.fetch_scala_library": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": ["ScalaLibraryRequest"], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.fetch_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ScalaPluginsRequest"], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName", + "FieldDefaults" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis": { + "description": "Inferring Scala dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency": { + "description": "Infer dependency on scala-library artifact for Scala target.", + "documentation": null, + "input_gets": [ + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": ["InferScalaLibraryDependencyRequest", "JvmSubsystem"], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies": { + "description": "Infer dependency on scala plugin artifacts for Scala target.", + "documentation": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": ["InferScalaPluginDependenciesRequest"], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "AnalyzeScalaSourceRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "SourceFilesRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "output_type": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaParserToolLockfileSentinel"], + "name": "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, {FallibleProcessResult: .., ProductDescription: ..})", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["FallibleScalaSourceDependencyAnalysisResult"], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets": { + "description": "Find all Scala targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols": { + "description": "Map all first party Scala targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.check.scalac_check": { + "description": "Check compilation for Scala", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["ScalacCheckRequest", "ClasspathEntryRequestFactory"], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.repl.create_scala_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ScalaRepl", "BashBinary", "ScalaSubsystem"], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.tailor.find_putative_targets": { + "description": "Determine candidate Scala targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files": { + "description": null, + "documentation": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": ["Get(Snapshot, PathGlobs, ..)"], + "input_types": ["GatherScalafmtConfigFilesRequest"], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalafmtToolLockfileSentinel", "ScalafmtSubsystem"], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": ["PartitionRequest", "ScalafmtSubsystem"], + "name": "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt": { + "description": "Format with scalafmt", + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "InternalJdk", "ScalafmtSubsystem"], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.resolve.artifact.scala_artifact_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": ["ScalaArtifactClasspathEntryRequest"], + "name": "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.generate_jvm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateJvmArtifactForScalaTargets", + "JvmSubsystem", + "ScalaSubsystem", + "UnionMembership" + ], + "name": "pants.backend.scala.target_types.generate_jvm_artifact_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.scala_settings_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaInferSubsystem", "ScalaSettingsRequest"], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalatestToolLockfileSentinel", "Scalatest"], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.run_scalatest_test": { + "description": "Run Scalatest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["TestSubsystem", "Batch"], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["Batch"], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ScalaArtifactsForVersionRequest"], + "name": "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version", + "output_type": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.shell.dependency_inference.find_all_shell_targets": { + "description": "Find all Shell targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.infer_shell_dependencies": { + "description": "Inferring Shell dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": ["InferShellDependencies", "ShellMapping", "ShellSetup"], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.map_shell_files": { + "description": "Creating map of Shell file names to Shell targets", + "documentation": null, + "input_gets": [], + "input_types": ["AllShellTargets"], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.parse_shell_imports": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["ParseShellImportsRequest", "Shellcheck", "Platform"], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.tailor.find_putative_targets": { + "description": "Determine candidate shell targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources", + "ShellSetup" + ], + "name": "pants.backend.shell.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.test.test_shell_command": { + "description": "Test with shell command", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Process, ShellCommandProcessFromTargetRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "TestSubsystem", "TestExtraEnv"], + "name": "pants.backend.shell.goals.test.test_shell_command", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck": { + "description": "Lint with Shellcheck", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "Shellcheck", "Platform"], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_type": "LintResult", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt": { + "description": "Format with shfmt", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "Shfmt", "Platform"], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell": { + "description": "Determine shunit2 shell", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["Shunit2RunnerRequest", "EnvironmentAware"], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2": { + "description": "Run tests with Shunit2", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["Batch", "TestSubsystem"], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test": { + "description": "Setup Shunit2 to run interactively", + "documentation": null, + "input_gets": ["Get(TestSetup, TestSetupRequest, ..)"], + "input_types": ["Batch"], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target": { + "description": "Setup shunit2", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "EnvironmentAware", + "TestSubsystem", + "TestExtraEnv", + "GlobalOptions", + "Shunit2", + "Platform" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["ShellGeneratorSettingsRequest", "ShellSetup"], + "name": "pants.backend.shell.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Process, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(AdhocProcessResult, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_shell_command_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)" + ], + "input_types": ["BashBinary", "RunShellCommand"], + "name": "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox": { + "description": "Running shell command", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., ShellCommandProcessFromTargetRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateFilesFromShellCommandRequest"], + "name": "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + }, + "pants.backend.terraform.dependencies.get_terraform_providers": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": ["TerraformDependenciesRequest"], + "name": "pants.backend.terraform.dependencies.get_terraform_providers", + "output_type": "TerraformDependenciesResponse", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependencies.init_terraform": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(TerraformDependenciesResponse, TerraformDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["TerraformInitRequest"], + "name": "pants.backend.terraform.dependencies.init_terraform", + "output_type": "TerraformInitResponse", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": ["InferTerraformModuleDependenciesRequest"], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": ["TerraformHcl2Parser"], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources": { + "description": null, + "documentation": null, + "input_gets": ["Get(Process, VenvPexProcess, ..)"], + "input_types": ["ParseTerraformModuleSources", "ParserSetup"], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.check.terraform_check": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TerraformInitResponse, TerraformInitRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": ["TerraformCheckRequest", "TerraformValidateSubsystem"], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TerraformInitResponse, TerraformInitRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, TerraformProcess, ..)" + ], + "input_types": ["TerraformDeploymentRequest", "TerraformTool"], + "name": "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.deploy.run_terraform_deploy": { + "description": "Run Terraform deploy process", + "documentation": null, + "input_gets": ["Get(InteractiveProcess, TerraformDeploymentRequest, ..)"], + "input_types": ["DeployTerraformFieldSet"], + "name": "pants.backend.terraform.goals.deploy.run_terraform_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets": { + "description": "Determine candidate Terraform targets to create", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": [ + "PutativeTerraformTargetsRequest", + "TerraformTool", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourceFiles, SourceFilesRequest, ..)"], + "input_types": ["PartitionRequest", "TfFmtSubsystem"], + "name": "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt": { + "description": "Format with `terraform fmt`", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["Batch", "TfFmtSubsystem"], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.target_types.all_terraform_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.backend.terraform.target_types.all_terraform_deployment_targets", + "output_type": "AllTerraformDeploymentTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.tool.setup_terraform_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": ["TerraformProcess", "TerraformTool", "Platform"], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.tools.preamble.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "PreambleSubsystem"], + "name": "pants.backend.tools.preamble.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.preamble.rules.preamble_fmt": { + "description": "Add preambles", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["Batch", "PreambleSubsystem"], + "name": "pants.backend.tools.preamble.rules.preamble_fmt", + "output_type": "FixResult", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.workunit_logger.rules.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["WorkunitLoggerCallbackFactoryRequest", "WorkunitLogger"], + "name": "pants.backend.tools.workunit_logger.rules.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.backend.experimental.tools.workunit_logger" + }, + "pants.backend.tools.yamllint.rules.gather_config_files": { + "description": null, + "documentation": "Gather yamllint configuration files.", + "input_gets": ["Get(Snapshot, PathGlobs, ..)"], + "input_types": ["YamllintConfigFilesRequest", "Yamllint"], + "name": "pants.backend.tools.yamllint.rules.gather_config_files", + "output_type": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(YamllintConfigFiles, YamllintConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": ["PartitionRequest", "Yamllint"], + "name": "pants.backend.tools.yamllint.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.run_yamllint": { + "description": "Lint using yamllint", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, PexProcess, ..)" + ], + "input_types": ["Batch", "Yamllint"], + "name": "pants.backend.tools.yamllint.rules.run_yamllint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.bsp.rules.bsp_context": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["SessionValues"], + "name": "pants.bsp.rules.bsp_context", + "output_type": "BSPContext", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.bsp_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPCompileResult, CompileOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["CompileParams", "Workspace"], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_type": "CompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.compile_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPCompileResult, BSPCompileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileOneBSPTargetRequest", + "BSPContext", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.compile.compile_bsp_target", + "output_type": "BSPCompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.lifecycle.bsp_build_initialize": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["InitializeBuildParams", "UnionMembership"], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.bsp_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPResourcesResult, ResourcesForOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResourcesParams", "Workspace"], + "name": "pants.bsp.util_rules.resources.bsp_resources_request", + "output_type": "ResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.resources_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPResourcesResult, BSPResourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResourcesForOneBSPTargetRequest", "UnionMembership"], + "name": "pants.bsp.util_rules.resources.resources_bsp_target", + "output_type": "BSPResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": ["SourcesParams"], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_type": "SourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["DependencyModulesParams", "Workspace"], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["DependencySourcesParams"], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_workspace_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateOneBSPBuildTargetResult, GenerateOneBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "BSPBuildTargets", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPBuildTargetsMetadataResult, BSPBuildTargetsMetadataRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "GenerateOneBSPBuildTargetRequest", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "output_type": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": ["MaterializeBuildTargetSourcesRequest", "BuildRoot"], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(BSPBuildTargetInternal, _ParseOneBSPMappingRequest, ..)" + ], + "input_types": ["BSPGoal"], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "output_type": "BSPBuildTargets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.parse_one_bsp_mapping": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["_ParseOneBSPMappingRequest"], + "name": "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses": { + "description": null, + "documentation": null, + "input_gets": ["Get(Targets, RawSpecsWithoutFileOwners, ..)"], + "input_types": [ + "BSPBuildTargetInternal", + "UnionMembership", + "FieldDefaults" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "output_type": "Targets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["BuildTargetIdentifier", "BSPBuildTargets"], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": ["BSPBuildTargetInternal"], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "output_type": "BSPBuildTargetSourcesInfo", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_one_dependency_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(BSPDependencyModulesResult, BSPDependencyModulesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResolveOneDependencyModuleRequest", "UnionMembership"], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + }, + "pants.core.goals.check.check": { + "description": "`check` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(CheckResults, {CheckRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "Workspace", + "FilteredTargets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_type": "Check", + "provider": "pants.core" + }, + "pants.core.goals.deploy.publish_process_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)" + ], + "input_types": ["_PublishProcessesForTargetRequest"], + "name": "pants.core.goals.deploy.publish_process_for_target", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.deploy.run_deploy": { + "description": "`experimental-deploy` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(DeployProcess, DeployFieldSet, ..)", + "Get(PublishProcesses, _PublishProcessesForTargetRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": ["Console", "DeploySubsystem"], + "name": "pants.core.goals.deploy.run_deploy", + "output_type": "Deploy", + "provider": "pants.core" + }, + "pants.core.goals.export.export": { + "description": "`export` goal", + "documentation": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir", + "ExportSubsystem" + ], + "name": "pants.core.goals.export.export", + "output_type": "Export", + "provider": "pants.core" + }, + "pants.core.goals.fix.convert_fix_result_to_lint_result": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FixResult"], + "name": "pants.core.goals.fix.convert_fix_result_to_lint_result", + "output_type": "LintResult", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix": { + "description": "`fix` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FixSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fix.fix", + "output_type": "Fix", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix_batch": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(FixResult, Batch, ..)" + ], + "input_types": ["_FixBatchRequest"], + "name": "pants.core.goals.fix.fix_batch", + "output_type": "_FixBatchResult", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt": { + "description": "`fmt` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_type": "Fmt", + "provider": "pants.core" + }, + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal": { + "description": "`generate-lockfiles` goal", + "documentation": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, {RequestedUserResolveNames: .., EnvironmentName: ..})", + "Get(WrappedGenerateLockfile, {GenerateToolLockfileSentinel: .., EnvironmentName: ..})", + "Get(GenerateLockfileResult, {GenerateLockfile: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem", + "ChosenLocalEnvironmentName", + "Console", + "GlobalOptions" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + }, + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(GenerateSnapshotsResult, {GenerateSnapshotsFieldSet: .., EnvironmentName: ..})" + ], + "input_types": ["EnvironmentAwareGenerateSnapshotsRequest"], + "name": "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "output_type": "GenerateSnapshotsResult", + "provider": "pants.core" + }, + "pants.core.goals.generate_snapshots.generate_snapshots": { + "description": "`generate-snapshots` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(GenerateSnapshotsResult, EnvironmentAwareGenerateSnapshotsRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["Workspace"], + "name": "pants.core.goals.generate_snapshots.generate_snapshots", + "output_type": "GenerateSnapshots", + "provider": "pants.core" + }, + "pants.core.goals.lint.lint": { + "description": "`lint` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(LintResult, Batch, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Specs", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_type": "Lint", + "provider": "pants.core" + }, + "pants.core.goals.package.environment_aware_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(BuiltPackage, {PackageFieldSet: .., EnvironmentName: ..})" + ], + "input_types": ["EnvironmentAwarePackageRequest"], + "name": "pants.core.goals.package.environment_aware_package", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.goals.package.find_all_packageable_targets": { + "description": "Find all packageable targets in project", + "documentation": null, + "input_gets": ["Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)"], + "input_types": ["AllTargets"], + "name": "pants.core.goals.package.find_all_packageable_targets", + "output_type": "AllPackageableTargets", + "provider": "pants.core" + }, + "pants.core.goals.package.package_asset": { + "description": "`package` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["Workspace", "DistDir"], + "name": "pants.core.goals.package.package_asset", + "output_type": "Package", + "provider": "pants.core" + }, + "pants.core.goals.publish.package_for_publish": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(PublishProcesses, {PublishRequest: .., EnvironmentName: ..})" + ], + "input_types": ["PublishProcessesRequest", "ChosenLocalEnvironmentName"], + "name": "pants.core.goals.publish.package_for_publish", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.publish.run_publish": { + "description": "`publish` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "PublishSubsystem", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.publish.run_publish", + "output_type": "Publish", + "provider": "pants.core" + }, + "pants.core.goals.repl.run_repl": { + "description": "`repl` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "ReplSubsystem", + "FilteredTargets", + "UnionMembership", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.repl.run_repl", + "output_type": "Repl", + "provider": "pants.core" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RunShellCommand"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, RunFieldSet, ..)"], + "input_types": ["PythonRequirementFieldSet"], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["RunShellCommand"], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run.run": { + "description": "`run` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(RunDebugAdapterRequest, RunFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "DebugAdapterSubsystem", + "GlobalOptions", + "Workspace", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.run.run", + "output_type": "Run", + "provider": "pants.core" + }, + "pants.core.goals.tailor.determine_all_owned_sources": { + "description": "Determine all files already owned by targets", + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["AllUnexpandedTargets"], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_type": "AllOwnedSources", + "provider": "pants.core" + }, + "pants.core.goals.tailor.edit_build_files": { + "description": "Edit BUILD files with new targets", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["EditBuildFilesRequest", "TailorSubsystem"], + "name": "pants.core.goals.tailor.edit_build_files", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + }, + "pants.core.goals.tailor.rename_conflicting_targets": { + "description": null, + "documentation": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": ["PutativeTargets", "AllUnexpandedTargets"], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + }, + "pants.core.goals.tailor.restrict_conflicting_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": ["PutativeTarget"], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + }, + "pants.core.goals.tailor.tailor": { + "description": "`tailor` goal", + "documentation": null, + "input_gets": [ + "Get(SpecsPaths, Specs, ..)", + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_type": "TailorGoal", + "provider": "pants.core" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Batch"], + "name": "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test.build_runtime_package_dependencies": { + "description": "Build runtime package dependencies for tests", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)" + ], + "input_types": ["BuildPackageDependenciesRequest"], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + }, + "pants.core.goals.test.get_filtered_environment": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.goals.test.get_filtered_environment", + "output_type": "TestExtraEnv", + "provider": "pants.core" + }, + "pants.core.goals.test.run_tests": { + "description": "`test` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(Partitions, {PartitionRequest: .., EnvironmentName: ..})", + "Get(EnvironmentName, SingleEnvironmentNameRequest, ..)", + "Get(TestDebugRequest, {Batch: .., EnvironmentName: ..})", + "Get(TestDebugAdapterRequest, {Batch: .., EnvironmentName: ..})", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})", + "Get(TestResult, {Batch: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, {CoverageDataCollection: .., EnvironmentName: ..})", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "DebugAdapterSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.test.run_tests", + "output_type": "Test", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_black": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["FormatWithBlackRequest", "Black"], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_yapf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": ["FormatWithYapfRequest", "Yapf"], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields": { + "description": "Check for deprecated field type names", + "documentation": null, + "input_gets": ["Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)"], + "input_types": ["RenameDeprecatedFieldsRequest"], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets": { + "description": "Check for deprecated target type names", + "documentation": null, + "input_gets": ["Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)"], + "input_types": ["RenameDeprecatedTargetsRequest"], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.update_build_files": { + "description": "Update all BUILD files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership", + "Specs" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(VersionManagerSearchPaths, VersionManagerSearchPathsRequest, ..)" + ], + "input_types": [ + "_ExpandInterpreterSearchPathsRequest", + "PathEnvironmentVariable" + ], + "name": "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "output_type": "_SearchPaths", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap.python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(_SearchPaths, _ExpandInterpreterSearchPathsRequest, ..)" + ], + "input_types": ["EnvironmentAware"], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_type": "PythonBootstrap", + "provider": "pants.core" + }, + "pants.core.target_types.find_all_assets": { + "description": "Find all assets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.core.target_types.find_all_assets", + "output_type": "AllAssetTargets", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_file_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["GenerateFileSourceRequest", "Platform"], + "name": "pants.core.target_types.hydrate_file_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_resource_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": ["GenerateResourceSourceRequest", "Platform"], + "name": "pants.core.target_types.hydrate_resource_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.map_assets_by_path": { + "description": "Mapping assets by path", + "documentation": null, + "input_gets": [], + "input_types": ["AllAssetTargets"], + "name": "pants.core.target_types.map_assets_by_path", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + }, + "pants.core.target_types.package_archive_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": ["ArchiveFieldSet"], + "name": "pants.core.target_types.package_archive_target", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.target_types.relocate_files": { + "description": "Relocating loose files for `relocated_files` targets", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["RelocateFilesViaCodegenRequest"], + "name": "pants.core.target_types.relocate_files", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.download_python_binary": { + "description": "Downloading Python for scripts", + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ProcessResult, Process, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "_DownloadPythonBuildStandaloneBinaryRequest", + "Platform", + "TarBinary", + "PythonBootstrapSubsystem", + "BashBinary" + ], + "name": "pants.core.util_rules.adhoc_binaries.download_python_binary", + "output_type": "_PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PythonBuildStandaloneBinary"], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GunzipBinaryRequest", "GunzipBinary"], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_PythonBuildStandaloneBinary, _DownloadPythonBuildStandaloneBinaryRequest, ..)" + ], + "input_types": ["EnvironmentTarget"], + "name": "pants.core.util_rules.adhoc_binaries.get_python_for_scripts", + "output_type": "PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["AddExtraSandboxContentsToProcess"], + "name": "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents": { + "description": null, + "documentation": null, + "input_gets": ["Get(Digest, MergeDigests, ..)"], + "input_types": ["MergeExtraSandboxContents"], + "name": "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "output_type": "ExtraSandboxContents", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["AdhocProcessRequest", "BashBinary"], + "name": "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(RunInSandboxRequest, RunFieldSet, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ResolveExecutionDependenciesRequest", "BashBinary"], + "name": "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "output_type": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.run_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, AdhocProcessRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, {FallibleProcessResult: .., ProductDescription: ..})", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["AdhocProcessRequest"], + "name": "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest": { + "description": null, + "documentation": "Backwards-compatibility helper.", + "input_gets": [], + "input_types": ["Digest"], + "name": "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest", + "output_type": "MaybeExtractArchiveRequest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.create_archive": { + "description": "Creating an archive file", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ZipBinary)", + "Get(BashBinary)", + "Get(TarBinary)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["CreateArchive"], + "name": "pants.core.util_rules.archive.create_archive", + "output_type": "Digest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.maybe_extract_archive": { + "description": "Extracting an archive file", + "documentation": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary)", + "Get(TarBinary)", + "Get(GunzipBinary)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["MaybeExtractArchiveRequest"], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_type": "ExtractedArchive", + "provider": "pants.core" + }, + "pants.core.util_rules.asdf.resolve_asdf_tool_paths": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["AsdfToolPathsRequest", "BuildRoot"], + "name": "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "output_type": "AsdfToolPathsResult", + "provider": "pants.core" + }, + "pants.core.util_rules.config_files.find_config_file": { + "description": "Find config files", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": ["ConfigFilesRequest"], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_type": "ConfigFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.distdir.get_distdir": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GlobalOptions", "BuildRoot"], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_type": "DistDir", + "provider": "pants.core" + }, + "pants.core.util_rules.external_tool.download_external_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["ExternalToolRequest"], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "ShellTestSubsystem"], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["PartitionRequest", "Shellcheck"], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourcesPaths, SourcesPathsRequest, ..)"], + "input_types": ["PartitionRequest", "Shfmt"], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths": { + "description": null, + "documentation": "Inspects the directory of a version manager tool like pyenv or nvm to find installations.", + "input_gets": [], + "input_types": ["VersionManagerSearchPathsRequest"], + "name": "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths", + "output_type": "VersionManagerSearchPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.search_paths.validate_search_paths": { + "description": null, + "documentation": "Checks for special search path strings, and errors if any are invalid for the environment.\n\nThis will return:\n* The search paths, unaltered, for local/undefined environments, OR\n* The search paths, with invalid tokens removed, if the provided value was unaltered from the\n default value in the options system.\n* The search paths unaltered, if the search paths are all valid tokens for this environment\n\nIf the environment is non-local and there are invalid tokens for those environments, raise\n`ValueError`.", + "input_gets": [], + "input_types": ["ValidateSearchPathsRequest"], + "name": "pants.core.util_rules.search_paths.validate_search_paths", + "output_type": "ValidatedSearchPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.source_files.determine_source_files": { + "description": "Get all relevant source files", + "documentation": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["SourceFilesRequest"], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_type": "SourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_file_name": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourceRoot, SourceRootRequest, ..)"], + "input_types": ["StrippedFileNameRequest"], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_type": "StrippedFileName", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_source_roots": { + "description": null, + "documentation": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": ["SourceFiles"], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_sources_paths": { + "description": null, + "documentation": null, + "input_gets": ["Get(SourceRoot, SourceRootRequest, ..)"], + "input_types": ["SourcesPaths"], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + }, + "pants.core.util_rules.subprocess_environment.get_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": ["Get(EnvironmentVars, EnvironmentVarsRequest, ..)"], + "input_types": ["EnvironmentAware"], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.create_binary_shims": { + "description": null, + "documentation": "Creates a bin directory with shims for all requested binaries.\n\nThis can be provided to a `Process` as an `immutable_input_digest`, or can be merged into the\ninput digest.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["BinaryShimsRequest", "BashBinary"], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_type": "BinaryShims", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": ["BinaryPathRequest", "EnvironmentTarget"], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_type": "BinaryPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat": { + "description": "Finding the `cat` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cat", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod": { + "description": "Finding the `chmod` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cp": { + "description": "Finding the `cp` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_cp", + "output_type": "CpBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff": { + "description": "Finding the `diff` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_git", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_ln": { + "description": "Finding the `ln` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_ln", + "output_type": "LnBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir": { + "description": "Finding the `mkdir` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mktemp": { + "description": "Finding the `mktempt` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mktemp", + "output_type": "MktempBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mv": { + "description": "Finding the `mv` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_mv", + "output_type": "MvBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_open": { + "description": "Finding the `open` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_open", + "output_type": "OpenBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink": { + "description": "Finding the `readlink` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_readlink", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar": { + "description": "Finding the `tar` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": ["Platform"], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_touch": { + "description": "Finding the `touch` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_touch", + "output_type": "TouchBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip": { + "description": "Finding the `unzip` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip": { + "description": "Finding the `zip` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.get_bash": { + "description": "Finding the `bash` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": ["Get(BinaryPaths, BinaryPathRequest, ..)"], + "input_types": [], + "name": "pants.core.util_rules.system_binaries.maybe_find_git", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["MaybeGitBinaryRequest", "MaybeGitBinary"], + "name": "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": ["GenerateWrapSourceSourcesRequest"], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source", + "output_type": "GeneratedSources", + "provider": "pants.backend.python" + }, + "pants.engine.internals.graph._determine_target_adaptor_and_type": { + "description": null, + "documentation": null, + "input_gets": ["Get(TargetAdaptor, TargetAdaptorRequest, ..)"], + "input_types": ["_RequestAdaptorAndType", "RegisteredTargetTypes"], + "name": "pants.engine.internals.graph._determine_target_adaptor_and_type", + "output_type": "_AdaptorAndType", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.coarsened_targets": { + "description": "Resolve coarsened targets", + "documentation": null, + "input_gets": ["Get(_DependencyMapping, _DependencyMappingRequest, ..)"], + "input_types": ["CoarsenedTargetsRequest", "ChosenLocalEnvironmentName"], + "name": "pants.engine.internals.graph.coarsened_targets", + "output_type": "CoarsenedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.coarsened_targets_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Addresses"], + "name": "pants.engine.internals.graph.coarsened_targets_request", + "output_type": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request": { + "description": null, + "documentation": "This rule discards any deps predicate from DependenciesRequest.\n\nCalculating ExplicitlyProvidedDependencies does not use any deps traversal predicates as it is\nmeant to list all explicit deps from the given field. By stripping the predicate from the\nrequest, we ensure that the cache key for ExplicitlyProvidedDependencies calculation does not\ninclude the predicate increasing the cache-hit rate.", + "input_gets": [], + "input_types": ["DependenciesRequest"], + "name": "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request", + "output_type": "ExplicitlyProvidedDependenciesRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.determine_explicitly_provided_dependencies": { + "description": null, + "documentation": null, + "input_gets": ["Get(Address, AddressInput, ..)"], + "input_types": [ + "ExplicitlyProvidedDependenciesRequest", + "UnionMembership", + "RegisteredTargetTypes", + "SubprojectRoots" + ], + "name": "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "output_type": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_subproject_roots": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GlobalOptions"], + "name": "pants.engine.internals.graph.extract_subproject_roots", + "output_type": "SubprojectRoots", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_unmatched_build_file_globs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GlobalOptions"], + "name": "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "output_type": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.field_defaults": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldDefaultFactoryResult, FieldDefaultFactoryRequest, ..)" + ], + "input_types": ["UnionMembership"], + "name": "pants.engine.internals.graph.field_defaults", + "output_type": "FieldDefaults", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_targets": { + "description": "Find all targets in the project", + "documentation": null, + "input_gets": ["Get(Targets, RawSpecsWithoutFileOwners, ..)"], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_targets", + "output_type": "AllTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_unexpanded_targets": { + "description": "Find all (unexpanded) targets in the project", + "documentation": null, + "input_gets": ["Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)"], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_unexpanded_targets", + "output_type": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_owners": { + "description": "Find which targets own certain files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FilteredTargets, RawSpecsWithoutFileOwners, ..)", + "Get(Targets, RawSpecsWithoutFileOwners, ..)", + "Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)" + ], + "input_types": ["OwnersRequest", "ChosenLocalEnvironmentName"], + "name": "pants.engine.internals.graph.find_owners", + "output_type": "Owners", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_valid_field_sets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FieldSetsPerTargetRequest", "UnionMembership"], + "name": "pants.engine.internals.graph.find_valid_field_sets", + "output_type": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.generate_file_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(TargetFilesGeneratorSettings, TargetFilesGeneratorSettingsRequest, ..)" + ], + "input_types": ["GenerateFileTargets", "UnionMembership"], + "name": "pants.engine.internals.graph.generate_file_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.hydrate_sources": { + "description": "Hydrate the `sources` field", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(GeneratedSources, GenerateSourcesRequest, ..)" + ], + "input_types": [ + "HydrateSourcesRequest", + "UnmatchedBuildFileGlobs", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.hydrate_sources", + "output_type": "HydratedSources", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_all_generator_target_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AddressFamilies, RawSpecsWithoutFileOwners, ..)", + "Get(ResolvedTargetGeneratorRequests, ResolveTargetGeneratorRequests, ..)" + ], + "input_types": ["ResolveAllTargetGeneratorRequests"], + "name": "pants.engine.internals.graph.resolve_all_generator_target_requests", + "output_type": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_dependencies": { + "description": "Resolve direct dependencies of target", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(InferredDependencies, {InferDependenciesRequest: .., EnvironmentName: ..})", + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})", + "Get(Address, AddressInput, ..)", + "Get(ValidatedDependencies, {ValidateDependenciesRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "DependenciesRequest", + "TargetTypesToGenerateTargetsRequests", + "UnionMembership", + "SubprojectRoots", + "FieldDefaults", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_dependencies", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_generator_target_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_AdaptorAndType, _RequestAdaptorAndType, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "ResolveTargetGeneratorRequests", + "UnionMembership", + "TargetTypesToGenerateTargetsRequests", + "UnmatchedBuildFileGlobs" + ], + "name": "pants.engine.internals.graph.resolve_generator_target_requests", + "output_type": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_source_paths": { + "description": "Resolve `sources` field file names", + "documentation": null, + "input_gets": ["Get(Paths, PathGlobs, ..)"], + "input_types": ["SourcesPathsRequest", "UnmatchedBuildFileGlobs"], + "name": "pants.engine.internals.graph.resolve_source_paths", + "output_type": "SourcesPaths", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "WrappedTargetRequest", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_target", + "output_type": "WrappedTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_for_bootstrapping": { + "description": null, + "documentation": null, + "input_gets": ["Get(_AdaptorAndType, _RequestAdaptorAndType, ..)"], + "input_types": ["WrappedTargetRequest", "UnionMembership"], + "name": "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "output_type": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_parametrizations": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_AdaptorAndType, _RequestAdaptorAndType, ..)", + "Get(ResolvedTargetGeneratorRequests, ResolveTargetGeneratorRequests, ..)", + "Get(GeneratedTargets, GenerateTargetsRequest, ..)" + ], + "input_types": ["_TargetParametrizationsRequest", "UnionMembership"], + "name": "pants.engine.internals.graph.resolve_target_parametrizations", + "output_type": "_TargetParametrizations", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "UnexpandedTargets", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_targets", + "output_type": "Targets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unexpanded_targets": { + "description": null, + "documentation": null, + "input_gets": ["Get(WrappedTarget, WrappedTargetRequest, ..)"], + "input_types": ["Addresses"], + "name": "pants.engine.internals.graph.resolve_unexpanded_targets", + "output_type": "UnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unparsed_address_inputs": { + "description": "Resolve addresses", + "documentation": null, + "input_gets": [ + "Get(MaybeAddress, AddressInput, ..)", + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": ["UnparsedAddressInputs", "SubprojectRoots"], + "name": "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.target_types_to_generate_targets_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["UnionMembership"], + "name": "pants.engine.internals.graph.target_types_to_generate_targets_requests", + "output_type": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_dependency_mapping": { + "description": null, + "documentation": "This uses iteration, rather than recursion, so that we can tolerate dependency cycles.\n\nUnlike a traditional BFS algorithm, we batch each round of traversals via `MultiGet` for\nimproved performance / concurrency.", + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(UnexpandedTargets, DependenciesRequest, ..)" + ], + "input_types": ["_DependencyMappingRequest"], + "name": "pants.engine.internals.graph.transitive_dependency_mapping", + "output_type": "_DependencyMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_targets": { + "description": "Resolve transitive targets", + "documentation": "Find all the targets transitively depended upon by the target roots.", + "input_gets": [ + "Get(_DependencyMapping, _DependencyMappingRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)" + ], + "input_types": ["TransitiveTargetsRequest", "ChosenLocalEnvironmentName"], + "name": "pants.engine.internals.graph.transitive_targets", + "output_type": "TransitiveTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.process.fallible_to_exec_result_or_raise": { + "description": null, + "documentation": "Converts a FallibleProcessResult to a ProcessResult or raises an error.", + "input_gets": [], + "input_types": [ + "FallibleProcessResult", + "ProductDescription", + "KeepSandboxes" + ], + "name": "pants.engine.process.fallible_to_exec_result_or_raise", + "output_type": "ProcessResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.get_multi_platform_request_description": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["Process"], + "name": "pants.engine.process.get_multi_platform_request_description", + "output_type": "ProductDescription", + "provider": "pants.backend.experimental.helm" + }, + "pants.goal.stats_aggregator.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.jvm.bsp.compile.notify_for_classpath_entry": { + "description": null, + "documentation": null, + "input_gets": ["Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)"], + "input_types": ["BSPClasspathEntryRequest", "BSPContext"], + "name": "pants.jvm.bsp.compile.notify_for_classpath_entry", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": ["CoarsenedTargets", "ClasspathEntryRequestFactory"], + "name": "pants.jvm.classpath.classpath", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.loose_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["ClasspathEntry", "UnzipBinary"], + "name": "pants.jvm.classpath.loose_classfiles", + "output_type": "LooseClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.calculate_jvm_request_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["UnionMembership"], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.classpath_dependency_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.compile_classpath_entries": { + "description": null, + "documentation": null, + "input_gets": ["Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)"], + "input_types": ["ClasspathEntryRequests"], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.required_classfiles": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["FallibleClasspathEntry"], + "name": "pants.jvm.compile.required_classfiles", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping": { + "description": null, + "documentation": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "output_type": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets": { + "description": "Find all jvm_artifact targets in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields": { + "description": "Find all targets with experimental_provides fields in project", + "documentation": null, + "input_gets": [], + "input_types": ["AllTargets"], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["AllJvmArtifactTargets", "JvmSubsystem"], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings": { + "description": null, + "documentation": null, + "input_gets": ["Get(SymbolMap, FirstPartyMappingRequest, ..)"], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem", + "ThirdPartySymbolMapping" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "output_type": "SymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.determine_jvm_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["KnownJVMUserResolveNamesRequest", "JvmSubsystem"], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.generate_jvm_lockfile": { + "description": "Generate JVM lockfile", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["GenerateJvmLockfile", "GenerateLockfilesSubsystem"], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GenerateJvmLockfile"], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.build_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "output_type": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JarToolGenerateLockfileSentinel"], + "name": "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.run_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "JarToolRequest", + "InternalJdk", + "JarToolCompiledClassfiles" + ], + "name": "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.fetch_nailgun": { + "description": null, + "documentation": null, + "input_gets": ["Get(ClasspathEntry, CoursierLockfileEntry, ..)"], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.internal_jdk": { + "description": null, + "documentation": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": ["Get(JdkEnvironment, JdkRequest, ..)"], + "input_types": ["JvmSubsystem"], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.jvm_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess", + "JvmSubsystem", + "GlobalOptions" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.prepare_jdk_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "EnvironmentAware", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest", + "EnvironmentTarget" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.deploy_jar_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": ["DeployJarClasspathEntryRequest"], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.package_deploy_jar": { + "description": null, + "documentation": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Creating a deploy jar with a valid ZIP index and deduplicated entries\n3. (optionally) Stripping the jar of all metadata that may cause it to be non-reproducible (https://reproducible-builds.org)\n4. (optionally) Apply shading rules to the bytecode inside the jar file", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, JarToolRequest, ..)", + "Get(Digest, StripJarRequest, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["JvmSubsystem", "DeployJarFieldSet"], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.package_war": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": ["PackageWarFileFieldSet", "BashBinary", "ZipBinary"], + "name": "pants.jvm.package.war.package_war", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_content": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["RenderWarContentRequest"], + "name": "pants.jvm.package.war.render_war_content", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_deployment_descriptor": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": ["RenderWarDeploymentDescriptorRequest"], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile": { + "description": null, + "documentation": "Fetch every artifact in a lockfile.", + "input_gets": ["Get(ClasspathEntry, CoursierLockfileEntry, ..)"], + "input_types": ["CoursierResolvedLockfile"], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord": { + "description": null, + "documentation": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": ["CoursierLockfileEntry"], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile": { + "description": null, + "documentation": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": ["ArtifactRequirements"], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier": { + "description": "Fetch with coursier", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["CoursierFetchRequest"], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": ["Get(DigestContents, Digest, ..)"], + "input_types": ["CoursierResolveKey"], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": ["ToolClasspathRequest"], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": ["ArtifactRequirements"], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets": { + "description": null, + "documentation": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": ["Get(Digest, PathGlobs, ..)"], + "input_types": ["CoarsenedTargets", "JvmSubsystem"], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["BashBinary", "Coursier", "CoursierFetchProcess"], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.setup_coursier": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBuildStandaloneBinary", + "Platform" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": ["GatherJvmCoordinatesRequest"], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": ["GenerateJvmLockfileFromTool"], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resources.assemble_resources_jar": { + "description": "Assemble resources", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "BashBinary", + "TouchBinary", + "JvmSubsystem", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run.create_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(Classpath, CoarsenedTargets, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["GenericJvmRunRequest", "UnzipBinary"], + "name": "pants.jvm.run.create_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["DeployJarFieldSet"], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JarJarGeneratorLockfileSentinel", "JarJar"], + "name": "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.rules.shade_jar": { + "description": "Applies shading rules to a JAR file", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarJarGeneratorLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": ["ShadeJarRequest", "InternalJdk", "JarJar"], + "name": "pants.jvm.shading.rules.shade_jar", + "output_type": "ShadedJar", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": ["InternalJdk"], + "name": "pants.jvm.strip_jar.strip_jar.build_processors", + "output_type": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["StripJarToolLockfileSentinel"], + "name": "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.strip_jar": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "StripJarCompiledClassfiles", + "InternalJdk", + "StripJarRequest" + ], + "name": "pants.jvm.strip_jar.strip_jar.strip_jar", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request": { + "description": null, + "documentation": null, + "input_gets": ["Get(RunRequest, GenericJvmRunRequest, ..)"], + "input_types": ["KotlinFieldSet"], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.jvm.target_types.jvm_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JvmResolveFieldDefaultFactoryRequest", "JvmSubsystem"], + "name": "pants.jvm.target_types.jvm_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.generate_junit_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["JunitToolLockfileSentinel", "JUnit"], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.run_junit_test": { + "description": "Run JUnit", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": ["TestSubsystem", "Batch"], + "name": "pants.jvm.test.junit.run_junit_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": ["Batch"], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.util_rules.digest_to_file_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": ["ExtractFileDigest"], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + }, + "pants.source.source_root.all_roots": { + "description": "Compute all source roots", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["SourceRootConfig"], + "name": "pants.source.source_root.all_roots", + "output_type": "AllSourceRoots", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_root": { + "description": null, + "documentation": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": ["SourceRootRequest", "SourceRootConfig"], + "name": "pants.source.source_root.get_optional_source_root", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_roots": { + "description": null, + "documentation": "Rule to request source roots that may not exist.", + "input_gets": ["Get(OptionalSourceRoot, SourceRootRequest, ..)"], + "input_types": ["SourceRootsRequest"], + "name": "pants.source.source_root.get_optional_source_roots", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_root": { + "description": null, + "documentation": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": ["Get(OptionalSourceRoot, SourceRootRequest, ..)"], + "input_types": ["SourceRootRequest"], + "name": "pants.source.source_root.get_source_root", + "output_type": "SourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_roots": { + "description": null, + "documentation": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": ["Get(OptionalSourceRootsResult, SourceRootsRequest, ..)"], + "input_types": ["SourceRootsRequest"], + "name": "pants.source.source_root.get_source_roots", + "output_type": "SourceRootsResult", + "provider": "pants.core" + }, + "pants.vcs.git.get_git_worktree": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": ["GitWorktreeRequest", "MaybeGitBinary"], + "name": "pants.vcs.git.get_git_worktree", + "output_type": "MaybeGitWorktree", + "provider": "pants.core" + } + }, + "name_to_target_type_info": { + "_generator_sources_helper": { + "alias": "_generator_sources_helper", + "description": "A private helper target type used by some target generators.\n\nThis tracks their `source` / `sources` field so that `--changed-since --changed-dependents` works properly for generated targets.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.python", + "summary": "A private helper target type used by some target generators." + }, + "_lockfile": { + "alias": "_lockfile", + "description": "A target for lockfiles in order to include them in the dependency graph of other targets.\n\nThis tracks them so that `--changed-since --changed-dependents` works properly for targets relying on a particular lockfile.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A target for lockfiles in order to include them in the dependency graph of other targets." + }, + "_lockfiles": { + "alias": "_lockfiles", + "description": "Generate a `_lockfile` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.lock']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `_lockfile` target for each file in the `sources` field." + }, + "adhoc_tool": { + "alias": "adhoc_tool", + "description": "Execute any runnable target for its side effects.\n\nExample BUILD file:\n\n adhoc_tool(\n runnable=\":python_source\",\n args=[\"\"],\n execution_dependencies=[\":scripts\"],\n output_directories=[\"results/\"],\n output_files=[\"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runnable", + "default": null, + "description": "Address to a target that can be invoked by the `run` goal (and does not set `run_in_sandbox_behavior=NOT_SUPPORTED`). This will be executed along with any arguments specified by `args`, in a sandbox with that target's transitive dependencies, along with the transitive dependencies specified by `execution_dependencies`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "args", + "default": "()", + "description": "Extra arguments to pass into the `runnable` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that need to be present (as transitive dependencies) whenever the outputs of this target are consumed (including as dependencies).\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\nValues are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stdout", + "default": null, + "description": "A filename to capture the contents of `stdout` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stderr", + "default": null, + "description": "A filename to capture the contents of `stderr` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "Execute any runnable target for its side effects." + }, + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "duplicate_policy", + "default": "(duplicate_rule(pattern='^META-INF/services/', action='concat_text'), duplicate_rule(pattern='^META-INF/LICENSE', action='skip'))", + "description": "A list of the rules to apply when duplicate file entries are found in the final assembled JAR file.\n\nWhen defining a duplicate policy, just add `duplicate_rule` directives to this field as follows:\n\nExample:\n\n duplicate_policy=[\n duplicate_rule(pattern=\"^META-INF/services\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^reference\\.conf\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^org/apache/commons\", action=\"throw\"),\n ]\n\nWhere:\n\n* The `pattern` field is treated as a regular expression\n* The `action` field must be one of `['skip', 'replace', 'concat', 'concat_text', 'throw']`.\n\nNote that the order in which the rules are listed is relevant.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.DeployJarDuplicateRule] | None" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the final JAR artifact.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + }, + { + "alias": "exclude_files", + "default": null, + "description": "A list of patterns to exclude from the final jar.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_environment": { + "alias": "docker_environment", + "description": "Configuration of a Docker environment used for building your code.\n\nEnvironment configuration includes both Docker-specific information (including the image and platform choice), as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this Docker environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nBefore running Pants using this environment, if you are using Docker Desktop, make sure the option **Enable default Docker socket** is enabled, you can find it in **Docker Desktop Settings > Advanced** panel. That option tells Docker to create a socket at `/var/run/docker.sock` which Pants can use to communicate with Docker.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image", + "default": null, + "description": "The docker image ID to use when this environment is loaded.\n\nThis value may be any image identifier that the local Docker installation can accept. This includes image names with or without tags (e.g. `centos6` or `centos6:latest`), or image names with an immutable digest (e.g. `centos@sha256:`).\n\nThe choice of image ID can affect the reproducibility of builds. Consider using an immutable digest if reproducibility is needed, but regularly ensure that the image is free of relevant bugs or security vulnerabilities.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "platform", + "default": null, + "description": "If set, Docker will always use the specified platform when pulling and running the image.\n\nIf unset, Pants will default to the CPU architecture of your local host machine. For example, if you are running on Apple Silicon, it will use `linux_arm64`, whereas running on Intel macOS will use `linux_x86_64`. This mirrors Docker's behavior when `--platform` is left off.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this Docker environment cannot be used because either the global option `--docker-execution` is false, or the field `platform` is not compatible with the local host's CPU architecture (this is only an issue when the local host is Linux; macOS is fine).\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific Docker environment cannot be used.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a Docker environment used for building your code." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, it will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "\nAny tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.18/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the `[docker].registries` configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. `\"/\"`.\n\nIt uses the `[docker].default_repository` by default.\n\nRepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory`, `parent_directory`, and `default_repository`.\n\nRegistries may also configure the repository value for specific registries.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nLabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "extra_build_hosts", + "default": null, + "description": "Extra hosts entries to be added to a container's `/etc/hosts` file.\n\nUse `[docker].build_hosts` to set default host entries for all images.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. Paths to your home directory will be automatically expanded. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"home-dir-secret\": \"~/.config/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: `default|[=|[,]]`)\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If true, do not push this image to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pull", + "default": "False", + "description": "If true, then docker will always attempt to pull a newer version of the image.\n\nNOTE: This option cannot be used on images that build off of \"transitive\" base images referenced by address (i.e. `FROM path/to/your/base/Dockerfile`).", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "squash", + "default": "False", + "description": "If true, then docker will squash newly built layers into a single new layer.\n\nNote that this option is only supported on a Docker daemon with experimental features enabled.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "build_network", + "default": null, + "description": "Sets the networking mode for the run commands during build. Supported standard values are: bridge, host, none, and container:. Any other value is taken as a custom network's name to which the container should connect to.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "build_platform", + "default": null, + "description": "Set the target platform(s) for the build.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_test_shell_command": { + "alias": "experimental_test_shell_command", + "description": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot.\n\nExample BUILD file:\n\n experimental_test_shell_command(\n name=\"test\",\n tools=[\"test\"],\n command=\"test -r $CHROOT/some-data-file.txt\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `run_shell_command`, this target is intended to run shell commands as tests and will only run them via the `test` goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by `[shell-setup].executable_search_paths` (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this tests for target.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot." + }, + "experimental_wrap_as_go_package_sources": { + "alias": "experimental_wrap_as_go_package_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .go, .s, .S, .sx, .c, .h, .hh, .hpp, .hxx, .cc, .cpp, .cxx, .m, .f, .F, .for, .f90, .syso\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`." + }, + "experimental_wrap_as_java_sources": { + "alias": "experimental_wrap_as_java_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .java\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`." + }, + "experimental_wrap_as_kotlin_sources": { + "alias": "experimental_wrap_as_kotlin_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .kt\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`." + }, + "experimental_wrap_as_python_sources": { + "alias": "experimental_wrap_as_python_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .py, .pyi\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`." + }, + "experimental_wrap_as_resources": { + "alias": "experimental_wrap_as_resources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files from `inputs` will be matched.\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`." + }, + "experimental_wrap_as_scala_sources": { + "alias": "experimental_wrap_as_scala_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .scala\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an `http_source` is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (e.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (`linux_arm64`, `linux_x86_64`, `macos_arm64`, `macos_x86_64`) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `file` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.go', '*_test.go', '!test_ignore.go']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "test_race", + "default": null, + "description": "Enable compiling this package's test binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_artifact": { + "alias": "helm_artifact", + "description": "A third party Helm artifact.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registry", + "default": null, + "description": "Either registry alias (prefixed by `@`) configured in `[helm.registries]` for the Helm artifact or the full OCI registry URL.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repository", + "default": null, + "description": "Either a HTTP(S) URL to a classic repository, or a path inside an OCI registry (when `registry` is provided).", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "Artifact name of the chart, without version number.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The `version` part of a third party Helm chart.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A third party Helm artifact." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'values.yml', 'templates/*.yaml', 'templates/*.yml', 'templates/*.tpl', 'crds/*.yaml', 'crds/*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['values.yaml', 'templates/*.yaml', '!values_ignore.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "repository", + "default": null, + "description": "Repository to use in the Helm registry where this chart is going to be published.\n\nIf no value is given and `[helm].default-registry-repository` is undefined too, then the chart will be pushed to the root of the OCI registry.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "version", + "default": null, + "description": "Version number for the given Helm chart.\n\nWhen specified, the version provided in the source Chart.yaml file will be overriden by the value given to this field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any OCI registries to use for the built chart.\n\nThe address is an `oci://` prefixed domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the `[helm].registries` configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [helm.registries.my-registry-alias]\n address = \"oci://myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n helm_chart(\n registries = [\n \"@my-registry-alias\",\n \"oci://myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this Helm chart to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_lint", + "default": "False", + "description": "If set to true, do not run any linting in this Helm chart when running `scie-pants-linux-x86_64 lint`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart." + }, + "helm_deployment": { + "alias": "helm_deployment", + "description": "A Helm chart deployment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": null, + "description": "The address of the `helm_chart` or `helm_artifact` that will be used for this deployment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "release_name", + "default": null, + "description": "Name of the release used in the deployment. If not set, the target name will be used instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.yaml', '*.yml')", + "description": "Helm configuration files for a given deployment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "namespace", + "default": null, + "description": "Kubernetes namespace for the given deployment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_crds", + "default": "False", + "description": "If true, then does not deploy the Custom Resource Definitions that are defined in the chart.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "values", + "default": null, + "description": "Individual values to use when rendering a given deployment.\n\nValue names should be defined using dot-syntax as in the following example:\n\n helm_deployment(\n values={\n \"nameOverride\": \"my_custom_name\",\n \"image.pullPolicy\": \"Always\",\n },\n )\n\nValues can be dynamically calculated using interpolation as shown in the following example:\n\n helm_deployment(\n values={\n \"configmap.deployedAt\": f\"{env('DEPLOY_TIME')}\",\n },\n )\n\nCheck the Helm backend documentation on what are the options available and its caveats when making usage of dynamic values in your deployments.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "no_hooks", + "default": "False", + "description": "If true, none of the lifecycle hooks of the given chart will be included in the deployment.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": null, + "description": "Timeout in seconds when running a Helm deployment.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "post_renderers", + "default": null, + "description": "List of runnable targets to be used to post-process the helm chart after being rendered by Helm.\n\nThis is equivalent to the same post-renderer feature already available in Helm with the difference that this supports a list of executables instead of a single one.\n\nWhen more than one post-renderer is given, they will be combined into a single one in which the input of each of them would be output of the previous one.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "enable_dns", + "default": "False", + "description": "Enables DNS lookups when using the `getHostByName` template function.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart deployment." + }, + "helm_unittest_test": { + "alias": "helm_unittest_test", + "description": "A single helm-unittest suite file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A single helm-unittest suite file." + }, + "helm_unittest_tests": { + "alias": "helm_unittest_tests", + "description": "Generates a `helm_unittest_test` target per each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.yaml', '*_test.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*_test.yaml', '!ignore_test.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `helm_unittest_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"configmap_test.yaml\": {\"timeout\": 120},\n (\"deployment_test.yaml\", \"pod_test.yaml\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `helm_unittest_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "Generates a `helm_unittest_test` target per each file in the `sources` field." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.java', 'New*.java', '!OldExample.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.java', '!TestIgnore.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "exclusions", + "default": null, + "description": "A list of exclusions for unversioned coordinates that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nSupported exclusions are:\n * `jvm_exclude`: Exclude the given `artifact` and `group`, or all artifacts from the given `group`.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmArtifactExclusion] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., `web.xml`) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the individual JAR artifacts embedded in the `WEB-INF/lib` folder.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "kotlin_junit_test": { + "alias": "kotlin_junit_test", + "description": "A single Kotlin test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin test, run with JUnit." + }, + "kotlin_junit_tests": { + "alias": "kotlin_junit_tests", + "description": "Generate a `kotlin_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.kt', '!TestIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_junit_test` target for each file in the `sources` field." + }, + "kotlin_source": { + "alias": "kotlin_source", + "description": "A single Kotlin source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin source file containing application or library code." + }, + "kotlin_sources": { + "alias": "kotlin_sources", + "description": "Generate a `kotlin_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.kt', 'New*.kt', '!OldIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_source` target for each file in the `sources` field." + }, + "kotlinc_plugin": { + "alias": "kotlinc_plugin", + "description": "A plugin for `kotlinc`.\n\nTo enable a `kotlinc` plugin, define a target with this target type, and set the `artifact` field to the address of a `jvm_artifact` target that provides the plugin. Set the `plugin_id` field to the ID of the plugin if that name cannot be inferred from the `name` of this target.\n\nThe standard `kotlinc` plugins are available via the following artifact coordinates and IDs:\n\n* All-open: `org.jetbrains.kotlin:kotlin-allopen:VERSION` (ID: `all-open`)\n* No-arg: `org.jetbrains.kotlin:kotlin-noarg:VERSION` (ID: `no-arg`)\n* SAM with receiver: `org.jetbrains.kotlin:kotlin-sam-with-receiver:VERSION` (ID: `sam-with-receiver`)\n* kapt (annotation processor): `org.jetbrains.kotlin:org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:VERSION` (ID: `kapt3`)\n* Serialization: `org.jetbrains.kotlin:kotlin-serialization:VERSION` (ID: `serialization`)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `kotlinc`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_id", + "default": null, + "description": "The ID for `kotlinc` to use when setting options for the plugin.\n\nIf not set, the plugin ID defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "plugin_args", + "default": null, + "description": "Optional list of argument to pass to the plugin.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A plugin for `kotlinc`." + }, + "local_environment": { + "alias": "local_environment", + "description": "Configuration of a local execution environment for specific platforms.\n\nEnvironment configuration includes the platforms the environment is compatible with, and optionally a fallback environment, along with environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOnly one `local_environment` may be defined in `[environments-preview].names` per platform, and when `__local__` is specified as the environment, the `local_environment` that matches the current platform (if defined) will be selected.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatible_platforms", + "default": "('linux_arm64', 'linux_x86_64', 'macos_arm64', 'macos_x86_64')", + "description": "Which platforms this environment can be used with.\n\nThis is used for Pants to automatically determine which environment target to use for the user's machine when the environment is set to the special value `__local__`. Currently, there cannot be more than one environment target registered in `[environments-preview].names` for a particular platform. If there is no environment target for a certain platform, Pants will use the options system instead to determine environment variables and executable search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this local environment cannot be used because the field `compatible_platforms` is not compatible with the local host.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific local environment cannot be used.\n\nTip: when targeting Linux, it can be particularly helpful to fallback to a `docker_environment` or `remote_environment` target. That allows you to prefer using the local host when possible, which often has less overhead (particularly compared to Docker). If the local host is not compatible, then Pants will use Docker or remote execution to still run in a similar environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a local execution environment for specific platforms." + }, + "openapi_document": { + "alias": "openapi_document", + "description": "A single OpenAPI document file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI document file." + }, + "openapi_documents": { + "alias": "openapi_documents", + "description": "Generate an `openapi_document` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('openapi.json', 'openapi.yaml', 'openapi.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['openapi.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_document` target for each file in the `sources` field." + }, + "openapi_source": { + "alias": "openapi_source", + "description": "A single OpenAPI source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI source file." + }, + "openapi_sources": { + "alias": "openapi_sources", + "description": "Generate an `openapi_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.json', '*.yaml', '*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_source` target for each file in the `sources` field." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants.\n\nThe generated targets will have the correct version based on the exact `version` in your `pants.toml`, and they will work with dependency inference. They're pulled directly from our GitHub releases, using the relevant platform markers.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "version_spec", + "default": "'== 2.18.0rc5'", + "description": "The PEP 440 version specifier version of Pants to target. E.g. `== 2.15.*`, or `>= 2.16.0, < 2.17.0`", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n }\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same `entry_point` in multiple keys, so long as you don't override the same field more than one time for the `entry_point`.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore errors when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.18/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The abbreviated platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-37-cp37m\", \"macosx_10.12_x86_64-cp-310-cp310\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\" or \"pp\".\n - PYVER: a two or more digit string representing the python major/minor version (e.g., \"37\" or \"310\") or else a component dotted version string (e.g., \"3.7\" or \"3.10.1\").\n - ABI: the ABI tag, e.g. \"cp37m\", \"cp310\", \"abi3\", \"none\".\n\nNote that using an abbreviated platform means that certain resolves will fail when they encounter environment markers that cannot be deduced from the abbreviated platform string. A common example of this is 'python_full_version' which requires knowing the patch level version of the foreign Python interpreter. To remedy this you should use a 3-component dotted version for PYVER. If your resolves fail due to more esoteric undefined environment markers, you should switch to specifying `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore errors when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like `'path.to.module'` and `'path.to.module:func'`, or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) `'app.py'`, Pants will convert into the module `path.to.app`;\n 2) `'app.py:func'`, Pants will convert into `path.to.app:func`.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "args", + "default": null, + "description": "Freeze these command-line args into the PEX. Allows you to run generic entry points on specific arguments without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "env", + "default": null, + "description": "Freeze these environment variables into the PEX. Allows you to run generic entry points on a specific environment without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry `pyproject.toml`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry `pyproject.toml`." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.18/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.18/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.proto', 'new_*.proto', '!old_ignore*.proto']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `protobuf_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.proto\": {\"grpc\": True},\n \"bar.proto\": {\"description\": \"our user model\"},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.18/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the value of the `binary_name` field. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary that will be output by PyOxidizer. If not set, this will default to the name of this target.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by `$` or surrounded with `${ }`.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted `entry_point` passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or `[]`).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets `filesystem_resources`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.18/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.18/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: `'path.to.module'`.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_aws_lambda_function": { + "alias": "python_aws_lambda_function", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.18/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the AWS Lambda artifact. This is most useful with Lambda Layers to make code uploads smaller when third-party requirements are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.\n\nN.B.: only one of this and `complete_platforms` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. If you have issues either packaging the AWS Lambda PEX or running it as a deployed AWS Lambda function, you should try using an explicit `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nN.B.: only one of this and `runtime` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. Explicitly set this to `[]` to use the platform's ambient interpreter, such as when running in an docker environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like `'path.to.module:handler_func'` or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. `'cloud_function.py:handler_func'`.\n\nThis is re-exported at `lambda_function.handler` in the resulting package to be used as the configured handler of the Lambda in AWS. It can also be accessed under its source-root-relative module path, for example: `path.to.module.handler_func`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_aws_lambda_layer": { + "alias": "python_aws_lambda_layer", + "description": "A Python layer suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.18/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the AWS Lambda artifact. This is most useful with Lambda Layers to make code uploads smaller when third-party requirements are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.\n\nN.B.: only one of this and `complete_platforms` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. If you have issues either packaging the AWS Lambda PEX or running it as a deployed AWS Lambda function, you should try using an explicit `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nN.B.: only one of this and `runtime` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. Explicitly set this to `[]` to use the platform's ambient interpreter, such as when running in an docker environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to resolve first party sources and include them in the AWS Lambda artifact. This is most useful to allow creating a Lambda Layer with only third-party requirements. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A Python layer suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.18/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (`\"path.to.module:func\"`) or a Pants target address to a `pex_binary` target.\n\nExample:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a `pex_binary` target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n scie-pants-linux-x86_64 dependencies ", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.18/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing `setup.py`, `setup.cfg`, `pyproject.toml` files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "env_vars", + "default": null, + "description": "Environment variables to set when running the PEP-517 build backend.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the `long_description` field in `setup.py`.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": "''", + "description": "The path to the directory to write the distribution file to, relative the dist directory.\n\nIf undefined, this defaults to the empty path, i.e. the output goes at the top level of the dist dir.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + }, + { + "alias": "uses_mypyc", + "default": "False", + "description": "If true, this distribution is built using mypyc.\n\nIn this case, Pants will build the distribution in an environment that includes mypy, as configured in the `[mypy]` subsystem, including plugins, config files, extra type stubs, and the distribution's own requirements (which normally would not be needed at build time, but in this case may provide necessary type annotations).\n\nYou will typically set this field on distributions whose `setup.py` uses `mypyc.build.mypycify()`. See https://mypyc.readthedocs.io/en/latest/index.html .", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.18/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like `'path.to.module:handler_func'` or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. `'cloud_function.py:handler_func'`.\n\nThis is re-exported at `main.handler` in the resulting package to used as the configured handler of the Google Cloud Function in GCP. It can also be accessed under its source-root-relative module path, for example: `path.to.module.handler_func`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.\n\nIn general you'll want to define either a `runtime` or one `complete_platforms` but not both. Specifying a `runtime` is simpler, but less accurate. If you have issues either packaging the Google Cloud Function PEX or running it as a deployed Google Cloud Function, you should try using `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "'python310' | 'python311' | 'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nN.B.: only one of this and `runtime` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. Explicitly set this to `[]` to use the platform's ambient interpreter, such as when running in an docker environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be `'event'` or `'http'`. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to `--trigger-http`.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like `'path.to.module'` and `'path.to.module:func'`, or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) `'app.py'`, Pants will convert into the module `path.to.app`;\n 2) `'app.py:func'`, Pants will convert into `path.to.app:func`.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant `pyproject.toml` file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser.\n\nFurther details about pip-style requirements files are available from the PyPA documentation: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.\n\nFurther details about PEP 621 and `pyproject.toml` files are available from the PEP itself: https://peps.python.org/pep-0621/. If the `project.optional-dependencies` table is included, Pants will save the key/name of the optional dependency group as a tag on the generated `python_requirement`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant `pyproject.toml` file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'new_*.py', '!old_ignore.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.18/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single test runner process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other test `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same test runner process. Compatible tests may not end up in the same test runner batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all `entry_points` on `python_distribution` targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the `entry_points` only need to be defined on one `python_distribution` even if the test only needs some of the `entry_points` namespaces on it.\n\nPlus, an `entry_points.txt` file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The `entry_points.txt` file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools `entry_points` metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (`my.stevedore.extension`) is similar to a Python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test_*.py', '*_test.py', 'tests.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo_test.py\": {\"timeout\": 120},\n \"bar_test.py\": {\"timeout\": 200},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all `entry_points` on `python_distribution` targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the `entry_points` only need to be defined on one `python_distribution` even if the test only needs some of the `entry_points` namespaces on it.\n\nPlus, an `entry_points.txt` file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The `entry_points.txt` file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools `entry_points` metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (`my.stevedore.extension`) is similar to a Python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single test runner process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other test `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same test runner process. Compatible tests may not end up in the same test runner batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "remote_environment": { + "alias": "remote_environment", + "description": "Configuration of a remote execution environment used for building your code.\n\nEnvironment configuration includes platform properties and a fallback environment, as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this remote environment.\n\nNote that you must also configure remote execution with the global options like `remote_execution` and `remote_execution_address`.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOften, it is only necessary to have a single `remote_environment` target for your repository, but it can be useful to have >1 so that you can set different `extra_platform_properties`. For example, with some servers, you could use this to configure a different Docker image per environment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platform", + "default": "'linux_x86_64'", + "description": "The platform used by the remote execution environment.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "extra_platform_properties", + "default": "()", + "description": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when remote execution is disabled via the global option `--remote-execution`.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when remote execution is disabled.\n\nTip: if you are using a Docker image with your remote execution environment (usually enabled by setting the field `extra_platform_properties`), then it can be useful to fallback to an equivalent `docker_image` target so that you have a consistent execution environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cache_binary_discovery", + "default": "False", + "description": "If true, will cache system binary discovery, e.g. finding Python interpreters.\n\nWhen safe to do, it is preferable to set this option to `True` for faster performance by avoiding wasted work. Otherwise, Pants will search for system binaries whenever the Pants daemon is restarted.\n\nHowever, it is only safe to set this to `True` if the remote execution environment has a stable environment, e.g. the server will not change versions of installed system binaries. Otherwise, you risk caching results that become stale when the server changes its environment, which may break your builds. With some remote execution servers, you can specify a Docker image to run with via the field `extra_platform_properties`; if you are able to specify what Docker image to use, and also use a pinned tag of the image, it is likely safe to set this field to true.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a remote execution environment used for building your code." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an `http_source` is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (e.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (`linux_arm64`, `linux_x86_64`, `macos_arm64`, `macos_x86_64`) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `resource` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "run_shell_command": { + "alias": "run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `shell_command`, in addition to `workdir` you only have the `command` and `execution_dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful.\n\nSee also `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "scala_artifact": { + "alias": "scala_artifact", + "description": "A third-party Scala artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.\n\nBeing a Scala artifact, the final artifact name will be inferred using the Scala version configured for the given resolve.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible Scala-versioned coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `org.typelevel:cats-core_2.13:2.9.0`, the artifact is `cats-core`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "crossversion", + "default": "'partial'", + "description": "Whether to use the full Scala version or the partial one to determine the artifact name suffix.\n\nDefault is `partial`.", + "provider": "", + "required": false, + "type_hint": "'full' | 'partial' | None" + }, + { + "alias": "exclusions", + "default": null, + "description": "A list of exclusions for unversioned coordinates that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nSupported exclusions are:\n * `jvm_exclude`: Exclude the given `artifact` and `group`, or all artifacts from the given `group`.\n * `scala_exclude`: Exclude the given `artifact` and `group`, or all artifacts from the given `group`. You can also use the `crossversion` field to help resolve the final artifact name.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmArtifactExclusion] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A third-party Scala artifact, as identified by its Maven-compatible coordinate." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.scala', '!TestIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scala_junit_tests` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_junit_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.scala', 'New*.scala', '!OldIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scala_sources` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_sources` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of either a `jvm_artifact` or a `scala_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching `('*Spec.scala', '*Suite.scala')`).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Spec.scala', '!SuiteIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scalatest_tests` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scalatest_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching `('*Spec.scala', '*Suite.scala')`)." + }, + "shell_command": { + "alias": "shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n execution_dependencies=[\":scripts\"],\n output_files=[\"logs/my-script.log\"],\n output_directories=[\"results\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that need to be present (as transitive dependencies) whenever the outputs of this target are consumed (including as dependencies).\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by `[shell-setup].executable_search_paths` (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\nValues are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.sh', 'new_*.sh', '!old_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shell_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test.sh', 'test_*.sh', '!test_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shunit2_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo_test.sh\": {\"timeout\": 120},\n \"bar_test.sh\": {\"timeout\": 200},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "system_binary": { + "alias": "system_binary", + "description": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`.\n\nPants will search for binaries with name `binary_name` in the search paths provided, as well as default search paths. If `fingerprint` is specified, each binary that is located will be executed with the arguments from `fingerprint_args`. Any binaries whose output does not match the pattern will be excluded.\n\nThe first non-excluded binary will be the one that is resolved.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary to find.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "extra_search_paths", + "default": "()", + "description": "Extra search paths to look for the binary. These take priority over Pants' default search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint", + "default": null, + "description": "A regular expression which will be used to match the fingerprint outputs from candidate binaries found during the search process.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "fingerprint_args", + "default": "()", + "description": "Specifies arguments that will be used to run the binary during the search process.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint_dependencies", + "default": null, + "description": "Specifies any runnable dependencies that need to be available on the `PATH` when the binary is run, so that the search process may complete successfully. The name of the target must be the name of the runnable dependency that is called by this binary.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_deployment": { + "alias": "terraform_deployment", + "description": "A deployment of Terraform", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "root_module", + "default": null, + "description": "The Terraform module to use as the root module.\n\nExample: `root_module=\":my_module\"`", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "backend_config", + "default": null, + "description": "Configuration to be merged with what is in the configuration file's 'backend' block", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "var_files", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `var_files=['common.tfvars', 'prod.tfvars']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A deployment of Terraform" + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.tf', 'new_*.tf', '!old_ignore.tf']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.18/docs/thrift-python", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.thrift', 'new_*.thrift', '!old_ignore.thrift']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `thrift_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.18/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + }, + "vcs_version": { + "alias": "vcs_version", + "description": "Generates a version string from VCS state.\n\nUses a constrained but useful subset of the full functionality of setuptools_scm (https://github.com/pypa/setuptools_scm). These constraints avoid pitfalls in the interaction of setuptools_scm with Pants's hermetic environments.\n\nIn particular, we ignore any existing setuptools_scm config. Instead you must provide a subset of that config in this target's fields.\n\nIf you need functionality that is not currently exposed here, please reach out to us at https://www.pantsbuild.org/v2.18/docs/getting-help.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "tag_regex", + "default": "'^(?:[\\\\w-]+-)?(?P[vV]?\\\\d+(?:\\\\.\\\\d+){0,2}[^\\\\+]*)(?:\\\\+.*)?$'", + "description": "A Python regex string to extract the version string from a VCS tag.\n\nThe regex needs to contain either a single match group, or a group named version, that captures the actual version information.\n\nNote that this is unrelated to the tags field and Pants's own tags concept.\n\nSee https://github.com/pypa/setuptools_scm for implementation details.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "generate_to", + "default": null, + "description": "Generate the version data to this relative path, using the template field.\n\nNote that the generated output will not be written to disk in the source tree, but will be available as a generated dependency to code that depends on this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "template", + "default": null, + "description": "Generate the version data using this format string, which takes a version format kwarg.\n\nE.g., `'version = \"{version}\"'`", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python", + "summary": "Generates a version string from VCS state." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--backend-packages=\"['', '', ...]\""], + "env_var": "PANTS_BACKEND_PACKAGES", + "fromfile": false, + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--backend-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--backend-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.workunit_logger", + "pants.backend.experimental.tools.yamllint", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--plugins=\"['', '', ...]\""], + "env_var": "PANTS_PLUGINS", + "fromfile": false, + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]plugins-force-resolve"], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "fromfile": false, + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]show-log-target"], + "env_var": "PANTS_SHOW_LOG_TARGET", + "fromfile": false, + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with `--log-levels-by-target`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--show-log-target", "--no-show-log-target"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "fromfile": false, + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with `--level`. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--log-levels-by-target"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--log-levels-by-target"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]log-show-rust-3rdparty"], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "fromfile": false, + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ignore-warnings=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE_WARNINGS", + "fromfile": false, + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ignore-warnings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-warnings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-version="], + "env_var": "PANTS_VERSION", + "fromfile": false, + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.18/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.18.0rc5" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.18.0rc5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-bin-name="], + "env_var": "PANTS_BIN_NAME", + "fromfile": false, + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-bin-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-bin-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-workdir="], + "env_var": "PANTS_WORKDIR", + "fromfile": false, + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-workdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-workdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-physical-workdir-base="], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "fromfile": false, + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-physical-workdir-base"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-physical-workdir-base"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-distdir="], + "env_var": "PANTS_DISTDIR", + "fromfile": false, + "help": "Write end products, such as the results of `pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-distdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-distdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-subprocessdir="], + "env_var": "PANTS_SUBPROCESSDIR", + "fromfile": false, + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-subprocessdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--pants-subprocessdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": ["/tmp/tmp.MpwSc5OGVo/pants.toml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-config-files=\"['', '', ...]\""], + "env_var": "PANTS_CONFIG_FILES", + "fromfile": false, + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/tmp/tmp.MpwSc5OGVo/pants.toml"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsrc"], + "env_var": "PANTS_PANTSRC", + "fromfile": false, + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsrc", "--no-pantsrc"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsrc-files=\"[, , ...]\""], + "env_var": "PANTS_PANTSRC_FILES", + "fromfile": false, + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsrc-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsrc-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["/etc/pantsrc", "~/.pants.rc", ".pants.rc"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pythonpath=\"['', '', ...]\""], + "env_var": "PANTS_PYTHONPATH", + "fromfile": false, + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pythonpath"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pythonpath"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]verify-config"], + "env_var": "PANTS_VERIFY_CONFIG", + "fromfile": false, + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--verify-config", "--no-verify-config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": ["*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "fromfile": false, + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-record-option-scopes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--stats-record-option-scopes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["*"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [".*/", "/dist/", "__pycache__"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pants-ignore=\"['', '', ...]\""], + "env_var": "PANTS_IGNORE", + "fromfile": false, + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc).\n\nPatterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored.\n\n`pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pants-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pants-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [".*/", "/dist/", "__pycache__"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pants-ignore-use-gitignore"], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "fromfile": false, + "help": "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.\n\nPatterns from `[GLOBAL].pants_ignore` take precedence over these files' rules. For example, you can use `!my_pattern` in `pants_ignore` to have Pants operate on files that are gitignored.\n\nWarning: this does not yet support reading nested gitignore files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--logdir="], + "env_var": "PANTS_LOGDIR", + "fromfile": false, + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "fromfile": false, + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "4GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-max-memory-usage="], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--pantsd-max-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]print-stacktrace"], + "env_var": "PANTS_PRINT_STACKTRACE", + "fromfile": false, + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--engine-visualize-to="], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "fromfile": false, + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--engine-visualize-to"], + "target_field_name": null, + "typ": "dir_option", + "unscoped_cmd_line_args": ["--engine-visualize-to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pantsd-pailgun-port="], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "fromfile": false, + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-pailgun-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--pantsd-pailgun-port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "fromfile": false, + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--pantsd-invalidation-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-core="], + "env_var": "PANTS_RULE_THREADS_CORE", + "fromfile": false, + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-core"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-core"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--rule-threads-max="], + "env_var": "PANTS_RULE_THREADS_MAX", + "fromfile": false, + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--rule-threads-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--rule-threads-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-dir="], + "env_var": "PANTS_LOCAL_STORE_DIR", + "fromfile": false, + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-store-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-shard-count="], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "fromfile": false, + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-shard-count"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-shard-count"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-processes-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-processes-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-files-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--local-store-files-max-size-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-store-directories-max-size-bytes="], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-store-directories-max-size-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--named-caches-dir="], + "env_var": "PANTS_NAMED_CACHES_DIR", + "fromfile": false, + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--named-caches-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--named-caches-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--local-execution-root-dir="], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "fromfile": false, + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-execution-root-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--local-execution-root-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": ["fetch", "validate", "defer"], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cache-content-behavior="], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "fromfile": false, + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cache-content-behavior"], + "target_field_name": null, + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": ["--cache-content-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ca-certs-path="], + "env_var": "PANTS_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.18/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-total-child-memory-usage="], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-total-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-total-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-per-child-memory-usage="], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-per-child-memory-usage"], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": ["--process-per-child-memory-usage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-local-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-local-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-local-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-remote-parallelism="], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--process-execution-remote-parallelism"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--process-execution-cache-namespace="], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "fromfile": false, + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--process-execution-cache-namespace"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--process-execution-cache-namespace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]process-execution-local-enable-nailgun"], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "fromfile": false, + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "fromfile": false, + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-instance-name="], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "fromfile": false, + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use a Pants plugin which provides remote authentication to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-instance-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-instance-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-ca-certs-path="], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-certs-path=", + "config_key": "remote_client_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-client-certs-path="], + "env_var": "PANTS_REMOTE_CLIENT_CERTS_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_key_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-client-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-client-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-key-path=", + "config_key": "remote_client_key_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-client-key-path="], + "env_var": "PANTS_REMOTE_CLIENT_KEY_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_certs_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-client-key-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-client-key-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-oauth-bearer-token-path="], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "fromfile": false, + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-oauth-bearer-token-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-address="], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "fromfile": false, + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-store-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "fromfile": false, + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-store-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.18.0rc5" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-chunk-bytes="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "fromfile": false, + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-chunk-bytes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-retries="], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "fromfile": false, + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-retries"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-retries"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-concurrency="], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-timeout-millis=", + "config_key": "remote_store_rpc_timeout_millis", + "default": 30000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote store RPCs (not including streaming requests) in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 30000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-store-batch-api-size-limit="], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "fromfile": false, + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-store-batch-api-size-limit"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": ["ignore", "first_only", "backoff"], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "fromfile": false, + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-warnings"], + "target_field_name": null, + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": ["--remote-cache-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-concurrency="], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-timeout-millis=", + "config_key": "remote_cache_rpc_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-cache-rpc-timeout-millis="], + "env_var": "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache RPCs in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-rpc-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-address="], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "fromfile": false, + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--remote-execution-address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "fromfile": false, + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-headers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--remote-execution-headers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.18.0rc5" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-overall-deadline-secs="], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "fromfile": false, + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-overall-deadline-secs"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--remote-execution-rpc-concurrency="], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-execution-rpc-concurrency"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-append-only-caches-base-path=", + "config_key": "remote_execution_append_only_caches_base_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-append-only-caches-base-path=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH", + "fromfile": false, + "help": "Sets the base path to use when setting up an append-only cache for a process running remotely. If this option is not set, then append-only caches will not be used with remote execution. The option should be set to the absolute path of a writable directory in the remote execution environment where Pants can create append-only caches for use with remotely executing processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]watch-filesystem"], + "env_var": "PANTS_WATCH_FILESYSTEM", + "fromfile": false, + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-build-file-globs=" + ], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "fromfile": false, + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-build-file-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-build-file-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": ["ignore", "warn", "error"], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--unmatched-cli-globs="], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "fromfile": false, + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--unmatched-cli-globs"], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": ["--unmatched-cli-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": ["BUILD", "BUILD.*"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-patterns=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_PATTERNS", + "fromfile": false, + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["BUILD", "BUILD.*"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--build-ignore=\"['', '', ...]\""], + "env_var": "PANTS_BUILD_IGNORE", + "fromfile": false, + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-ignore"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-ignore"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "fromfile": false, + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.18/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--build-file-prelude-globs"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-file-prelude-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--subproject-roots=\"['', '', ...]\""], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "fromfile": false, + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subproject-roots"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--subproject-roots"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--loop-max="], + "env_var": "PANTS_LOOP_MAX", + "fromfile": false, + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop-max"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--loop-max"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-report-interval="], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "fromfile": false, + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--streaming-workunits-report-interval"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--streaming-workunits-level="], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "fromfile": false, + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--streaming-workunits-level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["--streaming-workunits-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]streaming-workunits-complete-async"], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "fromfile": false, + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-execution", + "config_key": "docker_execution", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-execution"], + "env_var": "PANTS_DOCKER_EXECUTION", + "fromfile": false, + "help": "If true, `docker_environment` targets can be used to run builds inside a Docker container.\n\nIf false, anytime a `docker_environment` target is used, Pants will instead fallback to whatever the target's `fallback_environment` field is set to.\n\nThis can be useful, for example, if you want to always use Docker locally, but disable it in CI, or vice versa.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "fromfile": false, + "help": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.\n\nIf you are using the `remote_environment` target mechanism, set this value as a field on the target instead. This option will be ignored.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": ["trace", "debug", "info", "warn", "error"], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["-l=", "--level="], + "env_var": "PANTS_LEVEL", + "fromfile": false, + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["-l", "--level"], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": ["-l", "--level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spec-files=\"['', '', ...]\""], + "env_var": "PANTS_SPEC_FILES", + "fromfile": false, + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spec-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--spec-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pantsd"], + "env_var": "PANTS_PANTSD", + "fromfile": false, + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--pantsd", "--no-pantsd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]concurrent"], + "env_var": "PANTS_CONCURRENT", + "fromfile": false, + "help": "Enable concurrent runs of Pants. With this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. As a result, enabling this option will increase the per-run startup cost, but will not block subsequent invocations.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--concurrent", "--no-concurrent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]local-cache"], + "env_var": "PANTS_LOCAL_CACHE", + "fromfile": false, + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--local-cache", "--no-local-cache"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["always", "on_failure", "never"], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--keep-sandboxes="], + "env_var": "PANTS_KEEP_SANDBOXES", + "fromfile": false, + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--keep-sandboxes"], + "target_field_name": null, + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": ["--keep-sandboxes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--session-end-tasks-timeout=", + "config_key": "session_end_tasks_timeout", + "default": 3.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--session-end-tasks-timeout="], + "env_var": "PANTS_SESSION_END_TASKS_TIMEOUT", + "fromfile": false, + "help": "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 invocation to a configured remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--session-end-tasks-timeout"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--session-end-tasks-timeout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-execution"], + "env_var": "PANTS_REMOTE_EXECUTION", + "fromfile": false, + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-read"], + "env_var": "PANTS_REMOTE_CACHE_READ", + "fromfile": false, + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]remote-cache-write"], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "fromfile": false, + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]colors"], + "env_var": "PANTS_COLORS", + "fromfile": false, + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--colors", "--no-colors"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--colors", "--no-colors"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dynamic-ui"], + "env_var": "PANTS_DYNAMIC_UI", + "fromfile": false, + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--dynamic-ui", "--no-dynamic-ui"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["indicatif-spinner", "experimental-prodash"], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dynamic-ui-renderer="], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "fromfile": false, + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dynamic-ui-renderer"], + "target_field_name": null, + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": ["--dynamic-ui-renderer"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "fromfile": false, + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.18/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tag"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]loop"], + "env_var": "PANTS_LOOP", + "fromfile": false, + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--loop", "--no-loop"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--loop", "--no-loop"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]process-cleanup"], + "env_var": "PANTS_PROCESS_CLEANUP", + "fromfile": false, + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--process-cleanup", "--no-process-cleanup"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--remote-store-chunk-upload-timeout-seconds="], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "fromfile": false, + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": "Unused: use the `remote_store_rpc_timeout_millis` option instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--remote-cache-read-timeout-millis="], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": "Use the `remote_cache_rpc_timeout_millis` option instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": ["--remote-cache-read-timeout-millis"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--remote-cache-read-timeout-millis"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "add-trailing-comma": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-install-from-resolve="], + "env_var": "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `add-trailing-comma` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-console-script=", + "config_key": "console_script", + "default": "add-trailing-comma", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-console-script="], + "env_var": "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--add-trailing-comma-entry-point="], + "env_var": "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]add-trailing-comma-skip"], + "env_var": "PANTS_ADD_TRAILING_COMMA_SKIP", + "fromfile": false, + "help": "If true, don't use add-trailing-comma when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-skip", + "--no-add-trailing-comma-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to add-trailing-comma, e.g. `--add-trailing-comma-args='--py36-plus'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--add-trailing-comma-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "scope": "add-trailing-comma" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]anonymous-telemetry-enabled"], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "fromfile": false, + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.18/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--anonymous-telemetry-repo-id="], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "fromfile": false, + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.18/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--anonymous-telemetry-repo-id"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--repo-id"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--apache-thrift-expected-version="], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "fromfile": false, + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--apache-thrift-thrift-search-paths"], + "target_field_name": "apache_thrift_thrift_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--thrift-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-install-from-resolve="], + "env_var": "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `autoflake` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-console-script="], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--autoflake-entry-point="], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]autoflake-skip"], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "fromfile": false, + "help": "If true, don't use Autoflake when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-skip", "--no-autoflake-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": ["--remove-all-unused-imports"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--autoflake-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["--remove-all-unused-imports"] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-install-from-resolve="], + "env_var": "PANTS_BANDIT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `bandit` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BANDIT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-console-script="], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-entry-point="], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-config="], + "env_var": "PANTS_BANDIT_CONFIG", + "fromfile": false, + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]bandit-skip"], + "env_var": "PANTS_BANDIT_SKIP", + "fromfile": false, + "help": "If true, don't use Bandit when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-skip", "--no-bandit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--bandit-args=\"[, , ...]\""], + "env_var": "PANTS_BANDIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--bandit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-install-from-resolve="], + "env_var": "PANTS_BLACK_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `black` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-requirements=\"['', '', ...]\""], + "env_var": "PANTS_BLACK_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-console-script="], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-entry-point="], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-config="], + "env_var": "PANTS_BLACK_CONFIG", + "fromfile": false, + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-config-discovery"], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]black-skip"], + "env_var": "PANTS_BLACK_SKIP", + "fromfile": false, + "help": "If true, don't use Black when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-skip", "--no-black-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--black-args=\"[, , ...]\""], + "env_var": "PANTS_BLACK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--black-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-version="], + "env_var": "PANTS_BUF_VERSION", + "fromfile": false, + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-url-template="], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buf-config="], + "env_var": "PANTS_BUF_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Buf (https://docs.buf.build/configuration/overview).\n\nSetting this option will disable `[buf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-config-discovery"], + "env_var": "PANTS_BUF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant root config files during runs (`buf.yaml`, `buf.lock`, `buf.gen.yaml` and `buf.work.yaml`).\n\nUse `[buf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config-discovery", + "--no-buf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-format-skip"], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-skip", "--no-buf-format-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--format-skip", "--no-format-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buf-lint-skip"], + "env_var": "PANTS_BUF_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-skip", "--no-buf-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-skip", "--no-lint-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-format-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--format-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buf-lint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--lint-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "build-deprecations-fixer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]build-deprecations-fixer-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]build-deprecations-fixer-skip"], + "env_var": "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP", + "fromfile": false, + "help": "If true, don't use BUILD Deprecations Fixer when running `scie-pants-linux-x86_64 fix`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-deprecations-fixer-skip", + "--no-build-deprecations-fixer-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for:\n\n - Renamed targets\n - Renamed fields", + "is_goal": false, + "provider": "pants.backend.build_files.fix.deprecations", + "scope": "build-deprecations-fixer" + }, + "buildifier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-version="], + "env_var": "PANTS_BUILDIFIER_VERSION", + "fromfile": false, + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--buildifier-url-template="], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]buildifier-skip"], + "env_var": "PANTS_BUILDIFIER_SKIP", + "fromfile": false, + "help": "If true, don't use Buildifier when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-skip", "--no-buildifier-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--buildifier-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "is_goal": false, + "provider": "pants.backend.build_files.fmt.buildifier", + "scope": "buildifier" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-since="], + "env_var": "PANTS_CHANGED_SINCE", + "fromfile": false, + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-since"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--since"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-diffspec="], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "fromfile": false, + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-diffspec"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--diffspec"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependents=", + "config_key": "dependents", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--changed-dependents="], + "env_var": "PANTS_CHANGED_DEPENDENTS", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--changed-dependents"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependents"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [ + { + "choices": ["none", "direct", "transitive"], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": ["--changed-dependees="], + "env_var": "PANTS_CHANGED_DEPENDEES", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": "Use --dependents instead", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": ["--changed-dependees"], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": ["--dependees"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.18/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--check-only=\"['', '', ...]\""], + "env_var": "PANTS_CHECK_ONLY", + "fromfile": false, + "help": "Only run these checkers and skip all others.\n\nThe checker names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkers.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--check-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--cli-alias=\"{'key1': val1, 'key2': val2, ...}\""], + "env_var": "PANTS_CLI_ALIAS", + "fromfile": false, + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependents=transitive\"\n\nThis would allow you to run `scie-pants-linux-x86_64 green all-changed`, which is shorthand for `scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependents=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--cli-alias"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-version="], + "env_var": "PANTS_COURSIER_VERSION", + "fromfile": false, + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-url-template="], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coursier-repos=\"['', '', ...]\""], + "env_var": "PANTS_COURSIER_REPOS", + "fromfile": false, + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coursier-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-install-from-resolve="], + "env_var": "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `coverage-py` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-console-script="], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-entry-point="], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-output-dir="], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-config="], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "fromfile": false, + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-config-discovery"], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-filter=\"['', '', ...]\""], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "fromfile": false, + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']`.\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-filter"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--filter"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["console", "xml", "html", "raw", "json", "lcov"], + "comma_separated_choices": "console, xml, html, raw, json, lcov", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": ["console"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "fromfile": false, + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-report"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--report"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["console"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]coverage-py-global-report"], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "fromfile": false, + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--global-report", "--no-global-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--coverage-py-fail-under="], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "fromfile": false, + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting `fail_under` in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set `[report] precision` properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--coverage-py-fail-under"], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": ["--fail-under"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "debug-adapter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-host="], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "fromfile": false, + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-host"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--host"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debug-adapter-port="], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "fromfile": false, + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debug-adapter-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "is_goal": false, + "provider": "pants.core", + "scope": "debug-adapter" + }, + "debugpy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-install-from-resolve="], + "env_var": "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `debugpy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-console-script="], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--debugpy-entry-point="], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DEBUGPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--debugpy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "debugpy" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-output-file="], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependees-sep="], + "env_var": "PANTS_DEPENDEES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependees-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-transitive"], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependees-closed"], + "env_var": "PANTS_DEPENDEES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-output-file="], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependencies-sep="], + "env_var": "PANTS_DEPENDENCIES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependencies-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-transitive"], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependencies-closed"], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "dependents": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-output-file="], + "env_var": "PANTS_DEPENDENTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dependents-sep="], + "env_var": "PANTS_DEPENDENTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dependents-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-transitive"], + "env_var": "PANTS_DEPENDENTS_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-transitive", + "--no-dependents-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]dependents-closed"], + "env_var": "PANTS_DEPENDENTS_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-closed", + "--no-dependents-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--closed", "--no-closed"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependents" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-install-from-resolve="], + "env_var": "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `docformatter` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-console-script="], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docformatter-entry-point="], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docformatter-skip"], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "fromfile": false, + "help": "If true, don't use docformatter when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docformatter-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-tools=\"['', '', ...]\""], + "env_var": "PANTS_DOCKER_TOOLS", + "fromfile": false, + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tools"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tools"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-tailor"], + "env_var": "PANTS_DOCKER_TAILOR", + "fromfile": false, + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-tailor", "--no-docker-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find the Docker client and any tools required. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-executable-search-paths"], + "target_field_name": "docker_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-env-vars"], + "target_field_name": "docker_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "fromfile": true, + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n \"use_local_alias\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.\n\nIf `use_local_alias` is true, a built image is additionally tagged locally using the registry alias as the value for repository (i.e. the additional image tag is not pushed) and will be used for any `pants run` requests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-repository="], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "fromfile": false, + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-default-context-root="], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "fromfile": false, + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-default-context-root"], + "target_field_name": null, + "typ": "workspace_path", + "unscoped_cmd_line_args": ["--default-context-root"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "fromfile": false, + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--build-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--docker-build-target-stage="], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "fromfile": false, + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-target-stage"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-target-stage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "build_hosts", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_BUILD_HOSTS", + "fromfile": false, + "help": "Hosts entries to be added to the `/etc/hosts` file in all built images.\n\nExample:\n\n [docker]\n build_hosts = {\"docker\": \"10.180.0.1\", \"docker2\": \"10.180.0.2\"}\n\nUse the `extra_build_hosts` field on a `docker_image` target for additional image specific host entries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-build-hosts"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--build-hosts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-no-cache", + "config_key": "build_no_cache", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-build-no-cache"], + "env_var": "PANTS_DOCKER_BUILD_NO_CACHE", + "fromfile": false, + "help": "Do not use the Docker cache when building images.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-no-cache", + "--no-docker-build-no-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--build-no-cache", "--no-build-no-cache"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]docker-build-verbose"], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "fromfile": false, + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--build-verbose", "--no-build-verbose"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "fromfile": false, + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--docker-run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--run-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--dockerfile-parser-install-from-resolve="], + "env_var": "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `dockerfile-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--dockerfile-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.4.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-version="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "fromfile": false, + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.4.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--download-terraform-url-template="], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Terraform processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-extra-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]download-terraform-tailor"], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "fromfile": false, + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to terraform, e.g. `--download-terraform-args='-auto-approve'`.\n\nAdditional arguments to pass to the Terraform command line.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--download-terraform-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "environments-preview": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "names", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_ENVIRONMENTS_PREVIEW_NAMES", + "fromfile": false, + "help": "A mapping of logical names to addresses to environment targets. For example:\n\n [environments-preview.names]\n linux_local = \"//:linux_env\"\n macos_local = \"//:macos_env\"\n centos6 = \"//:centos6_docker_env\"\n linux_ci = \"build-support:linux_ci_env\"\n macos_ci = \"build-support:macos_ci_env\"\n\nTo use an environment for a given target, specify the name in the `environment` field on that target. Pants will consume the environment target at the address mapped from that name.\n\nPants will ignore any environment targets that are not given a name via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--environments-preview-names"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A highly experimental subsystem to allow setting environment variables and executable search paths for different environments, e.g. macOS vs. Linux.", + "is_goal": false, + "provider": "", + "scope": "environments-preview" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]experimental-bsp-server"], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "fromfile": false, + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--server", "--no-server"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": ["PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-runner-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--runner-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["PATH"] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "fromfile": false, + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-bsp-groups-config-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--groups-config-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-bsp" + }, + "experimental-deploy": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Perform a deployment process.", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-deploy" + }, + "experimental-explorer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-address="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "fromfile": false, + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-address"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--address"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--experimental-explorer-port="], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "fromfile": false, + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--experimental-explorer-port"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--port"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run the Pants Explorer Web UI server.", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-explorer" + }, + "export": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-py-editable-in-resolve=\"['', '', ...]\"", + "config_key": "py_editable_in_resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-editable-in-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE", + "fromfile": false, + "help": "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.\n\nIf a resolve name is not in this list, 'python_distribution' targets will not be installed in the virtualenv. This defaults to an empty list for backwards compatibility and to prevent unnecessary work to generate and install the PEP-660 editable wheels.\n\nThis only applies when '[python].enable_resolves' is true and when exporting a 'mutable_virtualenv' ('symlinked_immutable_virtualenv' exports are not \"full\" virtualenvs because they must not be edited, and do not include 'pip').\n\nNOTE: If you are using legacy exports (not using the '--resolve' option), then this option has no effect. Legacy exports will not include any editable installs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-editable-in-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--py-editable-in-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--export-resolve=\"['', '', ...]\""], + "env_var": "PANTS_EXPORT_RESOLVE", + "fromfile": false, + "help": "Export the specified resolve(s). The export format is backend-specific, e.g., Python resolves are exported as virtualenvs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["mutable_virtualenv", "symlinked_immutable_virtualenv"], + "comma_separated_choices": "mutable_virtualenv, symlinked_immutable_virtualenv", + "comma_separated_display_args": "--export-py-resolve-format=", + "config_key": "py_resolve_format", + "default": "mutable_virtualenv", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-resolve-format=" + ], + "env_var": "PANTS_EXPORT_PY_RESOLVE_FORMAT", + "fromfile": false, + "help": "Export Python resolves using this format. Options are:\n - `mutable_virtualenv`: Export a standalone mutable virtualenv that you can\n further modify.\n - `symlinked_immutable_virtualenv`: Export a symlink into a cached Python virtualenv.\n This virtualenv will have no pip binary, and will be immutable. Any attempt to\n modify it will corrupt the cache! It may, however, take significantly less time\n to export than a standalone, mutable virtualenv.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--export-py-resolve-format"], + "target_field_name": null, + "typ": "PythonResolveExportFormat", + "unscoped_cmd_line_args": ["--py-resolve-format"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mutable_virtualenv" + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]export-symlink-python-virtualenv", + "config_key": "symlink_python_virtualenv", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.20.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]export-symlink-python-virtualenv"], + "env_var": "PANTS_EXPORT_SYMLINK_PYTHON_VIRTUALENV", + "fromfile": false, + "help": "Export a symlink into a cached Python virtualenv. This virtualenv will have no pip binary, and will be immutable. Any attempt to modify it will corrupt the cache! It may, however, take significantly less time to export than a standalone, mutable virtualenv will.", + "removal_hint": "Set the `[export].py_resolve_format` option to 'symlinked_immutable_virtualenv'", + "removal_version": "2.20.0.dev0", + "scoped_cmd_line_args": [ + "--export-symlink-python-virtualenv", + "--no-export-symlink-python-virtualenv" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--symlink-python-virtualenv", + "--no-symlink-python-virtualenv" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.core", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-output-file="], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filedeps-sep="], + "env_var": "PANTS_FILEDEPS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-absolute"], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "fromfile": false, + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--absolute", "--no-absolute"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-globs"], + "env_var": "PANTS_FILEDEPS_GLOBS", + "fromfile": false, + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filedeps-globs", "--no-filedeps-globs"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--globs", "--no-globs"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]filedeps-transitive"], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "fromfile": false, + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--transitive", "--no-transitive"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-output-file="], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-sep="], + "env_var": "PANTS_FILTER_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "fromfile": false, + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-target-type"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--target-type"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["all", "file", "BUILD"], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--filter-granularity="], + "env_var": "PANTS_FILTER_GRANULARITY", + "fromfile": false, + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-granularity"], + "target_field_name": null, + "typ": "TargetGranularity", + "unscoped_cmd_line_args": ["--granularity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "fromfile": false, + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-address-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--address-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "fromfile": false, + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--filter-tag-regex"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--tag-regex"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "fix": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-batch-size="], + "env_var": "PANTS_FIX_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each fixer batch.\n\nFixer processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in fixer processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fix-only=\"['', '', ...]\""], + "env_var": "PANTS_FIX_ONLY", + "fromfile": false, + "help": "Only run these fixers and skip all others.\n\nThe fixer names are outputted at the final summary of running this goal, e.g. `autoflake` and `pyupgrade`. You can also run `fix --only=fake` to get a list of all activated fixers.\n\nYou can repeat this option, e.g. `fix --only=autoflake --only=pyupgrade` or `fix --only=['autoflake', 'pyupgrade']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fix-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fix-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]fix-skip-formatters"], + "env_var": "PANTS_FIX_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters.\n\nFYI: when running `scie-pants-linux-x86_64 fix fmt ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `fix` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-skip-formatters", + "--no-fix-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autofix source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fix" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-install-from-resolve="], + "env_var": "PANTS_FLAKE8_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `flake8` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-requirements=\"['', '', ...]\""], + "env_var": "PANTS_FLAKE8_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-console-script="], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-entry-point="], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-config="], + "env_var": "PANTS_FLAKE8_CONFIG", + "fromfile": false, + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "fromfile": false, + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-extra-files"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-files"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-config-discovery"], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add `'build-support/flake8'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.18/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside flake8 itself, as described in https://www.pantsbuild.org/v2.18/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]flake8-skip"], + "env_var": "PANTS_FLAKE8_SKIP", + "fromfile": false, + "help": "If true, don't use Flake8 when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-skip", "--no-flake8-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--flake8-args=\"[, , ...]\""], + "env_var": "PANTS_FLAKE8_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--flake8-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.flake8", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-batch-size="], + "env_var": "PANTS_FMT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--fmt-only=\"['', '', ...]\""], + "env_var": "PANTS_FMT_ONLY", + "fromfile": false, + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--fmt-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--generate-lockfiles-custom-command="], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "fromfile": false, + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-custom-command"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--custom-command"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "fromfile": false, + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from backend-specific configuration such as `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--generate-lockfiles-resolve"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff", + "config_key": "diff", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF", + "fromfile": false, + "help": "Print a summary of changed distributions after generating the lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff", + "--no-generate-lockfiles-diff" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--diff", "--no-diff"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff-include-unchanged", + "config_key": "diff_include_unchanged", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]generate-lockfiles-diff-include-unchanged"], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED", + "fromfile": false, + "help": "Include unchanged distributions in the diff summary output. Implies `diff=true`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff-include-unchanged", + "--no-generate-lockfiles-diff-include-unchanged" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff-include-unchanged", + "--no-diff-include-unchanged" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "generate-snapshots": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate test snapshots.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-snapshots" + }, + "go-generate": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-generate-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-generate-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_GENERATE_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking generator programs. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-generate-env-vars"], + "target_field_name": "go_generate_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the `//go:generate` directives.\n\nSee https://go.dev/blog/generate for details.", + "is_goal": true, + "provider": "pants.backend.experimental.go", + "scope": "go-generate" + }, + "go-test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{target_spec}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-coverage-output-dir="], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Go coverage reports to. Must be relative to the build root.\n\nReplacements:\n\n - `{distdir}` is replaced with the Pants `distdir`.\n - `{target_spec}` is replaced with the address of the applicable `go_package` target with `/`\n characters replaced with dots (`.`).\n - `{import_path}` is replaced with the applicable package's import path. Subdirectories will be made\n for any path components separated by `/` characters.\n - `{import_path_escaped}` is replaced with the applicable package's import path but with\n slashes converted to underscores. This is deprecated and only exists to support behavior from\n earlier versions.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-output-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--coverage-output-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{target_spec}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-output-test-binary", + "config_key": "output_test_binary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-output-test-binary"], + "env_var": "PANTS_GO_TEST_OUTPUT_TEST_BINARY", + "fromfile": false, + "help": "Write the test binary to the test extra output directory.\n\nThis is similar to the `go test -c` option, but will still run the underlying test.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-output-test-binary", + "--no-go-test-output-test-binary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--output-test-binary", + "--no-output-test-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": ["set", "count", "atomic"], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--go-test-cover-mode="], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "fromfile": false, + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via `--test-use-coverage`. Valid values are `set`, `count`, and `atomic`:\n\n * `set`: bool: does this statement run?\n * `count`: int: how many times does this statement run?\n * `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-cover-mode"], + "target_field_name": null, + "typ": "GoCoverMode", + "unscoped_cmd_line_args": ["--cover-mode"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-coverage-html", + "config_key": "coverage_html", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-coverage-html"], + "env_var": "PANTS_GO_TEST_COVERAGE_HTML", + "fromfile": false, + "help": "If true, then convert coverage reports to HTML format and write a `coverage.html` file next to the raw coverage data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-html", + "--no-go-test-coverage-html" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--coverage-html", "--no-coverage-html"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-packages=\"['', '', ...]\"", + "config_key": "coverage_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_PACKAGES", + "fromfile": false, + "help": "A list of \"import path patterns\" for determining which import paths will be instrumented for code coverage.\n\nFrom `go help packages`:\n\nAn import path is a pattern if it includes one or more \"...\" wildcards, each of which can match any string, including the empty string and strings containing slashes. Such a pattern expands to all package directories found in the GOPATH trees with names matching the patterns.\n\nTo make common patterns more convenient, there are two special cases. First, /... at the end of the pattern can match an empty string, so that net/... matches both net and packages in its subdirectories, like net/http. Second, any slash-separated pattern element containing a wildcard never participates in a match of the \"vendor\" element in the path of a vendored package, so that ./... does not match packages in subdirectories of ./vendor or ./mycode/vendor, but ./vendor/... and ./mycode/vendor/... do. Note, however, that a directory named vendor that itself contains code is not a vendored package: cmd/vendor would be a command named vendor, and the pattern cmd/... matches it. See golang.org/s/go15vendor for more about vendoring.\n\nThis option is similar to the `go test -coverpkg` option, but without support currently for reserved import path patterns like `std` and `all`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-coverage-packages"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--coverage-packages"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-skip"], + "env_var": "PANTS_GO_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Go test binary when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-skip", "--no-go-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-race", + "config_key": "force_race", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-race"], + "env_var": "PANTS_GO_TEST_FORCE_RACE", + "fromfile": false, + "help": "If true, then always enable the Go data race detector when running tests regardless of the test-by-test `test_race` field on the relevant `go_package` target.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-race", + "--no-go-test-force-race" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-race", "--no-force-race"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-msan", + "config_key": "force_msan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-msan"], + "env_var": "PANTS_GO_TEST_FORCE_MSAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"memory sanitizer\" when running tests regardless of the test-by-test `msan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-msan", + "--no-go-test-force-msan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-msan", "--no-force-msan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-asan", + "config_key": "force_asan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-force-asan"], + "env_var": "PANTS_GO_TEST_FORCE_ASAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"address sanitizer\" when running tests regardless of the test-by-test `asan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-asan", + "--no-go-test-force-asan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force-asan", "--no-force-asan"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-block-profile", + "config_key": "block_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-block-profile"], + "env_var": "PANTS_GO_TEST_BLOCK_PROFILE", + "fromfile": false, + "help": "Capture a goroutine blocking profile from the execution of the test runner. The profile will be written to the file `block.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-block-profile", + "--no-go-test-block-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--block-profile", "--no-block-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-cpu-profile", + "config_key": "cpu_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-cpu-profile"], + "env_var": "PANTS_GO_TEST_CPU_PROFILE", + "fromfile": false, + "help": "Capture a CPU profile from the execution of the test runner. The profile will be written to the file `cpu.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cpu-profile", + "--no-go-test-cpu-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cpu-profile", "--no-cpu-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mem-profile", + "config_key": "mem_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mem-profile"], + "env_var": "PANTS_GO_TEST_MEM_PROFILE", + "fromfile": false, + "help": "Capture an allocation profile from the execution of the test runner after tests have passed. The profile will be written to the file `mem.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mem-profile", + "--no-go-test-mem-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mem-profile", "--no-mem-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mutex-profile", + "config_key": "mutex_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-mutex-profile"], + "env_var": "PANTS_GO_TEST_MUTEX_PROFILE", + "fromfile": false, + "help": "Capture a mutex contention profile from the execution of the test runner when all tests are complete. The profile will be written to the file `mutex.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mutex-profile", + "--no-go-test-mutex-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mutex-profile", "--no-mutex-profile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-trace", + "config_key": "trace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]go-test-trace"], + "env_var": "PANTS_GO_TEST_TRACE", + "fromfile": false, + "help": "Capture an execution trace from the execution of the test runner. The trace will be written to the file `trace.out` in the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--go-test-trace", "--no-go-test-trace"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--trace", "--no-trace"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]gofmt-skip"], + "env_var": "PANTS_GOFMT_SKIP", + "fromfile": false, + "help": "If true, don't use gofmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-skip", "--no-gofmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--gofmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--gofmt-args=\"[, , ...]\""], + "env_var": "PANTS_GOFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to gofmt, e.g. `--gofmt-args='-s -e'`.\n\nOnly the following style related options are supported: `-e`, `-r`, `-s`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--gofmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-go-mod-targets"], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "fromfile": false, + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-package-targets"], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "fromfile": false, + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-tailor-binary-targets"], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-tool-name="], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "fromfile": false, + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-tool-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-tool-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-asdf-bin-relpath="], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "fromfile": false, + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-asdf-bin-relpath"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--asdf-bin-relpath"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-subprocess-env-vars"], + "target_field_name": "golang_subprocess_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--subprocess-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["LANG", "LC_CTYPE", "LC_ALL", "PATH"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gcc-binary-name=", + "config_key": "cgo_gcc_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gcc-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GCC_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gcc-binary-name"], + "target_field_name": "golang_cgo_gcc_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gcc-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gxx-binary-name=", + "config_key": "cgo_gxx_binary_name", + "default": "g++", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-gxx-binary-name="], + "env_var": "PANTS_GOLANG_CGO_GXX_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C++ code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-gxx-binary-name"], + "target_field_name": "golang_cgo_gxx_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-gxx-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "g++" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-binary-name=", + "config_key": "cgo_fortran_binary_name", + "default": "gfortran", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-fortran-binary-name="], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile fortran code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-binary-name"], + "target_field_name": "golang_cgo_fortran_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--cgo-fortran-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gfortran" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-external-linker-binary-name=", + "config_key": "external_linker_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-external-linker-binary-name="], + "env_var": "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use as the \"external linker\" when invoking `go tool link`. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-external-linker-binary-name"], + "target_field_name": "golang_external_linker_binary_name", + "typ": "str", + "unscoped_cmd_line_args": ["--external-linker-binary-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-c-flags=\"['', '', ...]\"", + "config_key": "cgo_c_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-cgo-c-flags=\"['', '', ...]\""], + "env_var": "PANTS_GOLANG_CGO_C_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C code when Cgo is enabled. Equivalent to setting the CGO_CFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-c-flags"], + "target_field_name": "golang_cgo_c_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-c-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-cxx-flags=\"['', '', ...]\"", + "config_key": "cgo_cxx_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-cxx-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_CXX_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C++ code when Cgo is enabled. Equivalent to setting the CGO_CXXFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-cxx-flags"], + "target_field_name": "golang_cgo_cxx_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-cxx-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-flags=\"['', '', ...]\"", + "config_key": "cgo_fortran_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling Fortran code when Cgo is enabled. Equivalent to setting the CGO_FFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-fortran-flags"], + "target_field_name": "golang_cgo_fortran_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-fortran-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-linker-flags=\"['', '', ...]\"", + "config_key": "cgo_linker_flags", + "default": ["-g", "-O2"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-linker-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_LINKER_FLAGS", + "fromfile": false, + "help": "Compiler options used when linking native code when Cgo is enabled. Equivalent to setting the CGO_LDFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-linker-flags"], + "target_field_name": "golang_cgo_linker_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-linker-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["-g", "-O2"] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--golang-minimum-expected-version="], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "fromfile": false, + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-minimum-expected-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--minimum-expected-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-cgo-enabled", + "config_key": "cgo_enabled", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]golang-cgo-enabled"], + "env_var": "PANTS_GOLANG_CGO_ENABLED", + "fromfile": false, + "help": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-enabled", + "--no-golang-cgo-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--cgo-enabled", "--no-cgo-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable\n* ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binary with the version in `BUILD_ROOT/.tool-versions`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-go-search-paths"], + "target_field_name": "golang_go_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--go-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-tool-search-paths=\"['', '', ...]\"", + "config_key": "cgo_tool_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-tool-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for tools needed by CGo (e.g., gcc, g++).\n\nSpecify absolute paths to directories with tools needed by CGo , e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--golang-cgo-tool-search-paths"], + "target_field_name": "golang_cgo_tool_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--cgo-tool-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-version="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--google-java-format-lockfile="], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--google-java-format-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-skip"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Google Java Format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]google-java-format-aosp"], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "fromfile": false, + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--aosp", "--no-aosp"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-version="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "fromfile": false, + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--grpc-python-plugin-url-template="], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--grpc-python-plugin-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-version="], + "env_var": "PANTS_HADOLINT_VERSION", + "fromfile": false, + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-url-template="], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--hadolint-config="], + "env_var": "PANTS_HADOLINT_CONFIG", + "fromfile": false, + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-config-discovery"], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]hadolint-skip"], + "env_var": "PANTS_HADOLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Hadolint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-skip", "--no-hadolint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--hadolint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.12.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-version="], + "env_var": "PANTS_HELM_VERSION", + "fromfile": false, + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.12.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-url-template="], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-extra-env-vars"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-charts", + "config_key": "tailor_charts", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-tailor-charts"], + "env_var": "PANTS_HELM_TAILOR_CHARTS", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-charts", + "--no-helm-tailor-charts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-charts", "--no-tailor-charts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-unittests", + "config_key": "tailor_unittests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-tailor-unittests"], + "env_var": "PANTS_HELM_TAILOR_UNITTESTS", + "fromfile": false, + "help": "If true, add `helm_unittest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-unittests", + "--no-helm-tailor-unittests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-unittests", + "--no-tailor-unittests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "fromfile": true, + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-registries"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--registries"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-lint-strict"], + "env_var": "PANTS_HELM_LINT_STRICT", + "fromfile": false, + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--lint-strict", "--no-lint-strict"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-default-registry-repository="], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "fromfile": false, + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-default-registry-repository"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-registry-repository"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as follows:\n\n * --atomic\n * --cleanup-on-fail\n * --create-namespace\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n\nBefore attempting to use passthrough arguments, check the reference of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]helm-tailor"], + "env_var": "PANTS_HELM_TAILOR", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": "Use `[helm].tailor_charts` instead.", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": ["--helm-tailor", "--no-helm-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "helm-k8s-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-k8s-parser-install-from-resolve="], + "env_var": "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-k8s-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-k8s-parser-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Analyses K8S manifests rendered by Helm.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-k8s-parser" + }, + "helm-post-renderer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-post-renderer-install-from-resolve="], + "env_var": "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-post-renderer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-post-renderer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-post-renderer" + }, + "helm-unittest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.3.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-version="], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "fromfile": false, + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.3.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--helm-unittest-url-template="], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-color"], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "fromfile": false, + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--color", "--no-color"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["XUnit", "NUnit", "JUnit"], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "fromfile": false, + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--helm-unittest-output-type"], + "target_field_name": null, + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": ["--output-type"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]helm-unittest-skip"], + "env_var": "PANTS_HELM_UNITTEST_SKIP", + "fromfile": false, + "help": "If true, don't use helmunittestsubsystem when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-skip", + "--no-helm-unittest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/helm-unittest)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-unittest" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-install-from-resolve="], + "env_var": "PANTS_IPYTHON_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ipython` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-console-script="], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ipython-entry-point="], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ipython-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ipython-ignore-cwd"], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "fromfile": false, + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--ignore-cwd", "--no-ignore-cwd"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-install-from-resolve="], + "env_var": "PANTS_ISORT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `isort` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-requirements=\"['', '', ...]\""], + "env_var": "PANTS_ISORT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-console-script="], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-entry-point="], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "fromfile": false, + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-config"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-config-discovery"], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]isort-skip"], + "env_var": "PANTS_ISORT_SKIP", + "fromfile": false, + "help": "If true, don't use isort when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-skip", "--no-isort-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--isort-args=\"[, , ...]\""], + "env_var": "PANTS_ISORT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--isort-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "jarjar": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-version=", + "config_key": "version", + "default": "1.8.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-version="], + "env_var": "PANTS_JARJAR_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[jarjar].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.8.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[jarjar].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.eed3si9n.jarjar:jarjar-assembly:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-lockfile="], + "env_var": "PANTS_JARJAR_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/jvm/shading/jarjar.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=jarjar`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jarjar-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JARJAR_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `jarjar` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jarjar-skip-manifest", + "config_key": "skip_manifest", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jarjar-skip-manifest"], + "env_var": "PANTS_JARJAR_SKIP_MANIFEST", + "fromfile": false, + "help": "Skip the processing of the JAR manifest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-skip-manifest", + "--no-jarjar-skip-manifest" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-manifest", "--no-skip-manifest"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["fatal", "skip", "omit", "move"], + "comma_separated_choices": "fatal, skip, omit, move", + "comma_separated_display_args": "--jarjar-misplaced-class-strategy=", + "config_key": "misplaced_class_strategy", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-misplaced-class-strategy=" + ], + "env_var": "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY", + "fromfile": false, + "help": "The strategy to use when processing class files that are in the wrong package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jarjar-misplaced-class-strategy"], + "target_field_name": null, + "typ": "MisplacedClassStrategy", + "unscoped_cmd_line_args": ["--misplaced-class-strategy"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jarjar" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-imports"], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]java-infer-consumed-types"], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "fromfile": false, + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--java-infer-third-party-import-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--third-party-import-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]javac-tailor-source-targets"], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--javac-args=\"[, , ...]\""], + "env_var": "PANTS_JAVAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--javac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-version="], + "env_var": "PANTS_JUNIT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-lockfile="], + "env_var": "PANTS_JUNIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--junit-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]junit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]junit-skip"], + "env_var": "PANTS_JUNIT_SKIP", + "fromfile": false, + "help": "If true, don't use JUnit when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--junit-skip", "--no-junit-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-tool-jdk="], + "env_var": "PANTS_JVM_TOOL_JDK", + "fromfile": false, + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-tool-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--tool-jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-jdk="], + "env_var": "PANTS_JVM_JDK", + "fromfile": false, + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-jdk"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--jdk"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]jvm-reproducible-jars"], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "fromfile": false, + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-nailgun-remote-cache-speculation-delay=" + ], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "fromfile": false, + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-nailgun-remote-cache-speculation-delay" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--nailgun-remote-cache-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-global-options=\"['', '', ...]\""], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-global-options"], + "target_field_name": "jvm_global_options", + "typ": "list", + "unscoped_cmd_line_args": ["--global-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "fromfile": false, + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-default-resolve="], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--jvm-debug-args=\"['', '', ...]\""], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "fromfile": false, + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like `['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--jvm-debug-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--debug-args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "kotlin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-tailor-source-targets"], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlin-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin" + }, + "kotlin-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-imports"], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]kotlin-infer-consumed-types"], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Kotlin targets.", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin-infer" + }, + "kotlinc": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--kotlinc-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlinc" + }, + "ktlint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-version="], + "env_var": "PANTS_KTLINT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.pinterest:ktlint:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.pinterest:ktlint:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-lockfile="], + "env_var": "PANTS_KTLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ktlint-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ktlint-skip"], + "env_var": "PANTS_KTLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Ktlint when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ktlint-skip", "--no-ktlint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "scope": "ktlint" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-install-from-resolve="], + "env_var": "PANTS_LAMBDEX_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `lambdex` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.12"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.12"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-console-script="], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lambdex-entry-point="], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lambdex-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": ["lambdex", "zip"], + "comma_separated_choices": "lambdex, zip", + "comma_separated_display_args": "--lambdex-layout=", + "config_key": "layout", + "default": "zip", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.19.0.dev0.", + "deprecation_active": true, + "display_args": ["--lambdex-layout="], + "env_var": "PANTS_LAMBDEX_LAYOUT", + "fromfile": false, + "help": "Explicitly control the layout used for `python_aws_lambda_function` (formerly `python_awslambda`) and `python_google_cloud_function` targets. This option exists for the transition from Lambdex-based layout to the plain zip layout, as recommended by cloud vendors.", + "removal_hint": "Remove the whole [lambdex] section, as Lambdex is deprecated and its functionality will be removed. If you have `layout = \"zip\"`, no further action is required, as you are already using the recommended layout.\n\nIf you have `layout = \"lambdex\"`, removing the section will switch any `python_aws_lambda_function` (formerly `python_awslambda`) and `python_google_cloud_function` targets to using the `zip` layout, as recommended by cloud vendors. (If you are using `python_aws_lambda_function`, you will need to also update the handlers configured in the cloud from `lambdex_handler.handler` to `lambda_function.handler`.)\n\nSee the docs for more details:\n\n* https://www.pantsbuild.org/v2.18/docs/awslambda-python#migrating-from-pants-216-and-earlier\n* https://www.pantsbuild.org/v2.18/docs/google-cloud-function-python#migrating-from-pants-216-and-earlier", + "removal_version": "2.19.0.dev0", + "scoped_cmd_line_args": ["--lambdex-layout"], + "target_field_name": null, + "typ": "LambdexLayout", + "unscoped_cmd_line_args": ["--layout"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "zip" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "provider": "pants.backend.awslambda.python", + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-batch-size="], + "env_var": "PANTS_LINT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--lint-only=\"['', '', ...]\""], + "env_var": "PANTS_LINT_ONLY", + "fromfile": false, + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--lint-only"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--only"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-formatters"], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fmt lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-fixers", + "config_key": "skip_fixers", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]lint-skip-fixers"], + "env_var": "PANTS_LINT_SKIP_FIXERS", + "fromfile": false, + "help": "If true, skip running all fixers in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fix lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fix` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-fixers", + "--no-lint-skip-fixers" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip-fixers", "--no-skip-fixers"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run linters/formatters/fixers in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-output-file="], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--list-sep="], + "env_var": "PANTS_LIST_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]list-documented"], + "env_var": "PANTS_LIST_DOCUMENTED", + "fromfile": false, + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--list-documented", "--no-list-documented"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--documented", "--no-documented"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-install-from-resolve="], + "env_var": "PANTS_MYPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-requirements=\"['', '', ...]\""], + "env_var": "PANTS_MYPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-console-script="], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-entry-point="], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-config="], + "env_var": "PANTS_MYPY_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-config-discovery"], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].install_from_resolve` to a resolve whose lockfile includes those plugins, and set the `plugins` option in `mypy.ini`. See https://www.pantsbuild.org/v2.18/docs/python-check-goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]mypy-skip"], + "env_var": "PANTS_MYPY_SKIP", + "fromfile": false, + "help": "If true, don't use MyPy when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-skip", "--no-mypy-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-args=\"[, , ...]\""], + "env_var": "PANTS_MYPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python.typecheck.mypy", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--mypy-protobuf-install-from-resolve="], + "env_var": "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy-protobuf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--mypy-protobuf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "nodejs": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-version=", + "config_key": "version", + "default": "v16.15.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-version="], + "env_var": "PANTS_NODEJS_VERSION", + "fromfile": false, + "help": "Use this version of nodejs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v16.15.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_NODEJS_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-template=", + "config_key": "url_template", + "default": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-url-template="], + "env_var": "PANTS_NODEJS_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_RESOLVES", + "fromfile": false, + "help": "A mapping of names to lockfile paths used in your project.\n\nSpecifying a resolve name is optional. If unspecified, the default resolve name is calculated by taking the path from the source root to the directory containing the lockfile and replacing '/' with '.' in that path.\n\nExample: An npm lockfile located at `src/js/package/package-lock.json' will result in a resolve named `js.package`, assuming src/ is a source root.\n\nRun `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find any tools required to run nodejs processes. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-executable-search-paths"], + "target_field_name": "nodejs_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Node.js distributions.\n\nThis option is only used if a templated url download specified via [nodejs].known_versions does not contain a version matching the configured [nodejs].version range.\n\nYou can specify absolute paths to binaries and/or to directories containing binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Node.js versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binaries with the version in `BUILD_ROOT/.tool-versions`\n* ``, all NodeJS versions under $NVM_DIR/versions/node\n* ``, the nvm installation with the version in BUILD_ROOT/.nvmrc\nNote that the version in the .nvmrc file has to be on the form \"vX.Y.Z\".", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-search-path"], + "target_field_name": "nodejs_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-corepack-env-vars=\"[, , ...]\"", + "config_key": "corepack_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-corepack-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_COREPACK_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `corepack` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nReview https://github.com/nodejs/corepack#environment-variables for available variables.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-corepack-env-vars"], + "target_field_name": "nodejs_corepack_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--corepack-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-manager=", + "config_key": "package_manager", + "default": "npm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--nodejs-package-manager="], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGER", + "fromfile": false, + "help": "Default Node.js package manager to use.\n\nYou can either rely on this default together with the [nodejs].package_managers option, or specify the `package.json#packageManager` tool and version in the package.json of your project.\n\nSpecifying conflicting package manager versions within a multi-package workspace is an error.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-manager"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--package-manager"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "npm" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "package_managers", + "default": { + "npm": "8.5.5" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGERS", + "fromfile": false, + "help": "A mapping of package manager versions to semver releases.\n\nMany organizations only need a single version of a package manager, which is a good default and often the simplest thing to do.\n\nThe version download is managed by Corepack. This mapping corresponds to the https://github.com/nodejs/corepack#known-good-releases setting, using the `--activate` flag.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--nodejs-package-managers"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--package-managers"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "npm": "8.5.5" + } + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Node.js Javascript runtime (including Corepack).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "nodejs" + }, + "nodejs-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]nodejs-infer-imports"], + "env_var": "PANTS_NODEJS_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `// pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-imports", + "--no-nodejs-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-package-json-entry-points", + "config_key": "package_json_entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]nodejs-infer-package-json-entry-points"], + "env_var": "PANTS_NODEJS_INFER_PACKAGE_JSON_ENTRY_POINTS", + "fromfile": false, + "help": "Infer a `package_json`'s dependencies by parsing entry point statements from the package.json file.\n\nTo ignore a false positive, you can put `!{bad_address}` in the `dependencies` field of the `package_json` target.\n\nSee https://nodejs.org/api/packages.html#package-entry-points and\n https://docs.npmjs.com/cli/v9/configuring-npm/package-json#browser.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-package-json-entry-points", + "--no-nodejs-infer-package-json-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-json-entry-points", + "--no-package-json-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for javascript targets.", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "nodejs-infer" + }, + "openapi": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-tailor-targets", + "config_key": "tailor_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]openapi-tailor-targets"], + "env_var": "PANTS_OPENAPI_TAILOR_TARGETS", + "fromfile": false, + "help": "If true, add `openapi_documents` and `openapi_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-tailor-targets", + "--no-openapi-tailor-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor-targets", "--no-tailor-targets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The OpenAPI Specification (https://swagger.io/specification/).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi", + "scope": "openapi" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-output-file="], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-from="], + "env_var": "PANTS_PATHS_FROM", + "fromfile": false, + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-from"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--from"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--paths-to="], + "env_var": "PANTS_PATHS_TO", + "fromfile": false, + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--paths-to"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--to"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses. Either address may represent a group of targets, e.g. `--from=src/app/main.py --to=src/library::`.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--peek-output-file="], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--peek-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-exclude-defaults"], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "fromfile": false, + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-include-dep-rules", + "config_key": "include_dep_rules", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]peek-include-dep-rules"], + "env_var": "PANTS_PEEK_INCLUDE_DEP_RULES", + "fromfile": false, + "help": "Whether to include `_dependencies_rules`, `_dependents_rules` and `_applicable_dep_rules` that apply to the target and its dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-include-dep-rules", + "--no-peek-include-dep-rules" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--include-dep-rules", + "--no-include-dep-rules" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-verbosity="], + "env_var": "PANTS_PEX_VERBOSITY", + "fromfile": false, + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-verbosity"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--verbosity"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-venv-use-symlinks"], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "fromfile": false, + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-executable-search-paths"], + "target_field_name": "pex_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pex-binary-defaults-emit-warnings"], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "fromfile": false, + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--emit-warnings", "--no-emit-warnings"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "fromfile": false, + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.137", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-version="], + "env_var": "PANTS_PEX_CLI_VERSION", + "fromfile": false, + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.135,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.137" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.137|macos_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|macos_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.137|macos_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|macos_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_x86_64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329", + "v2.1.137|linux_arm64|faad51a6a108fba9d40b2a10e82a2646fccbaf8c3d9be47818f4bffae02d94b8|4098329" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pex-cli-url-template="], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.135,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pex-cli-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "preamble": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]preamble-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]preamble-skip"], + "env_var": "PANTS_PREAMBLE_SKIP", + "fromfile": false, + "help": "If true, don't use preamble when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-skip", "--no-preamble-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "template_by_globs", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS", + "fromfile": true, + "help": "Which preamble template to use based on the path globs (relative to the build root).\n\nExample:\n\n {\n '*.rs': '// Copyright (c) $year\\n// Line 2\\n'\n '*.py:!__init__.py': '# Copyright (c) $year\\n# Line 2\\n',\n }\n\nIt might be helpful to load this config from a JSON or YAML file. To do that, set `[preamble].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--preamble-template-by-globs"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--template-by-globs"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's `string.Template` substitutions): - $year: The current year (only used when actually writing the year to the file).", + "is_goal": false, + "provider": "pants.backend.tools.preamble", + "scope": "preamble" + }, + "protobuf-java-grpc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-version="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protobuf-java-grpc-lockfile="], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protobuf-java-grpc-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.java", + "scope": "protobuf-java-grpc" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-version="], + "env_var": "PANTS_PROTOC_VERSION", + "fromfile": false, + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--protoc-url-template="], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-tailor"], + "env_var": "PANTS_PROTOC_TAILOR", + "fromfile": false, + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--protoc-tailor", "--no-protoc-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]protoc-dependency-inference"], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--publish-output="], + "env_var": "PANTS_PUBLISH_OUTPUT", + "fromfile": false, + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--publish-output"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--py-constraints-output-file="], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--py-constraints-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]py-constraints-summary"], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "fromfile": false, + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependents`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependents` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependents).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--summary", "--no-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pydocstyle": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-install-from-resolve="], + "env_var": "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pydocstyle` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-console-script=", + "config_key": "console_script", + "default": "pydocstyle", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-console-script="], + "env_var": "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-entry-point="], + "env_var": "PANTS_PYDOCSTYLE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pydocstyle-config="], + "env_var": "PANTS_PYDOCSTYLE_CONFIG", + "fromfile": false, + "help": "Path to a Pydocstyle config file (http://www.pydocstyle.org/en/stable/usage.html#configuration-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-config-discovery"], + "env_var": "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`setup.cfg`, `tox.ini`, `.pydocstyle`, `.pydocstyle.ini`, `.pydocstylerc`, `.pydocstylerc.ini`, and `pyproject.toml`) searching for the configuration file in this particular order.\n\nPlease note that even though `pydocstyle` keeps looking for a configuration file up the directory tree until one is found, Pants will only search for the config files in the repository root (from where you would normally run the `` command).\n\nUse `[pydocstyle].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config-discovery", + "--no-pydocstyle-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pydocstyle-skip"], + "env_var": "PANTS_PYDOCSTYLE_SKIP", + "fromfile": false, + "help": "If true, don't use Pydocstyle when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-skip", "--no-pydocstyle-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pydocstyle, e.g. `--pydocstyle-args='--select=D101,D102'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pydocstyle-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pydocstyle", + "scope": "pydocstyle" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-install-from-resolve="], + "env_var": "PANTS_PYLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pylint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-console-script="], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-entry-point="], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-config="], + "env_var": "PANTS_PYLINT_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-config-discovery"], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add `'build-support/pylint'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.18/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside pylint itself, as described in https://www.pantsbuild.org/v2.18/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-source-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--source-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pylint-skip"], + "env_var": "PANTS_PYLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Pylint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-skip", "--no-pylint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pylint-args=\"[, , ...]\""], + "env_var": "PANTS_PYLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pylint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pylint", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-install-from-resolve="], + "env_var": "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyoxidizer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.8,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.8,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-console-script="], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyoxidizer-entry-point="], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyoxidizer-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-install-from-resolve="], + "env_var": "PANTS_PYTEST_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytest` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYTEST_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-console-script="], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-entry-point="], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-junit-family="], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "fromfile": false, + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-junit-family"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--junit-family"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-execution-slot-var="], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "fromfile": false, + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-execution-slot-var"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--execution-slot-var"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytest-config="], + "env_var": "PANTS_PYTEST_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-config-discovery"], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-xdist-enabled"], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "fromfile": false, + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--xdist-enabled", "--no-xdist-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytest-skip"], + "env_var": "PANTS_PYTEST_SKIP", + "fromfile": false, + "help": "If true, don't use Pytest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytest-skip", "--no-pytest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. `'CPython>=2.7,<3'` (A CPython interpreter with version >=2.7 AND version <3) or `'PyPy'` (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "fromfile": false, + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.18/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. `'2.7'` or `'3.10'`. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-interpreter-versions-universe"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-versions-universe"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-resolves"], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "fromfile": false, + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "fromfile": false, + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.18/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-default-resolve="], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-default-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--default-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": [ + "20.3.4-patched", + "22.2.2", + "22.3", + "22.3.1", + "23.0", + "23.0.1", + "23.1", + "23.1.1", + "23.1.2", + "latest" + ], + "comma_separated_choices": "20.3.4-patched, 22.2.2, 22.3, 22.3.1, 23.0, 23.0.1, 23.1, 23.1.1, 23.1.2, latest", + "comma_separated_display_args": "--python-pip-version=", + "config_key": "pip_version", + "default": "23.1.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-pip-version="], + "env_var": "PANTS_PYTHON_PIP_VERSION", + "fromfile": false, + "help": "Use this version of Pip for resolving requirements and generating lockfiles.\n\nN.B.: The `latest` value selects the latest of the listed choices which is not necessarily the latest Pip version released on PyPI.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-pip-version"], + "target_field_name": null, + "typ": "PipVersion", + "unscoped_cmd_line_args": ["--pip-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "23.1.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python].interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use `['==3.9.*']` via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to `['==3.7.*']`, then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "fromfile": false, + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-constraints-file"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-constraints-file"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve, you can also use the value `:all:` to disable all binary packages: `{'data-science': [':all:']}`.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-no-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-no-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve you can use the value `:all:` to disable all source packages: `{'data-science': [':all:']}`.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolves-to-only-binary"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--resolves-to-only-binary"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": ["error", "ignore", "warn"], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "fromfile": false, + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-invalid-lockfile-behavior"], + "target_field_name": null, + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": ["--invalid-lockfile-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-resolves-generate-lockfiles"], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "fromfile": false, + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-run-against-entire-lockfile"], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "fromfile": false, + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile\n changes, rather than just those that depend on the changed requirement.\n2) Requirements unneeded by a test/run/repl will be present on the sys.path, which\n might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-resolver-manylinux="], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "fromfile": false, + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g. `'manylinux2010'`, or else the string `'no'` to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-resolver-manylinux"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--resolver-manylinux"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-source-targets"], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-ignore-empty-init-files"], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "fromfile": false, + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-requirements-targets"], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "fromfile": false, + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-pex-binary-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-py-typed-targets", + "config_key": "tailor_py_typed_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-tailor-py-typed-targets"], + "env_var": "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS", + "fromfile": false, + "help": "If true, add `resource` targets for marker files named `py.typed` with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-py-typed-targets", + "--no-python-tailor-py-typed-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-py-typed-targets", + "--no-tailor-py-typed-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-macos-big-sur-compatibility"], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "fromfile": false, + "help": "If set, and if running on macOS Big Sur, use `macosx_10_16` as the platform when building wheels. Otherwise, the default of `macosx_11_0` will be used. This may be required for `pip` to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-lockfile-targets", + "config_key": "enable_lockfile_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-enable-lockfile-targets"], + "env_var": "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS", + "fromfile": false, + "help": "Create targets for all Python lockfiles defined in `[python].resolves`.\n\nThe lockfile targets will then be used as dependencies to the `python_requirement` targets that use them, invalidating source targets per resolve when the lockfile changes.\n\nIf another targets address is in conflict with the created lockfile target, it will shadow the lockfile target and it will not be available as a dependency for any `python_requirement` targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-lockfile-targets", + "--no-python-enable-lockfile-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-lockfile-targets", + "--no-enable-lockfile-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-default-run-goal-use-sandbox"], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "fromfile": false, + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-repl-history", + "config_key": "repl_history", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-repl-history"], + "env_var": "PANTS_PYTHON_REPL_HISTORY", + "fromfile": false, + "help": "Whether to use the standard Python command history file when running a repl.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repl-history", + "--no-python-repl-history" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--repl-history", "--no-repl-history"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-requirement-constraints="], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "fromfile": false, + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-requirement-constraints"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--requirement-constraints"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--[no-]python-resolve-all-constraints"], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "fromfile": false, + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "internal_python_build_standalone_info", + "default": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO", + "fromfile": false, + "help": "A map from platform to the information needed to download Python Build Standalone.\n\nPython Build Standalone is used to run Python-implemented Pants tools/scripts in docker environments (so that Python doesn't need to be installed).\n\nThe version of Python provided should match the default value's version, which is the highest Python Major/Minor version compatible with the Pants package's interpreter constraints. Additionally, the downloaded file should be extractable by `tar` using `-xvf` (most likely a `.tar.gz` file).\n\nThe schema is `: (, , )` for each possible platform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-internal-python-build-standalone-info" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--internal-python-build-standalone-info"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": ["", ""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Python interpreters.\n\nWhich interpreters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in `BUILD_ROOT/.tool-versions`\n* ``, all Python versions under `$(pyenv root)/versions`\n* ``, the Pyenv interpreter with the version in `BUILD_ROOT/.python-version`\n* ``, paths in the `PEX_PYTHON_PATH` variable in `/etc/pexrc` or `~/.pexrc`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-search-path"], + "target_field_name": "python_bootstrap_search_path", + "typ": "list", + "unscoped_cmd_line_args": ["--search-path"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["", ""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": ["python", "python3"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "fromfile": false, + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-bootstrap-names"], + "target_field_name": "python_bootstrap_names", + "typ": "list", + "unscoped_cmd_line_args": ["--names"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["python", "python3"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-dump-source-analysis": { + "advanced": [], + "basic": [ + { + "choices": ["raw_dependency_inference", "dependency_inference"], + "comma_separated_choices": "raw_dependency_inference, dependency_inference", + "comma_separated_display_args": "--python-dump-source-analysis-analysis-flavor=", + "config_key": "analysis_flavor", + "default": "dependency_inference", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-dump-source-analysis-analysis-flavor=" + ], + "env_var": "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR", + "fromfile": false, + "help": "The type of information that should be returned.\n\n* `dependency_inference`: The results of dependency inference, for every detected import in every file.\n\n* `raw_dependency_inference`: The raw intermediate results of the dependency inference process,\nat every stage they're available. Potentially useful for debugging the dependency inference process.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-dump-source-analysis-analysis-flavor" + ], + "target_field_name": null, + "typ": "AnalysisFlavor", + "unscoped_cmd_line_args": ["--analysis-flavor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dependency_inference" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Dump source analysis for python_source targets.", + "is_goal": true, + "provider": "pants.backend.experimental.python", + "scope": "python-dump-source-analysis" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-imports"], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-string-imports"], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings or pytest plugins listed in the `pytest_plugins` variable in a test module or a conftest file.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--string-imports", "--no-string-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-string-imports-min-dots="], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "fromfile": false, + "help": "If `--string-imports` is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-string-imports-min-dots"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--string-imports-min-dots"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-assets"], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "fromfile": false, + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--assets", "--no-assets"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-assets-min-slashes="], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "fromfile": false, + "help": "If `--assets` is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-assets-min-slashes"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--assets-min-slashes"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": ["always", "content_only", "never"], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--python-infer-init-files="], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "fromfile": false, + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-init-files"], + "target_field_name": null, + "typ": "InitFilesInference", + "unscoped_cmd_line_args": ["--init-files"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-conftests"], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "fromfile": false, + "help": "Infer a test target's dependencies on any `conftest.py` files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--conftests", "--no-conftests"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-entry-points"], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "fromfile": false, + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_aws_lambda_function`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--entry-points", "--no-entry-points"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["error", "warning", "ignore"], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "fromfile": false, + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "target_field_name": null, + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": ["--unowned-dependency-behavior"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + }, + { + "choices": ["none", "by_source_root"], + "comma_separated_choices": "none, by_source_root", + "comma_separated_display_args": "--python-infer-ambiguity-resolution=", + "config_key": "ambiguity_resolution", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ambiguity-resolution=" + ], + "env_var": "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION", + "fromfile": false, + "help": "When multiple sources provide the same symbol, how to choose the provider to use.\n\n`none`: Do not attempt to resolve this ambiguity. No dependency will be inferred, and warnings will be logged.\n\n`by_source_root`: Choose the provider with the closest common ancestor to the consumer's source root. If the provider is under the same source root then this will be the source root itself. This is useful when multiple projects in different source roots provide the same symbols (because of repeated first-party module paths or overlapping requirements.txt) and you want to resolve the ambiguity locally in each project.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ambiguity-resolution"], + "target_field_name": null, + "typ": "AmbiguityResolution", + "unscoped_cmd_line_args": ["--ambiguity-resolution"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-ignored-unowned-imports=\"['', '', ...]\"", + "config_key": "ignored_unowned_imports", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ignored-unowned-imports=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS", + "fromfile": false, + "help": "Unowned imports that should be ignored.\n\nIf there are any unowned import statements and adding the `# pants: no-infer-dep` to the lines of the import is impractical, you can instead provide a list of imports that Pants should ignore. You can declare a specific import or a path to a package if you would like any of the package imports to be ignored.\n\nFor example, you could ignore all the following imports of the code\n\n import src.generated.app\n from src.generated.app import load\n from src.generated.app import start\n from src.generated.client import connect\n\nby setting `ignored-unowned-imports=[\"src.generated.app\", \"src.generated.client.connect\"]`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-infer-ignored-unowned-imports"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignored-unowned-imports"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-use-rust-parser", + "config_key": "use_rust_parser", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-infer-use-rust-parser"], + "env_var": "PANTS_PYTHON_INFER_USE_RUST_PARSER", + "fromfile": false, + "help": "Use the new Rust-based, multithreaded, in-process dependency parser.\n\nPants 2.17 introduced a new paradigm to dependency parsing for Python by leveraging a Rust-based parser that's called in the same process as Pants itself, instead of farming out to one-python-process-per-file.\n\nAs a result of the switch, cold-cache performance improved by a factor of about 12x, while hot-cache had no difference. Additionally, Pants can now infer dependencies from Python scripts with syntax errors.\n\nAfter leaving this defaulted to disabled for a release cycle, Pants 2.18 started defaulting to enabling this.\n\nIf you think the new behaviour is causing problems, it is recommended that you run `scie-pants-linux-x86_64 peek :: > before.json` and then `scie-pants-linux-x86_64 --python-infer-use-rust-parser=False peek :: > after.json` and compare the two results.\n\nIf you think there is a bug and need to disable it, please file an issue: https://github.com/pantsbuild/pants/issues/new/choose.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-use-rust-parser", + "--no-python-infer-use-rust-parser" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-rust-parser", + "--no-use-rust-parser" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "fromfile": false, + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `CPPFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-cpp-flags"], + "target_field_name": "python_native_code_cpp_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--cpp-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "fromfile": false, + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `LDFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-native-code-ld-flags"], + "target_field_name": "python_native_code_ld_flags", + "typ": "list", + "unscoped_cmd_line_args": ["--ld-flags"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-protobuf-mypy-plugin"], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "fromfile": false, + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate `.pyi` type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--mypy-plugin", "--no-mypy-plugin"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.18/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": ["https://pypi.org/simple/"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "fromfile": false, + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-indexes"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--indexes"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["https://pypi.org/simple/"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "fromfile": false, + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what `WHEELS_DIR` points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.18/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.18/docs/options#pantsrc-file.\n\nNote: Only takes effect if using Pex lockfiles, i.e. using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-path-mappings"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--path-mappings"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-find-links=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "fromfile": false, + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-repos-find-links"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--find-links"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": ["--python-repos-repos=\"['', '', ...]\""], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "fromfile": false, + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": ["--python-repos-repos"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--repos"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]python-thrift-infer-runtime-dependency"], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "fromfile": false, + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--python-thrift-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pytype": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-install-from-resolve="], + "env_var": "PANTS_PYTYPE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytype` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-requirements=\"['', '', ...]\""], + "env_var": "PANTS_PYTYPE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<3.10"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTYPE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<3.10"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-console-script=", + "config_key": "console_script", + "default": "pytype", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-console-script="], + "env_var": "PANTS_PYTYPE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytype" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-entry-point="], + "env_var": "PANTS_PYTYPE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytype-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pytype-skip"], + "env_var": "PANTS_PYTYPE_SKIP", + "fromfile": false, + "help": "If true, don't use Pytype when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-skip", "--no-pytype-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-args=\"[, , ...]\""], + "env_var": "PANTS_PYTYPE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytype, e.g. `--pytype-args='--version'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pytype-config="], + "env_var": "PANTS_PYTYPE_CONFIG", + "fromfile": false, + "help": "Path to an toml config file understood by Pytype (https://github.com/google/pytype#config-file).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pytype-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pytype utility for typechecking Python code (https://github.com/google/pytype).", + "is_goal": false, + "provider": "pants.backend.experimental.python.typecheck.pytype", + "scope": "pytype" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-install-from-resolve="], + "env_var": "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyupgrade` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-console-script="], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--pyupgrade-entry-point="], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]pyupgrade-skip"], + "env_var": "PANTS_PYUPGRADE_SKIP", + "fromfile": false, + "help": "If true, don't use pyupgrade when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-skip", "--no-pyupgrade-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--pyupgrade-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]regex-lint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]regex-lint-skip"], + "env_var": "PANTS_REGEX_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use regex-lint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-skip", "--no-regex-lint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "fromfile": true, + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-config"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": ["none", "summary", "nonmatching", "names", "all"], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--regex-lint-detail-level="], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "fromfile": false, + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--regex-lint-detail-level"], + "target_field_name": null, + "typ": "DetailLevel", + "unscoped_cmd_line_args": ["--detail-level"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--repl-shell="], + "env_var": "PANTS_REPL_SHELL", + "fromfile": false, + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--repl-shell"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shell"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]repl-restartable"], + "env_var": "PANTS_REPL_RESTARTABLE", + "fromfile": false, + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--restartable", "--no-restartable"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-output-file="], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-output-file"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--output-file"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--roots-sep="], + "env_var": "PANTS_ROOTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--roots-sep"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--sep"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "ruff": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-install-from-resolve="], + "env_var": "PANTS_RUFF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ruff` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-requirements=\"['', '', ...]\""], + "env_var": "PANTS_RUFF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-console-script=", + "config_key": "console_script", + "default": "ruff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-console-script="], + "env_var": "PANTS_RUFF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-entry-point="], + "env_var": "PANTS_RUFF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-config="], + "env_var": "PANTS_RUFF_CONFIG", + "fromfile": false, + "help": "Path to the `pyproject.toml` or `ruff.toml` file to use for configuration (https://github.com/charliermarsh/ruff#configuration).\n\nSetting this option will disable `[ruff].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-config-discovery"], + "env_var": "PANTS_RUFF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`pyproject.toml`, and `ruff.toml`).\n\nUse `[ruff].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config-discovery", + "--no-ruff-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]ruff-skip"], + "env_var": "PANTS_RUFF_SKIP", + "fromfile": false, + "help": "If true, don't use Ruff when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-skip", "--no-ruff-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--ruff-args=\"[, , ...]\""], + "env_var": "PANTS_RUFF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Ruff, e.g. `--ruff-args='--exclude=foo --ignore=E501'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--ruff-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Ruff Python formatter (https://github.com/charliermarsh/ruff).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.ruff", + "scope": "ruff" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--run-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]run-debug-adapter"], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-debug-adapter", + "--no-run-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-tailor-source-targets"], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scala-version-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--version-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-imports"], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--imports", "--no-imports"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-consumed-types"], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--consumed-types", "--no-consumed-types"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scala-infer-package-objects"], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "fromfile": false, + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-objects", + "--no-package-objects" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-force-add-siblings-as-dependencies" + ], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "fromfile": false, + "help": "If true, add a dependency on all `scala_source` targets generated by the same `scala_sources` target generator. If false, the dependencies will only be added if `[scala-infer].imports` is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalac-args=\"[, , ...]\""], + "env_var": "PANTS_SCALAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalac-plugins-for-resolve"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--plugins-for-resolve"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-version="], + "env_var": "PANTS_SCALAFMT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalameta:scalafmt-cli_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalameta:scalafmt-cli_2.13:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalafmt-lockfile="], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalafmt-skip"], + "env_var": "PANTS_SCALAFMT_SKIP", + "fromfile": false, + "help": "If true, don't use scalafmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalafmt-skip", "--no-scalafmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-version="], + "env_var": "PANTS_SCALAPB_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["com.thesamet.scalapb:scalapbc_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["com.thesamet.scalapb:scalapbc_2.13:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-lockfile="], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-options=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalapb-jvm-plugins=\"['', '', ...]\""], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "fromfile": false, + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set `--scalapb-runtime-dependencies` appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalapb-jvm-plugins"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-plugins"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-version="], + "env_var": "PANTS_SCALATEST_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": ["org.scalatest:scalatest_2.13:{version}"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-artifacts=\"['', '', ...]\""], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-artifacts"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--artifacts"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["org.scalatest:scalatest_2.13:{version}"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scalatest-lockfile="], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.18.0rc5/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-lockfile"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--lockfile"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-jvm-options"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--jvm-options"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalatest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]scalatest-skip"], + "env_var": "PANTS_SCALATEST_SKIP", + "fromfile": false, + "help": "If true, don't use Scalatest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scalatest-skip", "--no-scalatest-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-version="], + "env_var": "PANTS_SCC_VERSION", + "fromfile": false, + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-known-versions=\"['', '', ...]\""], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--scc-url-template="], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--scc-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]setup-py-generation-generate-setup-default"], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "fromfile": false, + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (`setup.py`, `setup.cfg` and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["exact", "compatible", "any"], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "fromfile": false, + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "target_field_name": null, + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": ["--first-party-dependency-version-scheme"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "setuptools-scm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-install-from-resolve="], + "env_var": "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools-scm` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-console-script="], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--setuptools-scm-entry-point="], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--setuptools-scm-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "setuptools-scm" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-dependency-inference"], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-setup-tailor"], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "fromfile": false, + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [""], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-setup-executable-search-paths"], + "target_field_name": "shell_setup_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": ["--executable-search-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [""] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shell-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shell-test-skip"], + "env_var": "PANTS_SHELL_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Test with shell scripts when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shell-test-skip", "--no-shell-test-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants' Shell test support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-test" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-version="], + "env_var": "PANTS_SHELLCHECK_VERSION", + "fromfile": false, + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shellcheck-url-template="], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-config-discovery"], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shellcheck-skip"], + "env_var": "PANTS_SHELLCHECK_SKIP", + "fromfile": false, + "help": "If true, don't use Shellcheck when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-skip", "--no-shellcheck-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shellcheck-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-version="], + "env_var": "PANTS_SHFMT_VERSION", + "fromfile": false, + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-url-template="], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-config-discovery"], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shfmt-skip"], + "env_var": "PANTS_SHFMT_SKIP", + "fromfile": false, + "help": "If true, don't use shfmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-skip", "--no-shfmt-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shfmt-args=\"[, , ...]\""], + "env_var": "PANTS_SHFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shfmt-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "shunit2": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-version=", + "config_key": "version", + "default": "b9102bb763cc603b3115ed30a5648bf950548097", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-version="], + "env_var": "PANTS_SHUNIT2_VERSION", + "fromfile": false, + "help": "Use this version of shunit2.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "b9102bb763cc603b3115ed30a5648bf950548097" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHUNIT2_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-known-versions"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--known-versions"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-template=", + "config_key": "url_template", + "default": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--shunit2-url-template="], + "env_var": "PANTS_SHUNIT2_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.18/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-template"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--url-template"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHUNIT2_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-url-platform-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--url-platform-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": ["error", "warning"], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shunit2-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-use-unsupported-version=" + ], + "env_var": "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shunit2 is not supported.\n\nSupported shunit2 versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-use-unsupported-version"], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": ["--use-unsupported-version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shunit2-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]shunit2-skip"], + "env_var": "PANTS_SHUNIT2_SKIP", + "fromfile": false, + "help": "If true, don't use shunit2 when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--shunit2-skip", "--no-shunit2-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shunit2" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "fromfile": false, + "help": "A list of source root suffixes.\n\nA directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc.\n\nPrepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`.\n\nA `*` wildcard will match a single path segment, E.g., `src/*` will match `/src/python` and `/src/rust`.\n\nUse `/` to signify that the buildroot itself is a source root.\n\nSee https://www.pantsbuild.org/v2.18/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-root-patterns"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--root-patterns"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "fromfile": false, + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--source-marker-filenames"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--marker-filenames"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "spectral": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-version=", + "config_key": "version", + "default": "@stoplight/spectral-cli@6.5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-version="], + "env_var": "PANTS_SPECTRAL_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-version"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--version"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "@stoplight/spectral-cli@6.5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--spectral-install-from-resolve="], + "env_var": "PANTS_SPECTRAL_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]spectral-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]spectral-skip"], + "env_var": "PANTS_SPECTRAL_SKIP", + "fromfile": false, + "help": "If true, don't use Spectral when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-skip", "--no-spectral-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SPECTRAL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Spectral, e.g. `--spectral-args='--fail-severity=warn'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--spectral-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "spectral" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-log"], + "env_var": "PANTS_STATS_LOG", + "fromfile": false, + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--stats-log", "--no-stats-log"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--log", "--no-log"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]stats-memory-summary"], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "fromfile": false, + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--memory-summary", "--no-memory-summary"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.18/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--subprocess-environment-env-vars"], + "target_field_name": "subprocess_environment_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-name="], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "fromfile": false, + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-header="], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "fromfile": false, + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-header"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-header"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-build-file-indent="], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "fromfile": false, + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-build-file-indent"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--build-file-indent"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "fromfile": false, + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.18/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-alias-mapping"], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": ["--alias-mapping"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--tailor-ignore-paths=\"['', '', ...]\""], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "fromfile": false, + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-paths"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-paths"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "fromfile": false, + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-ignore-adding-targets"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--ignore-adding-targets"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]tailor-check"], + "env_var": "PANTS_TAILOR_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--tailor-check", "--no-tailor-check"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-fmt-skip"], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform fmt` when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-install-from-resolve=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `terraform-hcl2-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--terraform-hcl2-parser-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]terraform-validate-skip"], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform validate` when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-report"], + "env_var": "PANTS_TEST_REPORT", + "fromfile": false, + "help": "Write test reports to `--report-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report", "--no-test-report"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--report", "--no-report"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-report-dir="], + "env_var": "PANTS_TEST_REPORT_DIR", + "fromfile": false, + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-report-dir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--report-dir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-default="], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "fromfile": false, + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-default"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-default"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-timeout-maximum="], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "fromfile": false, + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeout-maximum"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--timeout-maximum"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-batch-size="], + "env_var": "PANTS_TEST_BATCH_SIZE", + "fromfile": false, + "help": "The target maximum number of files to be included in each run of batch-enabled test runners.\n\nSome test runners can execute tests from multiple files in a single run. Test implementations will return all tests that _can_ run together as a single group - and then this may be further divided into smaller batches, based on this option. This is done:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch\n 3. to allow for parallelism in test runners which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" max batch size (rather than an exact value).\n\nNOTE: This parameter has no effect on test runners/plugins that do not implement support for batched testing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-batch-size"], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": ["--batch-size"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug"], + "env_var": "PANTS_TEST_DEBUG", + "fromfile": false, + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-debug", "--no-test-debug"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug", "--no-debug"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-debug-adapter"], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies `--debug`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--debug-adapter", "--no-debug-adapter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-force"], + "env_var": "PANTS_TEST_FORCE", + "fromfile": false, + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-force", "--no-test-force"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--force", "--no-force"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": ["all", "failed", "none"], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-output="], + "env_var": "PANTS_TEST_OUTPUT", + "fromfile": false, + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-output"], + "target_field_name": null, + "typ": "ShowOutput", + "unscoped_cmd_line_args": ["--output"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-use-coverage"], + "env_var": "PANTS_TEST_USE_COVERAGE", + "fromfile": false, + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--use-coverage", "--no-use-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-open-coverage"], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "fromfile": false, + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--open-coverage", "--no-open-coverage"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-shard="], + "env_var": "PANTS_TEST_SHARD", + "fromfile": false, + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with `--shard=0/3`, `--shard=1/3`, `--shard=2/3`.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-shard"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--shard"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]test-timeouts"], + "env_var": "PANTS_TEST_TIMEOUTS", + "fromfile": false, + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-timeouts", "--no-test-timeouts"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--timeouts", "--no-timeouts"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--test-extra-env-vars=\"['', '', ...]\""], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--test-extra-env-vars"], + "target_field_name": "test_extra_env_vars", + "typ": "list", + "unscoped_cmd_line_args": ["--extra-env-vars"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-tailor"], + "env_var": "PANTS_THRIFT_TAILOR", + "fromfile": false, + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--thrift-tailor", "--no-thrift-tailor"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--tailor", "--no-tailor"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]thrift-dependency-inference"], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-install-from-resolve="], + "env_var": "PANTS_TWINE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `twine` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-requirements=\"['', '', ...]\""], + "env_var": "PANTS_TWINE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-console-script="], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-entry-point="], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-config="], + "env_var": "PANTS_TWINE_CONFIG", + "fromfile": false, + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-config-discovery"], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-ca-certs-path="], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use any certificates.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.18/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-ca-certs-path"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--ca-certs-path"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]twine-skip"], + "env_var": "PANTS_TWINE_SKIP", + "fromfile": false, + "help": "If true, don't use Twine when running `scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-skip", "--no-twine-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--twine-args=\"[, , ...]\""], + "env_var": "PANTS_TWINE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--twine-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-check"], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--check", "--no-check"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fmt"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "fromfile": false, + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--fmt", "--no-fmt"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": ["yapf", "black"], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--update-build-files-formatter="], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "fromfile": false, + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--update-build-files-formatter"], + "target_field_name": null, + "typ": "Formatter", + "unscoped_cmd_line_args": ["--formatter"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]update-build-files-fix-safe-deprecations"], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "fromfile": false, + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.18/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "workunit-logger": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]workunit-logger-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]workunit-logger-enabled"], + "env_var": "PANTS_WORKUNIT_LOGGER_ENABLED", + "fromfile": false, + "help": "Whether to enable workunit logging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--workunit-logger-enabled", + "--no-workunit-logger-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--enabled", "--no-enabled"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--workunit-logger-logdir=", + "config_key": "logdir", + "default": ".pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--workunit-logger-logdir="], + "env_var": "PANTS_WORKUNIT_LOGGER_LOGDIR", + "fromfile": false, + "help": "Where to write the log to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--workunit-logger-logdir"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--logdir"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".pants.d" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Workunit Logger subsystem. Useful for debugging pants itself.", + "is_goal": false, + "provider": "pants.backend.experimental.tools.workunit_logger", + "scope": "workunit-logger" + }, + "yamllint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-install-from-resolve="], + "env_var": "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yamllint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-console-script=", + "config_key": "console_script", + "default": "yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-console-script="], + "env_var": "PANTS_YAMLLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-entry-point="], + "env_var": "PANTS_YAMLLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-config-file-name=", + "config_key": "config_file_name", + "default": ".yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-config-file-name="], + "env_var": "PANTS_YAMLLINT_CONFIG_FILE_NAME", + "fromfile": false, + "help": "Name of a config file understood by yamllint (https://yamllint.readthedocs.io/en/stable/configuration.html). The plugin will search the ancestors of each directory in which YAML files are found for a config file of this name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-config-file-name"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--config-file-name"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".yamllint" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-include=\"['', '', ...]\"", + "config_key": "include", + "default": ["**/*.yml", "**/*.yaml"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-include=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_INCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to lint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-include"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--include"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["**/*.yml", "**/*.yaml"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-exclude=\"['', '', ...]\"", + "config_key": "exclude", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yamllint-exclude=\"['', '', ...]\""], + "env_var": "PANTS_YAMLLINT_EXCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to exclude from linting.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-exclude"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--exclude"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAMLLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Yamllint, e.g. `--yamllint-args='-d relaxed'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yamllint-skip"], + "env_var": "PANTS_YAMLLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Yamllint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yamllint-skip", "--no-yamllint-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for YAML files (https://yamllint.readthedocs.io)", + "is_goal": false, + "provider": "pants.backend.experimental.tools.yamllint", + "scope": "yamllint" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-install-from-resolve="], + "env_var": "PANTS_YAPF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.18/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yapf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-install-from-resolve"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--install-from-resolve"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-requirements=\"['', '', ...]\""], + "env_var": "PANTS_YAPF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-requirements"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--requirements"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": ["CPython>=3.7,<4"], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-interpreter-constraints"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--interpreter-constraints"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": ["CPython>=3.7,<4"] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-console-script="], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-console-script"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--console-script"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-entry-point="], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-entry-point"], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": ["--entry-point"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-config="], + "env_var": "PANTS_YAPF_CONFIG", + "fromfile": false, + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-config"], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": ["--config"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-config-discovery"], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--[no-]yapf-skip"], + "env_var": "PANTS_YAPF_SKIP", + "fromfile": false, + "help": "If true, don't use yapf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-skip", "--no-yapf-skip"], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": ["--skip", "--no-skip"], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": ["--yapf-args=\"[, , ...]\""], + "env_var": "PANTS_YAPF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": ["--yapf-args"], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": ["--args"], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.19.x/reference/help-all.json b/versioned_docs/version-2.19.x/reference/help-all.json new file mode 100644 index 000000000..46faeafba --- /dev/null +++ b/versioned_docs/version-2.19.x/reference/help-all.json @@ -0,0 +1,113736 @@ +{ + "env_var_to_help_info": { + "PANTS_ADD_TRAILING_COMMA_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to add-trailing-comma, e.g. `--add-trailing-comma-args='--py36-plus'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-console-script=", + "config_key": "console_script", + "default": "add-trailing-comma", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-console-script=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma" + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-entry-point=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-install-from-resolve=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `add-trailing-comma` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ADD_TRAILING_COMMA_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]add-trailing-comma-skip" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_SKIP", + "fromfile": false, + "help": "If true, don't use add-trailing-comma when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-skip", + "--no-add-trailing-comma-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_ANONYMOUS_TELEMETRY_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "fromfile": false, + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.19/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_ANONYMOUS_TELEMETRY_REPO_ID": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "fromfile": false, + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.19/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_APACHE_THRIFT_EXPECTED_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-expected-version=" + ], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "fromfile": false, + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-expected-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + }, + "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-thrift-search-paths" + ], + "target_field_name": "apache_thrift_thrift_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--thrift-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_AUTOFLAKE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [ + "--remove-all-unused-imports" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "--remove-all-unused-imports" + ] + } + ] + } + }, + "PANTS_AUTOFLAKE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + "PANTS_AUTOFLAKE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-install-from-resolve=" + ], + "env_var": "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `autoflake` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_AUTOFLAKE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_AUTOFLAKE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "fromfile": false, + "help": "If true, don't use Autoflake when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BACKEND_PACKAGES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "fromfile": false, + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.workunit_logger", + "pants.backend.experimental.tools.yamllint", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ] + } + ] + } + }, + "PANTS_BANDIT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BANDIT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "fromfile": false, + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BANDIT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + "PANTS_BANDIT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BANDIT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-install-from-resolve=" + ], + "env_var": "PANTS_BANDIT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `bandit` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BANDIT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BANDIT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "fromfile": false, + "help": "If true, don't use Bandit when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BIN_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "fromfile": false, + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + "PANTS_BLACK_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BLACK_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "fromfile": false, + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BLACK_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_BLACK_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + "PANTS_BLACK_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BLACK_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-install-from-resolve=" + ], + "env_var": "PANTS_BLACK_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `black` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BLACK_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_BLACK_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BLACK_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "fromfile": false, + "help": "If true, don't use Black when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUF_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-config=" + ], + "env_var": "PANTS_BUF_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Buf (https://docs.buf.build/configuration/overview).\n\nSetting this option will disable `[buf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_BUF_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-config-discovery" + ], + "env_var": "PANTS_BUF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant root config files during runs (`buf.yaml`). If the json format is preferred, the path to the `buf.json` file should be provided in the config option.\n\nUse `[buf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config-discovery", + "--no-buf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_BUF_FORMAT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--format-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUF_FORMAT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-format-skip" + ], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-skip", + "--no-buf-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--format-skip", + "--no-format-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUF_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + "PANTS_BUF_LINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--lint-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUF_LINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-lint-skip" + ], + "env_var": "PANTS_BUF_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-skip", + "--no-buf-lint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-skip", + "--no-lint-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUF_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + "PANTS_BUF_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-template=" + ], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + "PANTS_BUF_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_BUF_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-version=" + ], + "env_var": "PANTS_BUF_VERSION", + "fromfile": false, + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + "PANTS_BUILDIFIER_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUILDIFIER_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + "PANTS_BUILDIFIER_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buildifier-skip" + ], + "env_var": "PANTS_BUILDIFIER_SKIP", + "fromfile": false, + "help": "If true, don't use Buildifier when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-skip", + "--no-buildifier-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + "PANTS_BUILDIFIER_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-template=" + ], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_BUILDIFIER_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-version=" + ], + "env_var": "PANTS_BUILDIFIER_VERSION", + "fromfile": false, + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]build-deprecations-fixer-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]build-deprecations-fixer-skip" + ], + "env_var": "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP", + "fromfile": false, + "help": "If true, don't use BUILD Deprecations Fixer when running `scie-pants-linux-x86_64 fix`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-deprecations-fixer-skip", + "--no-build-deprecations-fixer-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_BUILD_FILE_PRELUDE_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "fromfile": false, + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.19/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUILD_IGNORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "fromfile": false, + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_BUILD_PATTERNS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "fromfile": false, + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + "PANTS_CACHE_CONTENT_BEHAVIOR": { + "choices": [ + "fetch", + "validate", + "defer" + ], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cache-content-behavior=" + ], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "fromfile": false, + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "target_field_name": null, + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + "PANTS_CA_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.19/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_CHANGED_DEPENDEES": { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": "Use --dependents instead", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + "PANTS_CHANGED_DEPENDENTS": { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependents=", + "config_key": "dependents", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependents=" + ], + "env_var": "PANTS_CHANGED_DEPENDENTS", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependents" + ], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": [ + "--dependents" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + "PANTS_CHANGED_DIFFSPEC": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "fromfile": false, + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_CHANGED_SINCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "fromfile": false, + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_CHECK_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--check-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_CHECK_ONLY", + "fromfile": false, + "help": "Only run these checkers and skip all others.\n\nThe checker names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkers.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--check-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_CLI_ALIAS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "fromfile": false, + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependents=transitive\"\n\nThis would allow you to run `scie-pants-linux-x86_64 green all-changed`, which is shorthand for `scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependents=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_COLORS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "fromfile": false, + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_CONCURRENT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "fromfile": false, + "help": "Enable concurrent runs of Pants. With this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. As a result, enabling this option will increase the per-run startup cost, but will not block subsequent invocations.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_CONFIG_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.TG08L3iBWC/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "fromfile": false, + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.TG08L3iBWC/pants.toml" + ] + } + ] + } + }, + "PANTS_COURSIER_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + "PANTS_COURSIER_REPOS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "fromfile": false, + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + }, + "PANTS_COURSIER_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + "PANTS_COURSIER_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + "PANTS_COURSIER_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_COURSIER_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "fromfile": false, + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.6" + } + ] + } + }, + "PANTS_COVERAGE_PY_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "fromfile": false, + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_COVERAGE_PY_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + "PANTS_COVERAGE_PY_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_FAIL_UNDER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "fromfile": false, + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting `fail_under` in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set `[report] precision` properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_FILTER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "fromfile": false, + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']`.\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_COVERAGE_PY_GLOBAL_REPORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "fromfile": false, + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-install-from-resolve=" + ], + "env_var": "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `coverage-py` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_COVERAGE_PY_OUTPUT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + "PANTS_COVERAGE_PY_REPORT": { + "choices": [ + "console", + "xml", + "html", + "raw", + "json", + "lcov" + ], + "comma_separated_choices": "console, xml, html, raw, json, lcov", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "fromfile": false, + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + "PANTS_COVERAGE_PY_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DEBUGPY_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DEBUGPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DEBUGPY_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-console-script=" + ], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEBUGPY_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-entry-point=" + ], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + }, + "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-install-from-resolve=" + ], + "env_var": "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `debugpy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_DEBUGPY_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DEBUG_ADAPTER_HOST": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-host=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "fromfile": false, + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-host" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--host" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + "PANTS_DEBUG_ADAPTER_PORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-port=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "fromfile": false, + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + }, + "PANTS_DEPENDEES_CLOSED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDEES_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEPENDEES_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_DEPENDEES_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENCIES_CLOSED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENCIES_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEPENDENCIES_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_DEPENDENCIES_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENTS_CLOSED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependents-closed" + ], + "env_var": "PANTS_DEPENDENTS_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-closed", + "--no-dependents-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DEPENDENTS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependents-output-file=" + ], + "env_var": "PANTS_DEPENDENTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DEPENDENTS_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependents-sep=" + ], + "env_var": "PANTS_DEPENDENTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_DEPENDENTS_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependents-transitive" + ], + "env_var": "PANTS_DEPENDENTS_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-transitive", + "--no-dependents-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DISTDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.TG08L3iBWC/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "fromfile": false, + "help": "Write end products, such as the results of `pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/dist" + } + ] + } + }, + "PANTS_DOCFORMATTER_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCFORMATTER_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + "PANTS_DOCFORMATTER_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-install-from-resolve=" + ], + "env_var": "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `docformatter` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_DOCFORMATTER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCFORMATTER_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "fromfile": false, + "help": "If true, don't use docformatter when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-install-from-resolve=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `dockerfile-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_DOCKERFILE_PARSER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_BUILD_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "fromfile": false, + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_BUILD_HOSTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "build_hosts", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_BUILD_HOSTS", + "fromfile": false, + "help": "Hosts entries to be added to the `/etc/hosts` file in all built images.\n\nExample:\n\n [docker]\n build_hosts = {\"docker\": \"10.180.0.1\", \"docker2\": \"10.180.0.2\"}\n\nUse the `extra_build_hosts` field on a `docker_image` target for additional image specific host entries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-hosts" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--build-hosts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_DOCKER_BUILD_NO_CACHE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-no-cache", + "config_key": "build_no_cache", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-no-cache" + ], + "env_var": "PANTS_DOCKER_BUILD_NO_CACHE", + "fromfile": false, + "help": "Do not use the Docker cache when building images.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-no-cache", + "--no-docker-build-no-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-no-cache", + "--no-build-no-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOCKER_BUILD_TARGET_STAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "fromfile": false, + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_DOCKER_BUILD_VERBOSE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-verbose" + ], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "fromfile": false, + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-verbose", + "--no-build-verbose" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-context-root=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "fromfile": false, + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-context-root" + ], + "target_field_name": null, + "typ": "workspace_path", + "unscoped_cmd_line_args": [ + "--default-context-root" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_DOCKER_DEFAULT_REPOSITORY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "fromfile": false, + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + "PANTS_DOCKER_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "target_field_name": "docker_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find the Docker client and any tools required. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-executable-search-paths" + ], + "target_field_name": "docker_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_DOCKER_EXECUTION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-execution", + "config_key": "docker_execution", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-execution" + ], + "env_var": "PANTS_DOCKER_EXECUTION", + "fromfile": false, + "help": "If true, `docker_environment` targets can be used to run builds inside a Docker container.\n\nIf false, anytime a `docker_environment` target is used, Pants will instead fallback to whatever the target's `fallback_environment` field is set to.\n\nThis can be useful, for example, if you want to always use Docker locally, but disable it in CI, or vice versa.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DOCKER_REGISTRIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "fromfile": true, + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n \"use_local_alias\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.\n\nIf `use_local_alias` is true, a built image is additionally tagged locally using the registry alias as the value for repository (i.e. the additional image tag is not pushed) and will be used for any `pants run` requests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_DOCKER_RUN_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "fromfile": false, + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-tailor" + ], + "env_var": "PANTS_DOCKER_TAILOR", + "fromfile": false, + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tailor", + "--no-docker-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DOCKER_TOOLS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-tools=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_TOOLS", + "fromfile": false, + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tools" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tools" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOCKER_USE_BUILDX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-use-buildx", + "config_key": "use_buildx", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-use-buildx" + ], + "env_var": "PANTS_DOCKER_USE_BUILDX", + "fromfile": false, + "help": "Use [buildx](https://github.com/docker/buildx#buildx) (and BuildKit) for builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-use-buildx", + "--no-docker-use-buildx" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-buildx", + "--no-use-buildx" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to terraform, e.g. `--download-terraform-args='-auto-approve'`.\n\nAdditional arguments to pass to the Terraform command line.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_EXTRA_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Terraform processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-extra-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ] + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]download-terraform-tailor" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "fromfile": false, + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_DOWNLOAD_TERRAFORM_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.4.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "fromfile": false, + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.4.6" + } + ] + } + }, + "PANTS_DYNAMIC_UI": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "fromfile": false, + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_DYNAMIC_UI_RENDERER": { + "choices": [ + "indicatif-spinner", + "experimental-prodash" + ], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dynamic-ui-renderer=" + ], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "fromfile": false, + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "target_field_name": null, + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + "PANTS_ENGINE_VISUALIZE_TO": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "fromfile": false, + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "target_field_name": null, + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ENVIRONMENTS_PREVIEW_NAMES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "names", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_ENVIRONMENTS_PREVIEW_NAMES", + "fromfile": false, + "help": "A mapping of logical names to addresses to environment targets. For example:\n\n [environments-preview.names]\n linux_local = \"//:linux_env\"\n macos_local = \"//:macos_env\"\n centos6 = \"//:centos6_docker_env\"\n linux_ci = \"build-support:linux_ci_env\"\n macos_ci = \"build-support:macos_ci_env\"\n\nTo use an environment for a given target, specify the name in the `environment` field on that target. Pants will consume the environment target at the address mapped from that name.\n\nPants will ignore any environment targets that are not given a name via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--environments-preview-names" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "fromfile": false, + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-groups-config-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--groups-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": [ + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-runner-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--runner-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "PATH" + ] + } + ] + } + }, + "PANTS_EXPERIMENTAL_BSP_SERVER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]experimental-bsp-server" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "fromfile": false, + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--server", + "--no-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-address=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "fromfile": false, + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + "PANTS_EXPERIMENTAL_EXPLORER_PORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-port=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "fromfile": false, + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + }, + "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-py-editable-in-resolve=\"['', '', ...]\"", + "config_key": "py_editable_in_resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-editable-in-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE", + "fromfile": false, + "help": "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.\n\nIf a resolve name is not in this list, 'python_distribution' targets will not be installed in the virtualenv. This defaults to an empty list for backwards compatibility and to prevent unnecessary work to generate and install the PEP-660 editable wheels.\n\nThis only applies when '[python].enable_resolves' is true and when exporting a 'mutable_virtualenv' ('symlinked_immutable_virtualenv' exports are not \"full\" virtualenvs because they must not be edited, and do not include 'pip').\n\nNOTE: If you are using legacy exports (not using the '--resolve' option), then this option has no effect. Legacy exports will not include any editable installs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-py-editable-in-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--py-editable-in-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_EXPORT_PY_RESOLVE_FORMAT": { + "choices": [ + "mutable_virtualenv", + "symlinked_immutable_virtualenv" + ], + "comma_separated_choices": "mutable_virtualenv, symlinked_immutable_virtualenv", + "comma_separated_display_args": "--export-py-resolve-format=", + "config_key": "py_resolve_format", + "default": "mutable_virtualenv", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-resolve-format=" + ], + "env_var": "PANTS_EXPORT_PY_RESOLVE_FORMAT", + "fromfile": false, + "help": "Export Python resolves using this format. Options are:\n - `mutable_virtualenv`: Export a standalone mutable virtualenv that you can\n further modify.\n - `symlinked_immutable_virtualenv`: Export a symlink into a cached Python virtualenv.\n This virtualenv will have no pip binary, and will be immutable. Any attempt to\n modify it will corrupt the cache! It may, however, take significantly less time\n to export than a standalone, mutable virtualenv.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-py-resolve-format" + ], + "target_field_name": null, + "typ": "PythonResolveExportFormat", + "unscoped_cmd_line_args": [ + "--py-resolve-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mutable_virtualenv" + } + ] + } + }, + "PANTS_EXPORT_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_RESOLVE", + "fromfile": false, + "help": "Export the specified resolve(s). The export format is backend-specific, e.g., Python resolves are exported as virtualenvs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_EXPORT_SYMLINK_PYTHON_VIRTUALENV": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]export-symlink-python-virtualenv", + "config_key": "symlink_python_virtualenv", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.20.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]export-symlink-python-virtualenv" + ], + "env_var": "PANTS_EXPORT_SYMLINK_PYTHON_VIRTUALENV", + "fromfile": false, + "help": "Export a symlink into a cached Python virtualenv. This virtualenv will have no pip binary, and will be immutable. Any attempt to modify it will corrupt the cache! It may, however, take significantly less time to export than a standalone, mutable virtualenv will.", + "removal_hint": "Set the `[export].py_resolve_format` option to 'symlinked_immutable_virtualenv'", + "removal_version": "2.20.0.dev0", + "scoped_cmd_line_args": [ + "--export-symlink-python-virtualenv", + "--no-export-symlink-python-virtualenv" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--symlink-python-virtualenv", + "--no-symlink-python-virtualenv" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILEDEPS_ABSOLUTE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "fromfile": false, + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILEDEPS_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "fromfile": false, + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILEDEPS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FILEDEPS_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_FILEDEPS_TRANSITIVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "fromfile": false, + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FILTER_ADDRESS_REGEX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "fromfile": false, + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FILTER_GRANULARITY": { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "fromfile": false, + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "target_field_name": null, + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + "PANTS_FILTER_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FILTER_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_FILTER_TAG_REGEX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "fromfile": false, + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FILTER_TARGET_TYPE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "fromfile": false, + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FIX_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fix-batch-size=" + ], + "env_var": "PANTS_FIX_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each fixer batch.\n\nFixer processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in fixer processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_FIX_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fix-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FIX_ONLY", + "fromfile": false, + "help": "Only run these fixers and skip all others.\n\nThe fixer names are outputted at the final summary of running this goal, e.g. `autoflake` and `pyupgrade`. You can also run `fix --only=fake` to get a list of all activated fixers.\n\nYou can repeat this option, e.g. `fix --only=autoflake --only=pyupgrade` or `fix --only=['autoflake', 'pyupgrade']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FIX_SKIP_FORMATTERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fix-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fix-skip-formatters" + ], + "env_var": "PANTS_FIX_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters.\n\nFYI: when running `scie-pants-linux-x86_64 fix fmt ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `fix` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-skip-formatters", + "--no-fix-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FLAKE8_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FLAKE8_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "fromfile": false, + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FLAKE8_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_FLAKE8_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + "PANTS_FLAKE8_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FLAKE8_EXTRA_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "fromfile": false, + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FLAKE8_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-install-from-resolve=" + ], + "env_var": "PANTS_FLAKE8_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `flake8` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_FLAKE8_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FLAKE8_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "fromfile": false, + "help": "If true, don't use Flake8 when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_FLAKE8_SOURCE_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add `'build-support/flake8'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.19/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside flake8 itself, as described in https://www.pantsbuild.org/v2.19/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_FMT_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-batch-size=" + ], + "env_var": "PANTS_FMT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_FMT_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FMT_ONLY", + "fromfile": false, + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "fromfile": false, + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_DIFF": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff", + "config_key": "diff", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]generate-lockfiles-diff" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF", + "fromfile": false, + "help": "Print a summary of changed distributions after generating the lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff", + "--no-generate-lockfiles-diff" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff", + "--no-diff" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff-include-unchanged", + "config_key": "diff_include_unchanged", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]generate-lockfiles-diff-include-unchanged" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED", + "fromfile": false, + "help": "Include unchanged distributions in the diff summary output. Implies `diff=true`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff-include-unchanged", + "--no-generate-lockfiles-diff-include-unchanged" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff-include-unchanged", + "--no-diff-include-unchanged" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GENERATE_LOCKFILES_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "fromfile": false, + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from backend-specific configuration such as `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GOFMT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--gofmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--gofmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_GOFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to gofmt, e.g. `--gofmt-args='-s -e'`.\n\nOnly the following style related options are supported: `-e`, `-r`, `-s`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GOFMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "fromfile": false, + "help": "If true, don't use gofmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GOLANG_ASDF_BIN_RELPATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-bin-relpath=" + ], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "fromfile": false, + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-bin-relpath" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-bin-relpath" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + }, + "PANTS_GOLANG_ASDF_TOOL_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-tool-name=" + ], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "fromfile": false, + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-tool-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-tool-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + "PANTS_GOLANG_CGO_CXX_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-cxx-flags=\"['', '', ...]\"", + "config_key": "cgo_cxx_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-cxx-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_CXX_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C++ code when Cgo is enabled. Equivalent to setting the CGO_CXXFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-cxx-flags" + ], + "target_field_name": "golang_cgo_cxx_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-cxx-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + "PANTS_GOLANG_CGO_C_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-c-flags=\"['', '', ...]\"", + "config_key": "cgo_c_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-c-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_C_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C code when Cgo is enabled. Equivalent to setting the CGO_CFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-c-flags" + ], + "target_field_name": "golang_cgo_c_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-c-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + "PANTS_GOLANG_CGO_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-cgo-enabled", + "config_key": "cgo_enabled", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-cgo-enabled" + ], + "env_var": "PANTS_GOLANG_CGO_ENABLED", + "fromfile": false, + "help": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-enabled", + "--no-golang-cgo-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cgo-enabled", + "--no-cgo-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-binary-name=", + "config_key": "cgo_fortran_binary_name", + "default": "gfortran", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile fortran code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-fortran-binary-name" + ], + "target_field_name": "golang_cgo_fortran_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-fortran-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gfortran" + } + ] + } + }, + "PANTS_GOLANG_CGO_FORTRAN_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-flags=\"['', '', ...]\"", + "config_key": "cgo_fortran_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling Fortran code when Cgo is enabled. Equivalent to setting the CGO_FFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-fortran-flags" + ], + "target_field_name": "golang_cgo_fortran_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-fortran-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + "PANTS_GOLANG_CGO_GCC_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gcc-binary-name=", + "config_key": "cgo_gcc_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-gcc-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_GCC_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-gcc-binary-name" + ], + "target_field_name": "golang_cgo_gcc_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-gcc-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + "PANTS_GOLANG_CGO_GXX_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gxx-binary-name=", + "config_key": "cgo_gxx_binary_name", + "default": "g++", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-gxx-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_GXX_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C++ code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-gxx-binary-name" + ], + "target_field_name": "golang_cgo_gxx_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-gxx-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "g++" + } + ] + } + }, + "PANTS_GOLANG_CGO_LINKER_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-linker-flags=\"['', '', ...]\"", + "config_key": "cgo_linker_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-linker-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_LINKER_FLAGS", + "fromfile": false, + "help": "Compiler options used when linking native code when Cgo is enabled. Equivalent to setting the CGO_LDFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-linker-flags" + ], + "target_field_name": "golang_cgo_linker_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-linker-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-tool-search-paths=\"['', '', ...]\"", + "config_key": "cgo_tool_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-tool-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for tools needed by CGo (e.g., gcc, g++).\n\nSpecify absolute paths to directories with tools needed by CGo , e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-tool-search-paths" + ], + "target_field_name": "golang_cgo_tool_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-tool-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-external-linker-binary-name=", + "config_key": "external_linker_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-external-linker-binary-name=" + ], + "env_var": "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use as the \"external linker\" when invoking `go tool link`. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-external-linker-binary-name" + ], + "target_field_name": "golang_external_linker_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--external-linker-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + "PANTS_GOLANG_GO_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable\n* ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binary with the version in `BUILD_ROOT/.tool-versions`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "target_field_name": "golang_go_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-minimum-expected-version=" + ], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "fromfile": false, + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-minimum-expected-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--minimum-expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + }, + "PANTS_GOLANG_SUBPROCESS_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "target_field_name": "golang_subprocess_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + }, + "PANTS_GOLANG_TAILOR_BINARY_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-binary-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-go-mod-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "fromfile": false, + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-package-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "fromfile": false, + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_AOSP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "fromfile": false, + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Google Java Format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GOOGLE_JAVA_FORMAT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + "PANTS_GO_GENERATE_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-generate-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-generate-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_GENERATE_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking generator programs. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-generate-env-vars" + ], + "target_field_name": "go_generate_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + }, + "PANTS_GO_TEST_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GO_TEST_BLOCK_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-block-profile", + "config_key": "block_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-block-profile" + ], + "env_var": "PANTS_GO_TEST_BLOCK_PROFILE", + "fromfile": false, + "help": "Capture a goroutine blocking profile from the execution of the test runner. The profile will be written to the file `block.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-block-profile", + "--no-go-test-block-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--block-profile", + "--no-block-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_COVERAGE_HTML": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-coverage-html", + "config_key": "coverage_html", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-coverage-html" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_HTML", + "fromfile": false, + "help": "If true, then convert coverage reports to HTML format and write a `coverage.html` file next to the raw coverage data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-html", + "--no-go-test-coverage-html" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--coverage-html", + "--no-coverage-html" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{target_spec}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-output-dir=" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Go coverage reports to. Must be relative to the build root.\n\nReplacements:\n\n - `{distdir}` is replaced with the Pants `distdir`.\n - `{target_spec}` is replaced with the address of the applicable `go_package` target with `/`\n characters replaced with dots (`.`).\n - `{import_path}` is replaced with the applicable package's import path. Subdirectories will be made\n for any path components separated by `/` characters.\n - `{import_path_escaped}` is replaced with the applicable package's import path but with\n slashes converted to underscores. This is deprecated and only exists to support behavior from\n earlier versions.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-output-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--coverage-output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{target_spec}" + } + ] + } + }, + "PANTS_GO_TEST_COVERAGE_PACKAGES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-packages=\"['', '', ...]\"", + "config_key": "coverage_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_PACKAGES", + "fromfile": false, + "help": "A list of \"import path patterns\" for determining which import paths will be instrumented for code coverage.\n\nFrom `go help packages`:\n\nAn import path is a pattern if it includes one or more \"...\" wildcards, each of which can match any string, including the empty string and strings containing slashes. Such a pattern expands to all package directories found in the GOPATH trees with names matching the patterns.\n\nTo make common patterns more convenient, there are two special cases. First, /... at the end of the pattern can match an empty string, so that net/... matches both net and packages in its subdirectories, like net/http. Second, any slash-separated pattern element containing a wildcard never participates in a match of the \"vendor\" element in the path of a vendored package, so that ./... does not match packages in subdirectories of ./vendor or ./mycode/vendor, but ./vendor/... and ./mycode/vendor/... do. Note, however, that a directory named vendor that itself contains code is not a vendored package: cmd/vendor would be a command named vendor, and the pattern cmd/... matches it. See golang.org/s/go15vendor for more about vendoring.\n\nThis option is similar to the `go test -coverpkg` option, but without support currently for reserved import path patterns like `std` and `all`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-packages" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--coverage-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_GO_TEST_COVER_MODE": { + "choices": [ + "set", + "count", + "atomic" + ], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-cover-mode=" + ], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "fromfile": false, + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via `--test-use-coverage`. Valid values are `set`, `count`, and `atomic`:\n\n * `set`: bool: does this statement run?\n * `count`: int: how many times does this statement run?\n * `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cover-mode" + ], + "target_field_name": null, + "typ": "GoCoverMode", + "unscoped_cmd_line_args": [ + "--cover-mode" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + }, + "PANTS_GO_TEST_CPU_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-cpu-profile", + "config_key": "cpu_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-cpu-profile" + ], + "env_var": "PANTS_GO_TEST_CPU_PROFILE", + "fromfile": false, + "help": "Capture a CPU profile from the execution of the test runner. The profile will be written to the file `cpu.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cpu-profile", + "--no-go-test-cpu-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cpu-profile", + "--no-cpu-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_FORCE_ASAN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-asan", + "config_key": "force_asan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-force-asan" + ], + "env_var": "PANTS_GO_TEST_FORCE_ASAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"address sanitizer\" when running tests regardless of the test-by-test `asan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-asan", + "--no-go-test-force-asan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-asan", + "--no-force-asan" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_FORCE_MSAN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-msan", + "config_key": "force_msan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-force-msan" + ], + "env_var": "PANTS_GO_TEST_FORCE_MSAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"memory sanitizer\" when running tests regardless of the test-by-test `msan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-msan", + "--no-go-test-force-msan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-msan", + "--no-force-msan" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_FORCE_RACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-race", + "config_key": "force_race", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-force-race" + ], + "env_var": "PANTS_GO_TEST_FORCE_RACE", + "fromfile": false, + "help": "If true, then always enable the Go data race detector when running tests regardless of the test-by-test `test_race` field on the relevant `go_package` target.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-race", + "--no-go-test-force-race" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-race", + "--no-force-race" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_MEM_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mem-profile", + "config_key": "mem_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-mem-profile" + ], + "env_var": "PANTS_GO_TEST_MEM_PROFILE", + "fromfile": false, + "help": "Capture an allocation profile from the execution of the test runner after tests have passed. The profile will be written to the file `mem.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mem-profile", + "--no-go-test-mem-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mem-profile", + "--no-mem-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_MUTEX_PROFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mutex-profile", + "config_key": "mutex_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-mutex-profile" + ], + "env_var": "PANTS_GO_TEST_MUTEX_PROFILE", + "fromfile": false, + "help": "Capture a mutex contention profile from the execution of the test runner when all tests are complete. The profile will be written to the file `mutex.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mutex-profile", + "--no-go-test-mutex-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mutex-profile", + "--no-mutex-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_OUTPUT_TEST_BINARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-output-test-binary", + "config_key": "output_test_binary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-output-test-binary" + ], + "env_var": "PANTS_GO_TEST_OUTPUT_TEST_BINARY", + "fromfile": false, + "help": "Write the test binary to the test extra output directory.\n\nThis is similar to the `go test -c` option, but will still run the underlying test.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-output-test-binary", + "--no-go-test-output-test-binary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--output-test-binary", + "--no-output-test-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-skip" + ], + "env_var": "PANTS_GO_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Go test binary when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-skip", + "--no-go-test-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GO_TEST_TRACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-trace", + "config_key": "trace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-trace" + ], + "env_var": "PANTS_GO_TEST_TRACE", + "fromfile": false, + "help": "Capture an execution trace from the execution of the test runner. The trace will be written to the file `trace.out` in the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-trace", + "--no-go-test-trace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--trace", + "--no-trace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_GRPC_PYTHON_PLUGIN_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "fromfile": false, + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + "PANTS_HADOLINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HADOLINT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "fromfile": false, + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HADOLINT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_HADOLINT_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + "PANTS_HADOLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Hadolint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HADOLINT_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + "PANTS_HADOLINT_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_HADOLINT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "fromfile": false, + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + "PANTS_HELM_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as follows:\n\n * --atomic\n * --cleanup-on-fail\n * --create-namespace\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n\nBefore attempting to use passthrough arguments, check the reference of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-default-registry-repository=" + ], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "fromfile": false, + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-default-registry-repository" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-registry-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HELM_EXTRA_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-extra-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-install-from-resolve=" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-k8s-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + "PANTS_HELM_K8S_PARSER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + "PANTS_HELM_LINT_STRICT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-lint-strict" + ], + "env_var": "PANTS_HELM_LINT_STRICT", + "fromfile": false, + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-strict", + "--no-lint-strict" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-install-from-resolve=" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-post-renderer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + "PANTS_HELM_POST_RENDERER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_HELM_REGISTRIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "fromfile": true, + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-registries" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_HELM_TAILOR_CHARTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-charts", + "config_key": "tailor_charts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-tailor-charts" + ], + "env_var": "PANTS_HELM_TAILOR_CHARTS", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-charts", + "--no-helm-tailor-charts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-charts", + "--no-tailor-charts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_HELM_TAILOR_UNITTESTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-unittests", + "config_key": "tailor_unittests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-tailor-unittests" + ], + "env_var": "PANTS_HELM_TAILOR_UNITTESTS", + "fromfile": false, + "help": "If true, add `helm_unittest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-unittests", + "--no-helm-tailor-unittests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-unittests", + "--no-tailor-unittests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_HELM_UNITTEST_COLOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-unittest-color" + ], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "fromfile": false, + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--color", + "--no-color" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_UNITTEST_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + "PANTS_HELM_UNITTEST_OUTPUT_TYPE": { + "choices": [ + "XUnit", + "NUnit", + "JUnit" + ], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "fromfile": false, + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-output-type" + ], + "target_field_name": null, + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": [ + "--output-type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + }, + "PANTS_HELM_UNITTEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-unittest-skip" + ], + "env_var": "PANTS_HELM_UNITTEST_SKIP", + "fromfile": false, + "help": "If true, don't use helmunittestsubsystem when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-skip", + "--no-helm-unittest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + }, + "PANTS_HELM_UNITTEST_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-template=" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_HELM_UNITTEST_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.3.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "fromfile": false, + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.3.3" + } + ] + } + }, + "PANTS_HELM_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + "PANTS_HELM_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-template=" + ], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + "PANTS_HELM_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_HELM_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.12.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-version=" + ], + "env_var": "PANTS_HELM_VERSION", + "fromfile": false, + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.12.3" + } + ] + } + }, + "PANTS_IGNORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/", + "__pycache__", + "!.semgrep/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "fromfile": false, + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc).\n\nPatterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored.\n\n`pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/", + "__pycache__", + "!.semgrep/" + ] + } + ] + } + }, + "PANTS_IGNORE_USE_GITIGNORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "fromfile": false, + "help": "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.\n\nPatterns from `[GLOBAL].pants_ignore` take precedence over these files' rules. For example, you can use `!my_pattern` in `pants_ignore` to have Pants operate on files that are gitignored.\n\nWarning: this does not yet support reading nested gitignore files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_IGNORE_WARNINGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "fromfile": false, + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_IPYTHON_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + "PANTS_IPYTHON_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_IPYTHON_IGNORE_CWD": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "fromfile": false, + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_IPYTHON_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-install-from-resolve=" + ], + "env_var": "PANTS_IPYTHON_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ipython` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_IPYTHON_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "fromfile": false, + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_ISORT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + "PANTS_ISORT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ISORT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-install-from-resolve=" + ], + "env_var": "PANTS_ISORT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `isort` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ISORT_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_ISORT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_ISORT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "fromfile": false, + "help": "If true, don't use isort when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JARJAR_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.eed3si9n.jarjar:jarjar-assembly:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JARJAR_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[jarjar].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.eed3si9n.jarjar:jarjar-assembly:{version}" + ] + } + ] + } + }, + "PANTS_JARJAR_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JARJAR_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `jarjar` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JARJAR_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-lockfile=" + ], + "env_var": "PANTS_JARJAR_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/jvm/shading/jarjar.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=jarjar`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY": { + "choices": [ + "fatal", + "skip", + "omit", + "move" + ], + "comma_separated_choices": "fatal, skip, omit, move", + "comma_separated_display_args": "--jarjar-misplaced-class-strategy=", + "config_key": "misplaced_class_strategy", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-misplaced-class-strategy=" + ], + "env_var": "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY", + "fromfile": false, + "help": "The strategy to use when processing class files that are in the wrong package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-misplaced-class-strategy" + ], + "target_field_name": null, + "typ": "MisplacedClassStrategy", + "unscoped_cmd_line_args": [ + "--misplaced-class-strategy" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_JARJAR_SKIP_MANIFEST": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jarjar-skip-manifest", + "config_key": "skip_manifest", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]jarjar-skip-manifest" + ], + "env_var": "PANTS_JARJAR_SKIP_MANIFEST", + "fromfile": false, + "help": "Skip the processing of the JAR manifest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-skip-manifest", + "--no-jarjar-skip-manifest" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-manifest", + "--no-skip-manifest" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JARJAR_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-version=", + "config_key": "version", + "default": "1.8.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-version=" + ], + "env_var": "PANTS_JARJAR_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[jarjar].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.8.1" + } + ] + } + }, + "PANTS_JAVAC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JAVAC_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]javac-tailor-source-targets" + ], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_JAVA_INFER_CONSUMED_TYPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_JAVA_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "fromfile": false, + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_JUNIT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JUNIT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + "PANTS_JUNIT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JUNIT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_JUNIT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]junit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]junit-skip" + ], + "env_var": "PANTS_JUNIT_SKIP", + "fromfile": false, + "help": "If true, don't use JUnit when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-skip", + "--no-junit-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JUNIT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + "PANTS_JVM_DEBUG_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "fromfile": false, + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like `['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JVM_DEFAULT_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + "PANTS_JVM_GLOBAL_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-global-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-global-options" + ], + "target_field_name": "jvm_global_options", + "typ": "list", + "unscoped_cmd_line_args": [ + "--global-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_JVM_JDK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "fromfile": false, + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-nailgun-remote-cache-speculation-delay=" + ], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "fromfile": false, + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-nailgun-remote-cache-speculation-delay" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--nailgun-remote-cache-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + }, + "PANTS_JVM_REPRODUCIBLE_JARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]jvm-reproducible-jars" + ], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "fromfile": false, + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_JVM_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "fromfile": false, + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + "PANTS_JVM_TOOL_JDK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-tool-jdk=" + ], + "env_var": "PANTS_JVM_TOOL_JDK", + "fromfile": false, + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-tool-jdk" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--tool-jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + "PANTS_KEEP_SANDBOXES": { + "choices": [ + "always", + "on_failure", + "never" + ], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--keep-sandboxes=" + ], + "env_var": "PANTS_KEEP_SANDBOXES", + "fromfile": false, + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "target_field_name": null, + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + "PANTS_KOTLINC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-plugins-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_KOTLIN_INFER_CONSUMED_TYPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-consumed-types" + ], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_KOTLIN_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-imports" + ], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-tailor-source-targets" + ], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_KOTLIN_VERSION_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-version-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_KTLINT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.pinterest:ktlint:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.pinterest:ktlint:{version}" + ] + } + ] + } + }, + "PANTS_KTLINT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_KTLINT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-lockfile=" + ], + "env_var": "PANTS_KTLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_KTLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ktlint-skip" + ], + "env_var": "PANTS_KTLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Ktlint when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-skip", + "--no-ktlint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_KTLINT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-version=" + ], + "env_var": "PANTS_KTLINT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + "PANTS_LEVEL": { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "fromfile": false, + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + "PANTS_LINT_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-batch-size=" + ], + "env_var": "PANTS_LINT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_LINT_ONLY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_LINT_ONLY", + "fromfile": false, + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_LINT_SKIP_FIXERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-fixers", + "config_key": "skip_fixers", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-fixers" + ], + "env_var": "PANTS_LINT_SKIP_FIXERS", + "fromfile": false, + "help": "If true, skip running all fixers in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fix lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fix` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-fixers", + "--no-lint-skip-fixers" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-fixers", + "--no-skip-fixers" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LINT_SKIP_FORMATTERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-formatters" + ], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fmt lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LIST_DOCUMENTED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "fromfile": false, + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LIST_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_LIST_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_LOCAL_CACHE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "fromfile": false, + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_LOCAL_EXECUTION_ROOT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "fromfile": false, + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + "PANTS_LOCAL_STORE_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "fromfile": false, + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + "PANTS_LOCAL_STORE_SHARD_COUNT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "fromfile": false, + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + "PANTS_LOGDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "fromfile": false, + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--logdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_LOG_LEVELS_BY_TARGET": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "fromfile": false, + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with `--level`. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_LOG_SHOW_RUST_3RDPARTY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "fromfile": false, + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LOOP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "fromfile": false, + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_LOOP_MAX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "fromfile": false, + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + "PANTS_MYPY_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_MYPY_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_MYPY_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + "PANTS_MYPY_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-install-from-resolve=" + ], + "env_var": "PANTS_MYPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-install-from-resolve=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy-protobuf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_MYPY_PROTOBUF_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_MYPY_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_MYPY_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "fromfile": false, + "help": "If true, don't use MyPy when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_MYPY_SOURCE_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].install_from_resolve` to a resolve whose lockfile includes those plugins, and set the `plugins` option in `mypy.ini`. See https://www.pantsbuild.org/v2.19/docs/python-check-goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_NAMED_CACHES_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "fromfile": false, + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + "PANTS_NODEJS_COREPACK_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-corepack-env-vars=\"[, , ...]\"", + "config_key": "corepack_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-corepack-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_COREPACK_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `corepack` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nReview https://github.com/nodejs/corepack#environment-variables for available variables.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-corepack-env-vars" + ], + "target_field_name": "nodejs_corepack_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--corepack-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find any tools required to run nodejs processes. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-executable-search-paths" + ], + "target_field_name": "nodejs_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_NODEJS_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]nodejs-infer-imports" + ], + "env_var": "PANTS_NODEJS_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `// pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-imports", + "--no-nodejs-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_NODEJS_INFER_PACKAGE_JSON_ENTRY_POINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-package-json-entry-points", + "config_key": "package_json_entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]nodejs-infer-package-json-entry-points" + ], + "env_var": "PANTS_NODEJS_INFER_PACKAGE_JSON_ENTRY_POINTS", + "fromfile": false, + "help": "Infer a `package_json`'s dependencies by parsing entry point statements from the package.json file.\n\nTo ignore a false positive, you can put `!{bad_address}` in the `dependencies` field of the `package_json` target.\n\nSee https://nodejs.org/api/packages.html#package-entry-points and\n https://docs.npmjs.com/cli/v9/configuring-npm/package-json#browser.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-package-json-entry-points", + "--no-nodejs-infer-package-json-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-json-entry-points", + "--no-package-json-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_NODEJS_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_NODEJS_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ] + } + ] + } + }, + "PANTS_NODEJS_PACKAGE_MANAGER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-manager=", + "config_key": "package_manager", + "default": "npm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-package-manager=" + ], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGER", + "fromfile": false, + "help": "Default Node.js package manager to use.\n\nYou can either rely on this default together with the [nodejs].package_managers option, or specify the `package.json#packageManager` tool and version in the package.json of your project.\n\nSpecifying conflicting package manager versions within a multi-package workspace is an error.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-package-manager" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--package-manager" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "npm" + } + ] + } + }, + "PANTS_NODEJS_PACKAGE_MANAGERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "package_managers", + "default": { + "npm": "8.5.5" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGERS", + "fromfile": false, + "help": "A mapping of package manager versions to semver releases.\n\nMany organizations only need a single version of a package manager, which is a good default and often the simplest thing to do.\n\nThe version download is managed by Corepack. This mapping corresponds to the https://github.com/nodejs/corepack#known-good-releases setting, using the `--activate` flag.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-package-managers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--package-managers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "npm": "8.5.5" + } + } + ] + } + }, + "PANTS_NODEJS_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_RESOLVES", + "fromfile": false, + "help": "A mapping of names to lockfile paths used in your project.\n\nSpecifying a resolve name is optional. If unspecified, the default resolve name is calculated by taking the path from the source root to the directory containing the lockfile and replacing '/' with '.' in that path.\n\nExample: An npm lockfile located at `src/js/package/package-lock.json' will result in a resolve named `js.package`, assuming src/ is a source root.\n\nRun `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_NODEJS_SEARCH_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Node.js distributions.\n\nThis option is only used if a templated url download specified via [nodejs].known_versions does not contain a version matching the configured [nodejs].version range.\n\nYou can specify absolute paths to binaries and/or to directories containing binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Node.js versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binaries with the version in `BUILD_ROOT/.tool-versions`\n* ``, all NodeJS versions under $NVM_DIR/versions/node\n* ``, the nvm installation with the version in BUILD_ROOT/.nvmrc\nNote that the version in the .nvmrc file has to be on the form \"vX.Y.Z\".", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-search-path" + ], + "target_field_name": "nodejs_search_path", + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_NODEJS_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + } + } + ] + } + }, + "PANTS_NODEJS_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-template=", + "config_key": "url_template", + "default": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-template=" + ], + "env_var": "PANTS_NODEJS_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar" + } + ] + } + }, + "PANTS_NODEJS_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-version=", + "config_key": "version", + "default": "v16.15.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-version=" + ], + "env_var": "PANTS_NODEJS_VERSION", + "fromfile": false, + "help": "Use this version of nodejs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v16.15.0" + } + ] + } + }, + "PANTS_OPENAPI_FORMAT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--openapi-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_OPENAPI_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to openapi-format, e.g. `--openapi-format-args='--no-sort'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_OPENAPI_FORMAT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--openapi-format-install-from-resolve=" + ], + "env_var": "PANTS_OPENAPI_FORMAT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_OPENAPI_FORMAT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]openapi-format-skip" + ], + "env_var": "PANTS_OPENAPI_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use openapi-format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-skip", + "--no-openapi-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_OPENAPI_FORMAT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-version=", + "config_key": "version", + "default": "openapi-format@1.13.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--openapi-format-version=" + ], + "env_var": "PANTS_OPENAPI_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "openapi-format@1.13.1" + } + ] + } + }, + "PANTS_OPENAPI_TAILOR_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-tailor-targets", + "config_key": "tailor_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]openapi-tailor-targets" + ], + "env_var": "PANTS_OPENAPI_TAILOR_TARGETS", + "fromfile": false, + "help": "If true, add `openapi_documents` and `openapi_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-tailor-targets", + "--no-openapi-tailor-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-targets", + "--no-tailor-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PANTSD": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "fromfile": false, + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PANTSD_INVALIDATION_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "fromfile": false, + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PANTSD_MAX_MEMORY_USAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "4GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + "PANTS_PANTSD_PAILGUN_PORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "fromfile": false, + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "fromfile": false, + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + "PANTS_PANTSRC": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "fromfile": false, + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PANTSRC_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "fromfile": false, + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ] + } + ] + } + }, + "PANTS_PATHS_FROM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FROM", + "fromfile": false, + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PATHS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PATHS_TO": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "fromfile": false, + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PEEK_EXCLUDE_DEFAULTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "fromfile": false, + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEEK_INCLUDE_DEP_RULES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-include-dep-rules", + "config_key": "include_dep_rules", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-include-dep-rules" + ], + "env_var": "PANTS_PEEK_INCLUDE_DEP_RULES", + "fromfile": false, + "help": "Whether to include `_dependencies_rules`, `_dependents_rules` and `_applicable_dep_rules` that apply to the target and its dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-include-dep-rules", + "--no-peek-include-dep-rules" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--include-dep-rules", + "--no-include-dep-rules" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEEK_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "fromfile": false, + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "fromfile": false, + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEX_CLI_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.148|macos_arm64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|macos_x86_64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|linux_x86_64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|linux_arm64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.148|macos_arm64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|macos_x86_64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|linux_x86_64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|linux_arm64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604" + ] + } + ] + } + }, + "PANTS_PEX_CLI_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + "PANTS_PEX_CLI_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-template=" + ], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.135,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_PEX_CLI_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.148", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-version=" + ], + "env_var": "PANTS_PEX_CLI_VERSION", + "fromfile": false, + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.135,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.148" + } + ] + } + }, + "PANTS_PEX_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "target_field_name": "pex_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_PEX_VENV_USE_SYMLINKS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "fromfile": false, + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PEX_VERBOSITY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "fromfile": false, + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + "PANTS_PHYSICAL_WORKDIR_BASE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "fromfile": false, + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "fromfile": false, + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PLUGINS_FORCE_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "fromfile": false, + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PREAMBLE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]preamble-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]preamble-skip" + ], + "env_var": "PANTS_PREAMBLE_SKIP", + "fromfile": false, + "help": "If true, don't use preamble when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--preamble-skip", + "--no-preamble-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "template_by_globs", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS", + "fromfile": true, + "help": "Which preamble template to use based on the path globs (relative to the build root).\n\nExample:\n\n {\n '*.rs': '// Copyright (c) $year\\n// Line 2\\n'\n '*.py:!__init__.py': '# Copyright (c) $year\\n# Line 2\\n',\n }\n\nIt might be helpful to load this config from a JSON or YAML file. To do that, set `[preamble].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--preamble-template-by-globs" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--template-by-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PRINT_STACKTRACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "fromfile": false, + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PROCESS_CLEANUP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "fromfile": false, + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "fromfile": false, + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "fromfile": false, + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "fromfile": false, + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-per-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-total-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-lockfile=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_PROTOBUF_JAVA_GRPC_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-version=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + "PANTS_PROTOC_DEPENDENCY_INFERENCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROTOC_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "24.4|linux_arm64 |83ac000ff540e242b6a2ff221a3ac88d2d8e55443801b7a28e9697e5f40e8937|2971447", + "24.4|linux_x86_64|5871398dfd6ac954a6adebf41f1ae3a4de915a36a6ab2fd3e8f2c00d45b50dec|3005774", + "24.4|macos_arm64 |d80544480397fe8a05d966fba291cf1233ad0db0ebc24ec72d7bd077d6e7ac59|2088802", + "24.4|macos_x86_64|6c3b6bf4038d733b6d31f1cc4516a656570b5b5aafb966b650f8182afd0b98cf|2121366", + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "24.4|linux_arm64 |83ac000ff540e242b6a2ff221a3ac88d2d8e55443801b7a28e9697e5f40e8937|2971447", + "24.4|linux_x86_64|5871398dfd6ac954a6adebf41f1ae3a4de915a36a6ab2fd3e8f2c00d45b50dec|3005774", + "24.4|macos_arm64 |d80544480397fe8a05d966fba291cf1233ad0db0ebc24ec72d7bd077d6e7ac59|2088802", + "24.4|macos_x86_64|6c3b6bf4038d733b6d31f1cc4516a656570b5b5aafb966b650f8182afd0b98cf|2121366", + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + "PANTS_PROTOC_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-tailor" + ], + "env_var": "PANTS_PROTOC_TAILOR", + "fromfile": false, + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-tailor", + "--no-protoc-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PROTOC_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + "PANTS_PROTOC_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + "PANTS_PROTOC_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_PROTOC_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "fromfile": false, + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + "PANTS_PUBLISH_OUTPUT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "fromfile": false, + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pydocstyle, e.g. `--pydocstyle-args='--select=D101,D102'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYDOCSTYLE_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-config=" + ], + "env_var": "PANTS_PYDOCSTYLE_CONFIG", + "fromfile": false, + "help": "Path to a Pydocstyle config file (http://www.pydocstyle.org/en/stable/usage.html#configuration-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pydocstyle-config-discovery" + ], + "env_var": "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`setup.cfg`, `tox.ini`, `.pydocstyle`, `.pydocstyle.ini`, `.pydocstylerc`, `.pydocstylerc.ini`, and `pyproject.toml`) searching for the configuration file in this particular order.\n\nPlease note that even though `pydocstyle` keeps looking for a configuration file up the directory tree until one is found, Pants will only search for the config files in the repository root (from where you would normally run the `` command).\n\nUse `[pydocstyle].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config-discovery", + "--no-pydocstyle-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-console-script=", + "config_key": "console_script", + "default": "pydocstyle", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-console-script=" + ], + "env_var": "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle" + } + ] + } + }, + "PANTS_PYDOCSTYLE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-entry-point=" + ], + "env_var": "PANTS_PYDOCSTYLE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-install-from-resolve=" + ], + "env_var": "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pydocstyle` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_PYDOCSTYLE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYDOCSTYLE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pydocstyle-skip" + ], + "env_var": "PANTS_PYDOCSTYLE_SKIP", + "fromfile": false, + "help": "If true, don't use Pydocstyle when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-skip", + "--no-pydocstyle-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYLINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYLINT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYLINT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYLINT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + "PANTS_PYLINT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYLINT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-install-from-resolve=" + ], + "env_var": "PANTS_PYLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pylint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYLINT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Pylint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYLINT_SOURCE_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add `'build-support/pylint'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.19/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside pylint itself, as described in https://www.pantsbuild.org/v2.19/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYOXIDIZER_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYOXIDIZER_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-console-script=" + ], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + "PANTS_PYOXIDIZER_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-entry-point=" + ], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-install-from-resolve=" + ], + "env_var": "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyoxidizer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.8,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.8,<4" + ] + } + ] + } + }, + "PANTS_PYOXIDIZER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTEST_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTEST_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-config=" + ], + "env_var": "PANTS_PYTEST_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTEST_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + "PANTS_PYTEST_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_EXECUTION_SLOT_VAR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "fromfile": false, + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-install-from-resolve=" + ], + "env_var": "PANTS_PYTEST_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytest` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTEST_JUNIT_FAMILY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "fromfile": false, + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + "PANTS_PYTEST_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-skip" + ], + "env_var": "PANTS_PYTEST_SKIP", + "fromfile": false, + "help": "If true, don't use Pytest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-skip", + "--no-pytest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTEST_XDIST_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-xdist-enabled" + ], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "fromfile": false, + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--xdist-enabled", + "--no-xdist-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHONPATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "fromfile": false, + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "internal_python_build_standalone_info", + "default": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO", + "fromfile": false, + "help": "A map from platform to the information needed to download Python Build Standalone.\n\nPython Build Standalone is used to run Python-implemented Pants tools/scripts in docker environments (so that Python doesn't need to be installed).\n\nThe version of Python provided should match the default value's version, which is the highest Python Major/Minor version compatible with the Pants package's interpreter constraints. Additionally, the downloaded file should be extractable by `tar` using `-xvf` (most likely a `.tar.gz` file).\n\nThe schema is `: (, , )` for each possible platform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-internal-python-build-standalone-info" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--internal-python-build-standalone-info" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + } + } + ] + } + }, + "PANTS_PYTHON_BOOTSTRAP_NAMES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "fromfile": false, + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "target_field_name": "python_bootstrap_names", + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + }, + "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Python interpreters.\n\nWhich interpreters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in `BUILD_ROOT/.tool-versions`\n* ``, all Python versions under `$(pyenv root)/versions`\n* ``, the Pyenv interpreter with the version in `BUILD_ROOT/.python-version`\n* ``, paths in the `PEX_PYTHON_PATH` variable in `/etc/pexrc` or `~/.pexrc`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "target_field_name": "python_bootstrap_search_path", + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "", + "" + ] + } + ] + } + }, + "PANTS_PYTHON_DEFAULT_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-default-resolve=" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-default-run-goal-use-sandbox" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "fromfile": false, + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR": { + "choices": [ + "raw_dependency_inference", + "dependency_inference" + ], + "comma_separated_choices": "raw_dependency_inference, dependency_inference", + "comma_separated_display_args": "--python-dump-source-analysis-analysis-flavor=", + "config_key": "analysis_flavor", + "default": "dependency_inference", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-dump-source-analysis-analysis-flavor=" + ], + "env_var": "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR", + "fromfile": false, + "help": "The type of information that should be returned.\n\n* `dependency_inference`: The results of dependency inference, for every detected import in every file.\n\n* `raw_dependency_inference`: The raw intermediate results of the dependency inference process,\nat every stage they're available. Potentially useful for debugging the dependency inference process.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-dump-source-analysis-analysis-flavor" + ], + "target_field_name": null, + "typ": "AnalysisFlavor", + "unscoped_cmd_line_args": [ + "--analysis-flavor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dependency_inference" + } + ] + } + }, + "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-lockfile-targets", + "config_key": "enable_lockfile_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-lockfile-targets" + ], + "env_var": "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS", + "fromfile": false, + "help": "Create targets for all Python lockfiles defined in `[python].resolves`.\n\nThe lockfile targets will then be used as dependencies to the `python_requirement` targets that use them, invalidating source targets per resolve when the lockfile changes.\n\nIf another targets address is in conflict with the created lockfile target, it will shadow the lockfile target and it will not be available as a dependency for any `python_requirement` targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-lockfile-targets", + "--no-python-enable-lockfile-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-lockfile-targets", + "--no-enable-lockfile-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_ENABLE_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-resolves" + ], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "fromfile": false, + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION": { + "choices": [ + "none", + "by_source_root" + ], + "comma_separated_choices": "none, by_source_root", + "comma_separated_display_args": "--python-infer-ambiguity-resolution=", + "config_key": "ambiguity_resolution", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ambiguity-resolution=" + ], + "env_var": "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION", + "fromfile": false, + "help": "When multiple sources provide the same symbol, how to choose the provider to use.\n\n`none`: Do not attempt to resolve this ambiguity. No dependency will be inferred, and warnings will be logged.\n\n`by_source_root`: Choose the provider with the closest common ancestor to the consumer's source root. If the provider is under the same source root then this will be the source root itself. This is useful when multiple projects in different source roots provide the same symbols (because of repeated first-party module paths or overlapping requirements.txt) and you want to resolve the ambiguity locally in each project.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-ambiguity-resolution" + ], + "target_field_name": null, + "typ": "AmbiguityResolution", + "unscoped_cmd_line_args": [ + "--ambiguity-resolution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + "PANTS_PYTHON_INFER_ASSETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-assets" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "fromfile": false, + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--assets", + "--no-assets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-assets-min-slashes=" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "fromfile": false, + "help": "If `--assets` is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets-min-slashes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--assets-min-slashes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + "PANTS_PYTHON_INFER_CONFTESTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "fromfile": false, + "help": "Infer a test target's dependencies on any `conftest.py` files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INFER_ENTRY_POINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "fromfile": false, + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_aws_lambda_function`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-ignored-unowned-imports=\"['', '', ...]\"", + "config_key": "ignored_unowned_imports", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ignored-unowned-imports=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS", + "fromfile": false, + "help": "Unowned imports that should be ignored.\n\nIf there are any unowned import statements and adding the `# pants: no-infer-dep` to the lines of the import is impractical, you can instead provide a list of imports that Pants should ignore. You can declare a specific import or a path to a package if you would like any of the package imports to be ignored.\n\nFor example, you could ignore all the following imports of the code\n\n import src.generated.app\n from src.generated.app import load\n from src.generated.app import start\n from src.generated.client import connect\n\nby setting `ignored-unowned-imports=[\"src.generated.app\", \"src.generated.client.connect\"]`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-ignored-unowned-imports" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignored-unowned-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INFER_INIT_FILES": { + "choices": [ + "always", + "content_only", + "never" + ], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-init-files=" + ], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "fromfile": false, + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-init-files" + ], + "target_field_name": null, + "typ": "InitFilesInference", + "unscoped_cmd_line_args": [ + "--init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + "PANTS_PYTHON_INFER_STRING_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings or pytest plugins listed in the `pytest_plugins` variable in a test module or a conftest file.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "fromfile": false, + "help": "If `--string-imports` is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR": { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "fromfile": false, + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "target_field_name": null, + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + }, + "PANTS_PYTHON_INFER_USE_RUST_PARSER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-use-rust-parser", + "config_key": "use_rust_parser", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-use-rust-parser" + ], + "env_var": "PANTS_PYTHON_INFER_USE_RUST_PARSER", + "fromfile": false, + "help": "Use the new Rust-based, multithreaded, in-process dependency parser.\n\nPants 2.17 introduced a new paradigm to dependency parsing for Python by leveraging a Rust-based parser that's called in the same process as Pants itself, instead of farming out to one-python-process-per-file.\n\nAs a result of the switch, cold-cache performance improved by a factor of about 12x, while hot-cache had no difference. Additionally, Pants can now infer dependencies from Python scripts with syntax errors.\n\nAfter leaving this defaulted to disabled for a release cycle, Pants 2.18 started defaulting to enabling this.\n\nIf you think the new behaviour is causing problems, it is recommended that you run `scie-pants-linux-x86_64 peek :: > before.json` and then `scie-pants-linux-x86_64 --python-infer-use-rust-parser=False peek :: > after.json` and compare the two results.\n\nIf you think there is a bug and need to disable it, please file an issue: https://github.com/pantsbuild/pants/issues/new/choose.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-use-rust-parser", + "--no-python-infer-use-rust-parser" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-rust-parser", + "--no-use-rust-parser" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. `'CPython>=2.7,<3'` (A CPython interpreter with version >=2.7 AND version <3) or `'PyPy'` (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "fromfile": false, + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. `'2.7'` or `'3.10'`. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ] + } + ] + } + }, + "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR": { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "fromfile": false, + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "target_field_name": null, + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "fromfile": false, + "help": "If set, and if running on macOS Big Sur, use `macosx_10_16` as the platform when building wheels. Otherwise, the default of `macosx_11_0` will be used. This may be required for `pip` to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "fromfile": false, + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `CPPFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "target_field_name": "python_native_code_cpp_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "fromfile": false, + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `LDFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "target_field_name": "python_native_code_ld_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_PYTHON_PIP_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-pip-version=", + "config_key": "pip_version", + "default": "23.1.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-pip-version=" + ], + "env_var": "PANTS_PYTHON_PIP_VERSION", + "fromfile": false, + "help": "Use this version of Pip for resolving requirements and generating lockfiles.\n\nThe value used here must be one of the Pip versions supported by the underlying PEX version. See https://www.pantsbuild.org/v2.19/docs/pex for details.\n\nN.B.: The `latest` value selects the latest of the choices listed by PEX which is not necessarily the latest Pip version released on PyPI.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-pip-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pip-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "23.1.2" + } + ] + } + }, + "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "fromfile": false, + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate `.pyi` type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_REPL_HISTORY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-repl-history", + "config_key": "repl_history", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-repl-history" + ], + "env_var": "PANTS_PYTHON_REPL_HISTORY", + "fromfile": false, + "help": "Whether to use the standard Python command history file when running a repl.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repl-history", + "--no-python-repl-history" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--repl-history", + "--no-repl-history" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_REPOS_FIND_LINKS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-find-links=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "fromfile": false, + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-find-links" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--find-links" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_REPOS_INDEXES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "fromfile": false, + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + }, + "PANTS_PYTHON_REPOS_PATH_MAPPINGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "fromfile": false, + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what `WHEELS_DIR` points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.19/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.19/docs/options#pantsrc-file.\n\nNote: Only takes effect if using Pex lockfiles, i.e. using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-path-mappings" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--path-mappings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_REPOS_REPOS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "fromfile": false, + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "fromfile": false, + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTHON_RESOLVER_MANYLINUX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "fromfile": false, + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g. `'manylinux2010'`, or else the string `'no'` to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + "PANTS_PYTHON_RESOLVES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "fromfile": false, + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.19/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolves-generate-lockfiles" + ], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "fromfile": false, + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "fromfile": false, + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-constraints-file" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-constraints-file" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python].interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use `['==3.9.*']` via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to `['==3.7.*']`, then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_NO_BINARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve, you can also use the value `:all:` to disable all binary packages: `{'data-science': [':all:']}`.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-no-binary" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-no-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve you can use the value `:all:` to disable all source packages: `{'data-science': [':all:']}`.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-only-binary" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-only-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "fromfile": false, + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "fromfile": false, + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile\n changes, rather than just those that depend on the changed requirement.\n2) Requirements unneeded by a test/run/repl will be present on the sys.path, which\n might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-empty-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "fromfile": false, + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-py-typed-targets", + "config_key": "tailor_py_typed_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-py-typed-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS", + "fromfile": false, + "help": "If true, add `resource` targets for marker files named `py.typed` with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-py-typed-targets", + "--no-python-tailor-py-typed-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-py-typed-targets", + "--no-tailor-py-typed-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "fromfile": false, + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-source-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-thrift-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_PYTHON_THRIFT_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "fromfile": false, + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTYPE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTYPE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytype, e.g. `--pytype-args='--version'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTYPE_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-config=" + ], + "env_var": "PANTS_PYTYPE_CONFIG", + "fromfile": false, + "help": "Path to an toml config file understood by Pytype (https://github.com/google/pytype#config-file).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTYPE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-console-script=", + "config_key": "console_script", + "default": "pytype", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-console-script=" + ], + "env_var": "PANTS_PYTYPE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytype" + } + ] + } + }, + "PANTS_PYTYPE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-entry-point=" + ], + "env_var": "PANTS_PYTYPE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTYPE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-install-from-resolve=" + ], + "env_var": "PANTS_PYTYPE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytype` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYTYPE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTYPE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + "PANTS_PYTYPE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTYPE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYTYPE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytype-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytype-skip" + ], + "env_var": "PANTS_PYTYPE_SKIP", + "fromfile": false, + "help": "If true, don't use Pytype when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-skip", + "--no-pytype-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PYUPGRADE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYUPGRADE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + "PANTS_PYUPGRADE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-install-from-resolve=" + ], + "env_var": "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyupgrade` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_PYUPGRADE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_PYUPGRADE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "fromfile": false, + "help": "If true, don't use pyupgrade when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_PY_CONSTRAINTS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_PY_CONSTRAINTS_SUMMARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "fromfile": false, + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependents`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependents` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependents).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REGEX_LINT_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "fromfile": true, + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-config" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_REGEX_LINT_DETAIL_LEVEL": { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-detail-level=" + ], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "fromfile": false, + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-detail-level" + ], + "target_field_name": null, + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + }, + "PANTS_REGEX_LINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]regex-lint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]regex-lint-skip" + ], + "env_var": "PANTS_REGEX_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use regex-lint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-skip", + "--no-regex-lint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_CACHE_READ": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "fromfile": false, + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_CACHE_RPC_CONCURRENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-timeout-millis=", + "config_key": "remote_cache_rpc_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache RPCs in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-timeout-millis" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + "PANTS_REMOTE_CACHE_WARNINGS": { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "fromfile": false, + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "target_field_name": null, + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + "PANTS_REMOTE_CACHE_WRITE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "fromfile": false, + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_CA_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_CLIENT_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-certs-path=", + "config_key": "remote_client_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-client-certs-path=" + ], + "env_var": "PANTS_REMOTE_CLIENT_CERTS_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_key_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-client-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-client-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_CLIENT_KEY_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-key-path=", + "config_key": "remote_client_key_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-client-key-path=" + ], + "env_var": "PANTS_REMOTE_CLIENT_KEY_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_certs_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-client-key-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-client-key-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_EXECUTION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "fromfile": false, + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_ADDRESS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "fromfile": false, + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-append-only-caches-base-path=", + "config_key": "remote_execution_append_only_caches_base_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-append-only-caches-base-path=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH", + "fromfile": false, + "help": "Sets the base path to use when setting up an append-only cache for a process running remotely. If this option is not set, then append-only caches will not be used with remote execution. The option should be set to the absolute path of a writable directory in the remote execution environment where Pants can create append-only caches for use with remotely executing processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "fromfile": false, + "help": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.\n\nIf you are using the `remote_environment` target mechanism, set this value as a field on the target instead. This option will be ignored.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_HEADERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "fromfile": false, + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.19.0rc1" + } + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "fromfile": false, + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_REMOTE_INSTANCE_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "fromfile": false, + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use a Pants plugin which provides remote authentication to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "fromfile": false, + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_STORE_ADDRESS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "fromfile": false, + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "fromfile": false, + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + "PANTS_REMOTE_STORE_CHUNK_BYTES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "fromfile": false, + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + "PANTS_REMOTE_STORE_HEADERS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "fromfile": false, + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.19.0rc1" + } + } + ] + } + }, + "PANTS_REMOTE_STORE_RPC_CONCURRENCY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_REMOTE_STORE_RPC_RETRIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "fromfile": false, + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-timeout-millis=", + "config_key": "remote_store_rpc_timeout_millis", + "default": 30000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote store RPCs (not including streaming requests) in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-timeout-millis" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 30000 + } + ] + } + }, + "PANTS_REPL_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_REPL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the repl program, e.g. `--repl-args='-i helloworld/main.py'`.\n\nCurrently supported only for the ipython shell.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_REPL_RESTARTABLE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "fromfile": false, + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_REPL_SHELL": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "fromfile": false, + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ROOTS_OUTPUT_FILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_ROOTS_SEP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + "PANTS_RUFF_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-args=\"[, , ...]\"" + ], + "env_var": "PANTS_RUFF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Ruff, e.g. `--ruff-args='--exclude=foo --ignore=E501'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_RUFF_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-config=" + ], + "env_var": "PANTS_RUFF_CONFIG", + "fromfile": false, + "help": "Path to the `pyproject.toml` or `ruff.toml` file to use for configuration (https://github.com/charliermarsh/ruff#configuration).\n\nSetting this option will disable `[ruff].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUFF_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ruff-config-discovery" + ], + "env_var": "PANTS_RUFF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`pyproject.toml`, and `ruff.toml`).\n\nUse `[ruff].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config-discovery", + "--no-ruff-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_RUFF_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-console-script=", + "config_key": "console_script", + "default": "ruff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-console-script=" + ], + "env_var": "PANTS_RUFF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff" + } + ] + } + }, + "PANTS_RUFF_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-entry-point=" + ], + "env_var": "PANTS_RUFF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUFF_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-install-from-resolve=" + ], + "env_var": "PANTS_RUFF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ruff` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUFF_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_RUFF_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_RUFF_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ruff-skip" + ], + "env_var": "PANTS_RUFF_SKIP", + "fromfile": false, + "help": "If true, don't use Ruff when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-skip", + "--no-ruff-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_RULE_THREADS_CORE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "fromfile": false, + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + "PANTS_RULE_THREADS_MAX": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "fromfile": false, + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_RUN_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_RUN_DEBUG_ADAPTER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-debug-adapter" + ], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-debug-adapter", + "--no-run-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALAC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAC_PLUGINS_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_SCALAFMT_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + "PANTS_SCALAFMT_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAFMT_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_SCALAFMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "fromfile": false, + "help": "If true, don't use scalafmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALAFMT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + "PANTS_SCALAPB_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ] + } + ] + } + }, + "PANTS_SCALAPB_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAPB_JVM_PLUGINS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "fromfile": false, + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set `--scalapb-runtime-dependencies` appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALAPB_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-lockfile=" + ], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_SCALAPB_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-version=" + ], + "env_var": "PANTS_SCALAPB_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + "PANTS_SCALATEST_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALATEST_ARTIFACTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + "PANTS_SCALATEST_JVM_OPTIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCALATEST_LOCKFILE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_SCALATEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalatest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalatest-skip" + ], + "env_var": "PANTS_SCALATEST_SKIP", + "fromfile": false, + "help": "If true, don't use Scalatest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-skip", + "--no-scalatest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALATEST_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + "PANTS_SCALA_INFER_CONSUMED_TYPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-force-add-siblings-as-dependencies" + ], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "fromfile": false, + "help": "If true, add a dependency on all `scala_source` targets generated by the same `scala_sources` target generator. If false, the dependencies will only be added if `[scala-infer].imports` is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SCALA_INFER_IMPORTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_INFER_PACKAGE_OBJECTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-package-objects" + ], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "fromfile": false, + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-objects", + "--no-package-objects" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_TAILOR_SOURCE_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-tailor-source-targets" + ], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SCALA_VERSION_FOR_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_SCC_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SCC_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + "PANTS_SCC_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + "PANTS_SCC_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + "PANTS_SCC_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SCC_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "fromfile": false, + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + "PANTS_SEMGREP_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-args=\"[, , ...]\"", + "config_key": "args", + "default": [ + "--quiet" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SEMGREP_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Semgrep, e.g. `--semgrep-args='--verbose'`.\n\nThis includes --quiet by default to reduce the volume of output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "--quiet" + ] + } + ] + } + }, + "PANTS_SEMGREP_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-console-script=", + "config_key": "console_script", + "default": "semgrep", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-console-script=" + ], + "env_var": "PANTS_SEMGREP_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "semgrep" + } + ] + } + }, + "PANTS_SEMGREP_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-entry-point=" + ], + "env_var": "PANTS_SEMGREP_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SEMGREP_FORCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]semgrep-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]semgrep-force" + ], + "env_var": "PANTS_SEMGREP_FORCE", + "fromfile": false, + "help": "If true, semgrep is always run, even if the input files haven't changed. This can be used to run cloud rulesets like `pants lint --semgrep-force --semgrep-args='--config=p/python' ::`. Without `--semgrep-force`, using the cloud rulesets may give inconsistent results on different machines, due to caching, because the rulesets may change.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-force", + "--no-semgrep-force" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SEMGREP_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-install-from-resolve=" + ], + "env_var": "PANTS_SEMGREP_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `semgrep` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SEMGREP_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SEMGREP_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_SEMGREP_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SEMGREP_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SEMGREP_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]semgrep-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]semgrep-skip" + ], + "env_var": "PANTS_SEMGREP_SKIP", + "fromfile": false, + "help": "If true, don't use Semgrep when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-skip", + "--no-semgrep-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SESSION_END_TASKS_TIMEOUT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--session-end-tasks-timeout=", + "config_key": "session_end_tasks_timeout", + "default": 3.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--session-end-tasks-timeout=" + ], + "env_var": "PANTS_SESSION_END_TASKS_TIMEOUT", + "fromfile": false, + "help": "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 invocation to a configured remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--session-end-tasks-timeout" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--session-end-tasks-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3.0 + } + ] + } + }, + "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-install-from-resolve=" + ], + "env_var": "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SETUPTOOLS_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-console-script=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-install-from-resolve=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools-scm` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_SETUPTOOLS_SCM_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME": { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "fromfile": false, + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "target_field_name": null, + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + }, + "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "fromfile": false, + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (`setup.py`, `setup.cfg` and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELLCHECK_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SHELLCHECK_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELLCHECK_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ] + } + ] + } + }, + "PANTS_SHELLCHECK_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "fromfile": false, + "help": "If true, don't use Shellcheck when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + "PANTS_SHELLCHECK_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz" + } + ] + } + }, + "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SHELLCHECK_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "fromfile": false, + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "target_field_name": "shell_setup_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + "PANTS_SHELL_SETUP_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-tailor" + ], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "fromfile": false, + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHELL_TEST_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-test-skip" + ], + "env_var": "PANTS_SHELL_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Test with shell scripts when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-test-skip", + "--no-shell-test-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHFMT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SHFMT_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_SHFMT_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ] + } + ] + } + }, + "PANTS_SHFMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "fromfile": false, + "help": "If true, don't use shfmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHFMT_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + "PANTS_SHFMT_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + "PANTS_SHFMT_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SHFMT_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "fromfile": false, + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.6.0" + } + ] + } + }, + "PANTS_SHOW_LOG_TARGET": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "fromfile": false, + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with `--log-levels-by-target`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHUNIT2_KNOWN_VERSIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHUNIT2_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ] + } + ] + } + }, + "PANTS_SHUNIT2_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shunit2-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shunit2-skip" + ], + "env_var": "PANTS_SHUNIT2_SKIP", + "fromfile": false, + "help": "If true, don't use shunit2 when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-skip", + "--no-shunit2-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SHUNIT2_URL_PLATFORM_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHUNIT2_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + "PANTS_SHUNIT2_URL_TEMPLATE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-template=", + "config_key": "url_template", + "default": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-template=" + ], + "env_var": "PANTS_SHUNIT2_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2" + } + ] + } + }, + "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION": { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shunit2-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-use-unsupported-version=" + ], + "env_var": "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shunit2 is not supported.\n\nSupported shunit2 versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_SHUNIT2_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-version=", + "config_key": "version", + "default": "b9102bb763cc603b3115ed30a5648bf950548097", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-version=" + ], + "env_var": "PANTS_SHUNIT2_VERSION", + "fromfile": false, + "help": "Use this version of shunit2.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "b9102bb763cc603b3115ed30a5648bf950548097" + } + ] + } + }, + "PANTS_SOURCE_MARKER_FILENAMES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "fromfile": false, + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SOURCE_ROOT_PATTERNS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "fromfile": false, + "help": "A list of source root suffixes.\n\nA directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc.\n\nPrepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`.\n\nA `*` wildcard will match a single path segment, E.g., `src/*` will match `/src/python` and `/src/rust`.\n\nUse `/` to signify that the buildroot itself is a source root.\n\nSee https://www.pantsbuild.org/v2.19/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + "PANTS_SPECTRAL_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SPECTRAL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Spectral, e.g. `--spectral-args='--fail-severity=warn'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SPECTRAL_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-install-from-resolve=" + ], + "env_var": "PANTS_SPECTRAL_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_SPECTRAL_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]spectral-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]spectral-skip" + ], + "env_var": "PANTS_SPECTRAL_SKIP", + "fromfile": false, + "help": "If true, don't use Spectral when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-skip", + "--no-spectral-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_SPECTRAL_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-version=", + "config_key": "version", + "default": "@stoplight/spectral-cli@6.5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-version=" + ], + "env_var": "PANTS_SPECTRAL_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "@stoplight/spectral-cli@6.5.1" + } + ] + } + }, + "PANTS_SPEC_FILES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "fromfile": false, + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_STATS_LOG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "fromfile": false, + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_STATS_MEMORY_SUMMARY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-memory-summary" + ], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "fromfile": false, + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--memory-summary", + "--no-memory-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_STATS_RECORD_OPTION_SCOPES": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "fromfile": false, + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "fromfile": false, + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_STREAMING_WORKUNITS_LEVEL": { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-level=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "fromfile": false, + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "fromfile": false, + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + "PANTS_SUBPROCESSDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.TG08L3iBWC/.pants.d/pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "fromfile": false, + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/.pants.d/pids" + } + ] + } + }, + "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.19/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "target_field_name": "subprocess_environment_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + }, + "PANTS_SUBPROJECT_ROOTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "fromfile": false, + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_SYSTEM_BINARIES_SYSTEM_BINARY_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--system-binaries-system-binary-paths=\"['', '', ...]\"", + "config_key": "system_binary_paths", + "default": [ + "/usr/bin", + "/bin", + "/usr/local/bin", + "/opt/homebrew/bin" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--system-binaries-system-binary-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_SYSTEM_BINARIES_SYSTEM_BINARY_PATHS", + "fromfile": false, + "help": "The PATH value that will searched for executables.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--system-binaries-system-binary-paths" + ], + "target_field_name": "system_binaries_system_binary_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--system-binary-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/usr/bin", + "/bin", + "/usr/local/bin", + "/opt/homebrew/bin" + ] + } + ] + } + }, + "PANTS_TAG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "fromfile": false, + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.19/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TAILOR_ALIAS_MAPPING": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "fromfile": false, + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.19/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + "PANTS_TAILOR_BUILD_FILE_HEADER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "fromfile": false, + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TAILOR_BUILD_FILE_INDENT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "fromfile": false, + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + "PANTS_TAILOR_BUILD_FILE_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "fromfile": false, + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + "PANTS_TAILOR_CHECK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TAILOR_IGNORE_ADDING_TARGETS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "fromfile": false, + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TAILOR_IGNORE_PATHS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "fromfile": false, + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TERRAFORM_FMT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-fmt-skip" + ], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform fmt` when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-install-from-resolve=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `terraform-hcl2-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TERRAFORM_VALIDATE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-validate-skip" + ], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform validate` when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_ATTEMPTS_DEFAULT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-attempts-default=", + "config_key": "attempts_default", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-attempts-default=" + ], + "env_var": "PANTS_TEST_ATTEMPTS_DEFAULT", + "fromfile": false, + "help": "The number of attempts to run tests, in case of a test failure. Tests that were retried will include the number of attempts in the summary output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-attempts-default" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--attempts-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + "PANTS_TEST_BATCH_SIZE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-batch-size=" + ], + "env_var": "PANTS_TEST_BATCH_SIZE", + "fromfile": false, + "help": "The target maximum number of files to be included in each run of batch-enabled test runners.\n\nSome test runners can execute tests from multiple files in a single run. Test implementations will return all tests that _can_ run together as a single group - and then this may be further divided into smaller batches, based on this option. This is done:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch\n 3. to allow for parallelism in test runners which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" max batch size (rather than an exact value).\n\nNOTE: This parameter has no effect on test runners/plugins that do not implement support for batched testing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + "PANTS_TEST_DEBUG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "fromfile": false, + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_DEBUG_ADAPTER": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug-adapter" + ], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies `--debug`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_EXTRA_ENV_VARS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "target_field_name": "test_extra_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TEST_FORCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "fromfile": false, + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_OPEN_COVERAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "fromfile": false, + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_OUTPUT": { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "fromfile": false, + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "target_field_name": null, + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + "PANTS_TEST_REPORT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-report" + ], + "env_var": "PANTS_TEST_REPORT", + "fromfile": false, + "help": "Write test reports to `--report-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report", + "--no-test-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--report", + "--no-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_TEST_REPORT_DIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-report-dir=" + ], + "env_var": "PANTS_TEST_REPORT_DIR", + "fromfile": false, + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--report-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + "PANTS_TEST_SHARD": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-shard=" + ], + "env_var": "PANTS_TEST_SHARD", + "fromfile": false, + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with `--shard=0/3`, `--shard=1/3`, `--shard=2/3`.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-shard" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--shard" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_TEST_TIMEOUTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-timeouts" + ], + "env_var": "PANTS_TEST_TIMEOUTS", + "fromfile": false, + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeouts", + "--no-test-timeouts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_TEST_TIMEOUT_DEFAULT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-default=" + ], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "fromfile": false, + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-default" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TEST_TIMEOUT_MAXIMUM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-maximum=" + ], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "fromfile": false, + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-maximum" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TEST_USE_COVERAGE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "fromfile": false, + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_THRIFT_DEPENDENCY_INFERENCE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-dependency-inference" + ], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_THRIFT_TAILOR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-tailor" + ], + "env_var": "PANTS_THRIFT_TAILOR", + "fromfile": false, + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-tailor", + "--no-thrift-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_TWINE_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TWINE_CA_CERTS_PATH": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use any certificates.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.19/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + "PANTS_TWINE_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "fromfile": false, + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TWINE_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_TWINE_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + "PANTS_TWINE_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TWINE_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-install-from-resolve=" + ], + "env_var": "PANTS_TWINE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `twine` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_TWINE_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_TWINE_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_TWINE_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "fromfile": false, + "help": "If true, don't use Twine when running `scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_UNMATCHED_BUILD_FILE_GLOBS": { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-build-file-globs=" + ], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "fromfile": false, + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + "PANTS_UNMATCHED_CLI_GLOBS": { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-cli-globs=" + ], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "fromfile": false, + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_CHECK": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "fromfile": false, + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_FMT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "fromfile": false, + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_UPDATE_BUILD_FILES_FORMATTER": { + "choices": [ + "yapf", + "black" + ], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--update-build-files-formatter=" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "fromfile": false, + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-formatter" + ], + "target_field_name": null, + "typ": "Formatter", + "unscoped_cmd_line_args": [ + "--formatter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + "PANTS_VERIFY_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "fromfile": false, + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_VERSION": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "fromfile": false, + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.19/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.19.0rc1" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.19.0rc1" + } + ] + } + }, + "PANTS_WATCH_FILESYSTEM": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "fromfile": false, + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_WORKDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.TG08L3iBWC/.pants.d/workdir", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "fromfile": false, + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/.pants.d/workdir" + } + ] + } + }, + "PANTS_WORKUNIT_LOGGER_ENABLED": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]workunit-logger-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]workunit-logger-enabled" + ], + "env_var": "PANTS_WORKUNIT_LOGGER_ENABLED", + "fromfile": false, + "help": "Whether to enable workunit logging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--workunit-logger-enabled", + "--no-workunit-logger-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_WORKUNIT_LOGGER_LOGDIR": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--workunit-logger-logdir=", + "config_key": "logdir", + "default": ".pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--workunit-logger-logdir=" + ], + "env_var": "PANTS_WORKUNIT_LOGGER_LOGDIR", + "fromfile": false, + "help": "Where to write the log to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--workunit-logger-logdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".pants.d" + } + ] + } + }, + "PANTS_YAMLLINT_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAMLLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Yamllint, e.g. `--yamllint-args='-d relaxed'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAMLLINT_CONFIG_FILE_NAME": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-config-file-name=", + "config_key": "config_file_name", + "default": ".yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-config-file-name=" + ], + "env_var": "PANTS_YAMLLINT_CONFIG_FILE_NAME", + "fromfile": false, + "help": "Name of a config file understood by yamllint (https://yamllint.readthedocs.io/en/stable/configuration.html). The plugin will search the ancestors of each directory in which YAML files are found for a config file of this name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-config-file-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--config-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".yamllint" + } + ] + } + }, + "PANTS_YAMLLINT_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-console-script=", + "config_key": "console_script", + "default": "yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-console-script=" + ], + "env_var": "PANTS_YAMLLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint" + } + ] + } + }, + "PANTS_YAMLLINT_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-entry-point=" + ], + "env_var": "PANTS_YAMLLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAMLLINT_EXCLUDE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-exclude=\"['', '', ...]\"", + "config_key": "exclude", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-exclude=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_EXCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to exclude from linting.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-exclude" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAMLLINT_INCLUDE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-include=\"['', '', ...]\"", + "config_key": "include", + "default": [ + "**/*.yml", + "**/*.yaml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-include=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to lint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-include" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--include" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "**/*.yml", + "**/*.yaml" + ] + } + ] + } + }, + "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-install-from-resolve=" + ], + "env_var": "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yamllint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_YAMLLINT_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAMLLINT_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yamllint-skip" + ], + "env_var": "PANTS_YAMLLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Yamllint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-skip", + "--no-yamllint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + "PANTS_YAPF_ARGS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAPF_CONFIG": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "fromfile": false, + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAPF_CONFIG_DISCOVERY": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + "PANTS_YAPF_CONSOLE_SCRIPT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + "PANTS_YAPF_ENTRY_POINT": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAPF_INSTALL_FROM_RESOLVE": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-install-from-resolve=" + ], + "env_var": "PANTS_YAPF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yapf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + "PANTS_YAPF_INTERPRETER_CONSTRAINTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + "PANTS_YAPF_REQUIREMENTS": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + "PANTS_YAPF_SKIP": { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "fromfile": false, + "help": "If true, don't use yapf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + }, + "name_to_api_type_info": { + "abc.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "abc", + "name": "EnvironmentAware", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_env_aware_scope_apache_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "builtins.AddPrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "AddPrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.core.goals.export.export", + "pants.core.target_types.relocate_files", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "builtins.AddressInput": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "AddressInput", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "builtins.Digest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.go.goals.generate", + "pants.backend.helm.util_rules.chart_metadata", + "pants.engine.fs", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.strip_jar.strip_jar" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "Digest", + "provider": "builtins, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.core.util_rules.archive.create_archive", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.package_json.pnpm_workspace_files", + "pants.backend.javascript.package_json.read_package_jsons", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.generate_setup_py", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.package.package_asset", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_content", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "builtins.FileDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.util_rules" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "FileDigest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "builtins.InferenceMetadata": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "builtins", + "name": "InferenceMetadata", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ] + }, + "builtins.MergeDigests": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "MergeDigests", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.generate.go_generate", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.bsp_dependency_modules", + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.generate_snapshots.generate_snapshots", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.source_files.determine_source_files", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "builtins.NativeDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "NativeDependenciesRequest", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ] + }, + "builtins.RemovePrefix": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "", + "is_union": false, + "module": "builtins", + "name": "RemovePrefix", + "provider": "builtins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.backend.adhoc.adhoc_tool.GenerateFilesFromAdhocToolRequest": { + "consumed_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.adhoc" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.adhoc.adhoc_tool", + "name": "GenerateFilesFromAdhocToolRequest", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.adhoc.run_system_binary.SystemBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_SystemBinaryFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.adhoc" + ], + "documentation": "SystemBinaryFieldSet(address: 'Address', name: 'SystemBinaryNameField', extra_search_paths: 'SystemBinaryExtraSearchPathsField', fingerprint_pattern: 'SystemBinaryFingerprintPattern', fingerprint_argv: 'SystemBinaryFingerprintArgsField', fingerprint_dependencies: 'SystemBinaryFingerprintDependenciesField')", + "is_union": false, + "module": "pants.backend.adhoc.run_system_binary", + "name": "SystemBinaryFieldSet", + "provider": "pants.backend.experimental.adhoc", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "PythonAwsLambdaFieldSet(address: 'Address', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', output_path: 'OutputPathField', environment: 'EnvironmentField', handler: 'PythonAwsLambdaHandlerField')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.awslambda.python.rules.PythonAwsLambdaLayerFieldSet": { + "consumed_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "PythonAwsLambdaLayerFieldSet(address: 'Address', include_requirements: 'PythonAwsLambdaIncludeRequirements', runtime: 'PythonAwsLambdaRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', output_path: 'OutputPathField', environment: 'EnvironmentField', dependencies: 'PythonAwsLambdaLayerDependenciesField', include_sources: 'PythonAwsLambdaIncludeSources')", + "is_union": false, + "module": "pants.backend.awslambda.python.rules", + "name": "PythonAwsLambdaLayerFieldSet", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.base.FixedBUILDFile": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.build_files.fix.deprecations" + ], + "dependents": [ + "pants.core" + ], + "documentation": "FixedBUILDFile(path: 'str', content: 'bytes')", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.base", + "name": "FixedBUILDFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenameFieldsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenameFieldsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.RenamedFieldTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single" + ], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_fields_rules", + "name": "RenamedFieldTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFileRequest": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Deprecated target type names to new names.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFileRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenameTargetsInFilesRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenameTargetsInFilesRequest", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.RenamedTargetTypes": { + "consumed_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Map deprecated field names to their new name, per target.", + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.renamed_targets_rules", + "name": "RenamedTargetTypes", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fix.deprecations.subsystem.BUILDDeprecationsFixer": { + "consumed_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameFieldsInFilesRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameTargetsInFilesRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fix.deprecations" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fix.deprecations.subsystem", + "name": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations", + "returned_by_rules": [ + "construct_scope_build_deprecations_fixer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.black.register.BlackRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.black.register", + "name": "BlackRequest", + "provider": "pants.backend.build_files.fmt.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.rules.BuildifierRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.rules", + "name": "BuildifierRequest", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.buildifier.subsystem.Buildifier": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BuildifierRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.buildifier.subsystem", + "name": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier", + "returned_by_rules": [ + "construct_scope_buildifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.build_files.fmt.yapf.register.YapfRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.build_files.fmt.yapf.register", + "name": "YapfRequest", + "provider": "pants.backend.build_files.fmt.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegen": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegen", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.export_codegen_goal.ExportCodegenSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.export_codegen_goal", + "name": "ExportCodegenSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_export_codegen" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GenerateGoFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GenerateGoFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.GoCodegenBuildProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg_target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "GoCodegenBuildProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoCodegenBuildRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules.ProtobufGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets" + ], + "dependencies": [ + "pants.backend.go.dependency_inference" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "ProtobufGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtobufPackageBuildRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": "Request type used to trigger setup of a BuildGoPackageRequest for entire generated Go\nProtobuf package.\n\nThis type is separate so that a build of the full package can be cached no matter which one of\nits component source files was requested. This occurs because a request to build any one of the\nsource files will be converted into this type and then built.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtobufPackageBuildRequest", + "provider": "pants.backend.codegen.protobuf.go.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf" + ] + }, + "pants.backend.codegen.protobuf.go.rules._SetupGoProtocPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": "_SetupGoProtocPlugin(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.go.rules", + "name": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.InferProtobufJavaRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "InferProtobufJavaRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaGrpcRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaGrpcRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaGrpcRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaGrpcRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.java.dependency_inference", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaRuntimeForResolve(addresses: 'FrozenSet[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.dependency_inference.ProtobufJavaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.dependency_inference", + "name": "ProtobufJavaRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.java.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.java.rules.GenerateJavaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GenerateJavaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.rules.GrpcJavaToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "GrpcJavaToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.java.rules, pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ] + }, + "pants.backend.codegen.protobuf.java.rules.ProtobufJavaGrpcPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": "ProtobufJavaGrpcPlugin(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.rules", + "name": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.java.subsystem.JavaProtobufGrpcSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.java.subsystem", + "name": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [ + "construct_scope_protobuf_java_grpc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.BufFormatRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.format_rules", + "name": "BufFormatRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.BufLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.lint_rules", + "name": "BufLintRequest", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufFormatField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufFormatField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.skip_field.SkipBufLintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.skip_field", + "name": "SkipBufLintField", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.lint.buf.subsystem.BufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.lint.buf.subsystem", + "name": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "returned_by_rules": [ + "construct_scope_buf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.InferProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "InferProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.ProtobufMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": "A mapping of stripped .proto file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.protobuf.protobuf_dependency_inference", + "name": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.protoc.Protoc": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.protoc", + "name": "Protoc", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_protoc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonInterpreterConstraintsField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonInterpreterConstraintsField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.ProtobufPythonResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "ProtobufPythonResolveField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.additional_fields.PythonSourceRootField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.additional_fields", + "name": "PythonSourceRootField", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.grpc_python_plugin.GrpcPythonPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.grpc_python_plugin", + "name": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_grpc_python_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.PythonProtobufMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper", + "name": "PythonProtobufMappingMarker", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.InferPythonProtobufDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "InferPythonProtobufDependencies", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufMypyPlugin": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_mypy_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.PythonProtobufSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem", + "name": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "construct_scope_python_protobuf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.python.rules.GeneratePythonFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.python.rules", + "name": "GeneratePythonFromProtobufRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.InferScalaPBRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "InferScalaPBRuntimeDependencyRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.dependency_inference", + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "ScalaPBRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.ScalaPBRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "ScalaPBRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.dependency_inference", + "name": "ScalaPBRuntimeForResolveRequest", + "provider": "pants.backend.codegen.protobuf.scala.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.GenerateScalaFromProtobufRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "GenerateScalaFromProtobufRequest", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializeJvmPluginRequest(plugin: 'PluginArtifactSpec')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializeJvmPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializeJvmPluginsRequest(plugins: 'tuple[PluginArtifactSpec, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializeJvmPluginsRequest", + "provider": "pants.backend.codegen.protobuf.scala.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.java", + "pants.jvm.resolve.common" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializedJvmPlugin(name: 'str', classpath: 'ToolClasspath')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.MaterializedJvmPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": "MaterializedJvmPlugins(digest: 'Digest', plugins: 'tuple[MaterializedJvmPlugin, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalaPBShimCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.scala.rules.ScalapbcToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.rules", + "name": "ScalapbcToolLockfileSentinel", + "provider": "pants.backend.codegen.protobuf.scala.rules, pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ] + }, + "pants.backend.codegen.protobuf.scala.subsystem.ScalaPBSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.scala.subsystem", + "name": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "returned_by_rules": [ + "construct_scope_scalapb" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.tailor.PutativeProtobufTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": "PutativeProtobufTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.protobuf.tailor", + "name": "PutativeProtobufTargetsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.AllProtobufTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.protobuf.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.protobuf.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.protobuf.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.additional_fields.ThriftPythonResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.additional_fields", + "name": "ThriftPythonResolveField", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.PythonThriftMappingMarker": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper", + "name": "PythonThriftMappingMarker", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.GeneratePythonFromThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "GeneratePythonFromThriftRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.rules.InferApacheThriftPythonDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.rules", + "name": "InferApacheThriftPythonDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.python.subsystem.ThriftPythonSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.python.subsystem", + "name": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_python_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.ApacheThriftSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "ApacheThriftSetup(path: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.apache.rules.GenerateThriftSourcesRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "GenerateThriftSourcesRequest(thrift_source_field: 'ThriftSourceField', lang_id: 'str', lang_options: 'tuple[str, ...]', lang_name: 'str')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GenerateThriftSourcesRequest", + "provider": "pants.backend.codegen.thrift.apache.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.rules.GeneratedThriftSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.thrift.apache.rules", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "GeneratedThriftSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.rules", + "name": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift" + ] + }, + "pants.backend.codegen.thrift.apache.subsystem.ApacheThriftSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_apache_thrift", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.apache.subsystem", + "name": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_apache_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.InferThriftDependencies": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "InferThriftDependencies", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.dependency_inference.ThriftMapping": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "A mapping of stripped .thrift file names to their owning file address.", + "is_union": false, + "module": "pants.backend.codegen.thrift.dependency_inference", + "name": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.subsystem.ThriftSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.subsystem", + "name": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "construct_scope_thrift" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.tailor.PutativeThriftTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "PutativeThriftTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.tailor", + "name": "PutativeThriftTargetsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.AllThriftTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.target_types.GeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.target_types.generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.codegen.thrift.target_types", + "name": "GeneratorSettingsRequest", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThrift": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.thrift.thrift_parser", + "pants.backend.experimental.go", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "ParsedThrift(imports: 'FrozenOrderedSet[str]', namespaces: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python", + "returned_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.codegen.thrift.thrift_parser.ParsedThriftRequest": { + "consumed_by_rules": [ + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file" + ], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.thrift.apache.python" + ], + "documentation": "ParsedThriftRequest(sources_field: 'ThriftSourceField')", + "is_union": false, + "module": "pants.backend.codegen.thrift.thrift_parser", + "name": "ParsedThriftRequest", + "provider": "pants.backend.codegen.thrift.thrift_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies" + ] + }, + "pants.backend.docker.goals.package_image.DockerPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerPackageFieldSet(address: 'Address', context_root: 'DockerImageContextRootField', registries: 'DockerImageRegistriesField', repository: 'DockerImageRepositoryField', source: 'DockerImageSourceField', tags: 'DockerImageTagsField', target_stage: 'DockerImageTargetStageField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.backend.docker.goals.package_image", + "name": "DockerPackageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "PublishDockerImageFieldSet(address: 'Address', registries: 'DockerImageRegistriesField', skip_push: 'DockerImageSkipPushField')", + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.publish.PublishDockerImageRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.goals.publish", + "name": "PublishDockerImageRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.docker.goals.run_image.DockerRunFieldSet": { + "consumed_by_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DockerRunFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerRunFieldSet(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.goals.run_image", + "name": "DockerRunFieldSet", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.docker.goals.tailor.PutativeDockerTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "PutativeDockerTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.goals.tailor", + "name": "PutativeDockerTargetsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.rules.HadolintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.rules", + "name": "HadolintRequest", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.skip_field.SkipHadolintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.skip_field", + "name": "SkipHadolintField", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.docker.lint.hadolint.subsystem.Hadolint": { + "consumed_by_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_HadolintRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker.lint.hadolint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.lint.hadolint.subsystem", + "name": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint", + "returned_by_rules": [ + "construct_scope_hadolint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.DockerOptions": { + "consumed_by_rules": [ + "construct_env_aware_scope_docker", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "DockerOptions", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.docker_options.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.docker_options", + "name": "EnvironmentAware", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_env_aware_scope_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.docker.lint.hadolint" + ], + "documentation": "DockerfileInfo(address: 'Address', digest: 'Digest', source: 'str', build_args: 'DockerBuildArgs' = DockerBuildArgs(), copy_source_paths: 'tuple[str, ...]' = (), from_image_build_args: 'DockerBuildArgs' = DockerBuildArgs(), version_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfo", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileInfoRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerfileInfoRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileInfoRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParseRequest": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerfileParseRequest(sources_digest: 'Digest', args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParseRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile" + ] + }, + "pants.backend.docker.subsystems.dockerfile_parser.DockerfileParser": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "DockerfileParser", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "construct_scope_dockerfile_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.subsystems.dockerfile_parser.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.docker.subsystems.dockerfile_parser", + "name": "ParserSetup", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.AllDockerImageTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.target_types", + "name": "AllDockerImageTargets", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.target_types.all_docker_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.target_types.DockerImageTagsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to provide additional image tags.", + "is_union": true, + "module": "pants.backend.docker.target_types", + "name": "DockerImageTagsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.dependencies.InferDockerDependencies": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dependencies", + "name": "InferDockerDependencies", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_binary.DockerBinary": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "The `docker` binary.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_binary", + "name": "DockerBinary", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_binary.get_docker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgs", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_args.DockerBuildArgsRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_args.docker_build_args" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildArgsRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_args", + "name": "DockerBuildArgsRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContext": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm" + ], + "documentation": "DockerBuildContext(build_args: 'DockerBuildArgs', digest: 'Digest', build_env: 'DockerBuildEnvironment', upstream_image_ids: 'tuple[str, ...]', dockerfile: 'str', interpolation_context: 'InterpolationContext', copy_source_vs_context_source: 'tuple[tuple[str, str], ...]', stages: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContext", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.DockerBuildContextRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildContextRequest(address: 'Address', build_upstream_images: 'bool' = False)", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "DockerBuildContextRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.docker.util_rules.docker_build_context.GenerateDockerContextFiles": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "This translates all files from acceptable Source fields for the docker context using the\n`codegen` machinery.", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_context", + "name": "GenerateDockerContextFiles", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildEnvironment(environment: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironment", + "provider": "pants.backend.docker", + "returned_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.docker_build_env.DockerBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars" + ], + "dependencies": [], + "dependents": [ + "pants.backend.docker" + ], + "documentation": "DockerBuildEnvironmentRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.docker.util_rules.docker_build_env", + "name": "DockerBuildEnvironmentRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context" + ] + }, + "pants.backend.docker.util_rules.dockerfile.GenerateDockerfileRequest": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.docker.util_rules.dockerfile", + "name": "GenerateDockerfileRequest", + "provider": "pants.backend.docker", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.AllGoModuleImportPathsMappings": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.target_type_rules" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Maps import paths (as strings) to one or more addresses of targets providing those import\npath(s) for a single Go module.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappings": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Import path mappings for all Go modules in the repository.\n\nThis type is requested from plugins which provide implementations for the GoCodegenBuildRequest\nunion and then merged.", + "is_union": false, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.dependency_inference.GoModuleImportPathsMappingsHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "An entry point for a specific implementation of mapping Go import paths to owning targets.\n\nAll implementations will be merged together. The core Go dependency inference rules will request\nthe `GoModuleImportPathsMappings` type using implementations of this union.", + "is_union": true, + "module": "pants.backend.go.dependency_inference", + "name": "GoModuleImportPathsMappingsHook", + "provider": "pants.backend.go.dependency_inference", + "returned_by_rules": [], + "union_members": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "ProtobufGoModuleImportPathsMappingsHook" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.go_sources.load_go_binary", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "LoadedGoBinary(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.LoadedGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "LoadedGoBinaryRequest(dir_name: 'str', file_names: 'tuple[str, ...]', output_name: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "LoadedGoBinaryRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ] + }, + "pants.backend.go.go_sources.load_go_binary.NaiveBuildGoPackageRequestForStdlibPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "NaiveBuildGoPackageRequestForStdlibPackageRequest(import_path: 'str')", + "is_union": false, + "module": "pants.backend.go.go_sources.load_go_binary", + "name": "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "provider": "pants.backend.go.go_sources.load_go_binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary" + ] + }, + "pants.backend.go.goals.check.GoCheckRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.check.check_go" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.check", + "name": "GoCheckRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_env_aware_scope_go_generate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoal", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.generate.go_generate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.GoGenerateGoalSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_go_generate" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_go_generate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.goals.generate.OverwriteMergeDigests": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.merge_digests_with_overwrite" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "OverwriteMergeDigests(orig_digest: 'Digest', new_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "OverwriteMergeDigests", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RunPackageGeneratorsRequest(address: 'Address', regex: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsRequest", + "provider": "pants.backend.go.goals.generate", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.go_generate" + ] + }, + "pants.backend.go.goals.generate.RunPackageGeneratorsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.generate", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RunPackageGeneratorsResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.goals.generate", + "name": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.go_generate" + ] + }, + "pants.backend.go.goals.package_binary.GoBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_GoBinaryFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBinaryFieldSet(address: 'Address', main: 'GoBinaryMainPackageField', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.go.goals.package_binary", + "name": "GoBinaryFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FindPutativeGoPackageTargetRequest(dir_path: 'str', files: 'tuple[str, ...]', all_go_mod_dirs: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetRequest", + "provider": "pants.backend.go.goals.tailor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.FindPutativeGoPackageTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.goals.tailor", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FindPutativeGoPackageTargetResult(putative_target: 'PutativeTarget | None')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_package_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ] + }, + "pants.backend.go.goals.tailor.PutativeGoTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "PutativeGoTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.goals.tailor", + "name": "PutativeGoTargetsRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.FalliblePrepareGoTestBinaryResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.goals.test", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FalliblePrepareGoTestBinaryResult(binary: 'PrepareGoTestBinaryResult | None', stdout: 'str', stderr: 'str', exit_code: 'int')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.goals.test.GoTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "GoTestFieldSet(address: 'Address', sources: 'GoPackageSourcesField', dependencies: 'Dependencies', timeout: 'GoTestTimeoutField', extra_env_vars: 'GoTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestFieldSet", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.GoTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "GoTestRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.go.goals.test.PrepareGoTestBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "PrepareGoTestBinaryRequest(field_set: 'GoTestFieldSet', coverage: 'PrepareGoTestBinaryCoverageConfig | None')", + "is_union": false, + "module": "pants.backend.go.goals.test", + "name": "PrepareGoTestBinaryRequest", + "provider": "pants.backend.go.goals.test", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.run_go_tests" + ] + }, + "pants.backend.go.lint.gofmt.rules.GofmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.rules", + "name": "GofmtRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.skip_field.SkipGofmtField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.skip_field", + "name": "SkipGofmtField", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.lint.gofmt.subsystem.GofmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.lint.gofmt.subsystem", + "name": "GofmtSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_gofmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_env_aware_scope_golang" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.golang.GolangSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_golang", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.golang", + "name": "GolangSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_golang" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.subsystems.gotest.GoTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_GoTestRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.subsystems.gotest", + "name": "GoTestSubsystem", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "construct_scope_go_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.FirstPartyGoModuleImportPathsMappingsHook": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module" + ], + "dependencies": [ + "pants.backend.go.dependency_inference" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "FirstPartyGoModuleImportPathsMappingsHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GoModuleImportPathsMappingsHook", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GenerateTargetsFromGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GenerateTargetsFromGoModRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.GoImportPathMappingRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.map_import_paths_to_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoImportPathMappingRequest(go_mod_address: 'Address')", + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "GoImportPathMappingRequest", + "provider": "pants.backend.go.target_type_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.target_type_rules.InferGoPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_type_rules.InferGoThirdPartyPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_type_rules", + "name": "InferGoThirdPartyPackageDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.target_types.GoOwningGoModAddressField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.target_types", + "name": "GoOwningGoModAddressField", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.assembly.AssembleGoAssemblyFilesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Assemble Go assembly files to object files.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "AssembleGoAssemblyFilesRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleAssembleGoAssemblyFilesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FallibleAssembleGoAssemblyFilesResult(result: 'AssembleGoAssemblyFilesResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.FallibleGenerateAssemblySymabisResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.assembly", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FallibleGenerateAssemblySymabisResult(result: 'GenerateAssemblySymabisResult | None', exit_code: 'int' = 0, stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.assembly.GenerateAssemblySymabisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Generate a `symabis` file with metadata about the assemnbly files for consumption by Go\ncompiler.\n\nSee https://github.com/bazelbuild/rules_go/issues/1893.", + "is_union": false, + "module": "pants.backend.go.util_rules.assembly", + "name": "GenerateAssemblySymabisRequest", + "provider": "pants.backend.go.util_rules.assembly", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.binary", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBinaryMainPackage(address: 'Address', is_third_party: 'bool', import_path: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.GoBinaryMainPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBinaryMainPackageRequest(field: 'GoBinaryMainPackageField')", + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "GoBinaryMainPackageRequest", + "provider": "pants.backend.go.util_rules.binary", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.binary.InferGoBinaryMainDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.binary", + "name": "InferGoBinaryMainDependencyRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.build_opts" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBuildOptions(coverage_config: 'GoCoverageConfig | None' = None, cgo_enabled: 'bool' = True, with_race_detector: 'bool' = False, with_msan: 'bool' = False, with_asan: 'bool' = False, compiler_flags: 'tuple[str, ...]' = (), linker_flags: 'tuple[str, ...]' = (), assembler_flags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptions", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_opts.GoBuildOptionsFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBuildOptionsFromTargetRequest(address: 'Address', for_tests: 'bool' = False)", + "is_union": false, + "module": "pants.backend.go.util_rules.build_opts", + "name": "GoBuildOptionsFromTargetRequest", + "provider": "pants.backend.go.util_rules.build_opts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.go.go_sources.load_go_binary" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go, pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.BuiltGoPackage": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A package and its dependencies compiled as `__pkg__.a` files.\n\nThe packages are arranged into `__pkgs__/{path_safe(import_path)}/__pkg__.a`.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "BuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckForGolangAssemblyRequest(digest: 'Digest', dir_path: 'str', s_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.CheckForGolangAssemblyResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckForGolangAssemblyResult(maybe_golang_assembly: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuildGoPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request" + ], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.go.rules", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "Request to build a package, but fallible if determining the request metadata failed.\n\nWhen creating \"synthetic\" packages, use `GoPackageRequest` directly. This type is only intended\nfor determining the package metadata of user code, which may fail to be analyzed.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg.FallibleBuiltGoPackage": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.required_built_go_package" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg", + "pants.core", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Fallible version of `BuiltGoPackage` with error details.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoCompileActionIdRequest(build_request: 'BuildGoPackageRequest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.GoCompileActionIdResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.build_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoCompileActionIdResult(action_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderEmbedConfigRequest(embed_config: 'EmbedConfig | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.RenderedEmbedConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.build_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderedEmbedConfig(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.render_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.build_pkg.SetupAsmCheckBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "SetupAsmCheckBinary(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg", + "name": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageRequestForStdlibRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "BuildGoPackageRequestForStdlibRequest(import_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageRequestForStdlibRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.BuildGoPackageTargetRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Build a `go_package`, `go_third_party_package`, or Go codegen target and its dependencies as\n`__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "BuildGoPackageTargetRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.check.check_go", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target.GoCodegenBuildRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go" + ], + "documentation": "The plugin hook to build/compile Go code.\n\nNote that you should still use the normal `GenerateSourcesRequest` plugin hook from\n`pants.engine.target` too, which is necessary for integrations like the `export-codegen` goal.\nHowever, that is only helpful to generate the raw `.go` files; you also need to use this\nplugin hook so that Pants knows how to compile those generated `.go` files.\n\nSubclass this and set the class property `generate_from`. Define a rule that goes from your\nsubclass to `BuildGoPackageRequest` - the request must result in valid compilation, which you\nshould test for by using `rule_runner.request(BuiltGoPackage, BuildGoPackageRequest)` in your\ntests. For example, make sure to set up any third-party packages needed by the generated code.\nFinally, register `UnionRule(GoCodegenBuildRequest, MySubclass)`.", + "is_union": true, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "GoCodegenBuildRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [ + "GoCodegenBuildProtobufRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_ResolveStdlibEmbedConfigRequest(package: 'GoStdLibPackage')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigRequest", + "provider": "pants.backend.go.util_rules.build_pkg_target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.build_pkg_target._ResolveStdlibEmbedConfigResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.build_pkg_target", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_ResolveStdlibEmbedConfigResult(embed_config: 'EmbedConfig | None', stderr: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.build_pkg_target", + "name": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompileRequest(import_path: 'str', pkg_name: 'str', digest: 'Digest', build_opts: 'GoBuildOptions', dir_path: 'str', cgo_files: 'tuple[str, ...]', cgo_flags: 'CGoCompilerFlags', c_files: 'tuple[str, ...]' = (), cxx_files: 'tuple[str, ...]' = (), objc_files: 'tuple[str, ...]' = (), fortran_files: 'tuple[str, ...]' = (), s_files: 'tuple[str, ...]' = (), is_stdlib: 'bool' = False, transitive_prebuilt_object_files: 'tuple[Digest, frozenset[str]] | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompileResult(digest: 'Digest', output_go_files: 'tuple[str, ...]', output_obj_files: 'tuple[str, ...]', include_module_sources_with_output: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.cgo.CGoCompilerWrapperScript": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoCompilerWrapperScript(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsFlagRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckCompilerSupportsFlagRequest(cc: 'str', flag: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsFlagRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ] + }, + "pants.backend.go.util_rules.cgo.CheckCompilerSupportsOptionResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.cgo", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CheckCompilerSupportsOptionResult(supports_flag: 'bool')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "SetupCompilerCmdRequest(compiler: 'tuple[str, ...]', include_dir: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdRequest", + "provider": "pants.backend.go.util_rules.cgo", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo.SetupCompilerCmdResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.cgo" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "SetupCompilerCmdResult(args: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo", + "name": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo.setup_compiler_cmd" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo_binaries.CGoBinaryPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoBinaryPathRequest(binary_name: 'str', binary_path_test: 'BinaryPathTest | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_binaries", + "name": "CGoBinaryPathRequest", + "provider": "pants.backend.go.util_rules.cgo_binaries", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Request resolution of pkg-config arguments into CFLAGS and LDFLAGS.", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsRequest", + "provider": "pants.backend.go.util_rules.cgo_pkgconfig", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.cgo_pkgconfig.CGoPkgConfigFlagsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.cgo_pkgconfig" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "CGoPkgConfigFlagsResult(cflags: 'tuple[str, ...]', ldflags: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.cgo_pkgconfig", + "name": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Apply code coverage to a package using `go tool cover`.", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ApplyCodeCoverageResult(digest: 'Digest', cover_file_metadatas: 'tuple[FileCodeCoverageMetadata, ...]', go_files: 'tuple[str, ...]', cgo_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ApplyCodeCoverageToFileRequest(digest: 'Digest', go_file: 'str', cover_go_file: 'str', mode: 'GoCoverMode', cover_var: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.ApplyCodeCoverageToFileResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.coverage" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ApplyCodeCoverageToFileResult(digest: 'Digest', cover_go_file: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage.go_apply_code_coverage" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GenerateCoverageSetupCodeRequest(packages: 'FrozenOrderedSet[BuiltGoPackageCodeCoverageMetadata]', cover_mode: 'GoCoverMode')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeRequest", + "provider": "pants.backend.go.util_rules.coverage", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.coverage.GenerateCoverageSetupCodeResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.coverage", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GenerateCoverageSetupCodeResult(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage", + "name": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageProfileToHtmlRequest(raw_coverage_profile: 'bytes', description_of_origin: 'str', sources_digest: 'Digest', sources_dir_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlRequest", + "provider": "pants.backend.go.util_rules.coverage_html", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_html.RenderGoCoverageProfileToHtmlResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.coverage_html", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageProfileToHtmlResult(html_output: 'bytes')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_html", + "name": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ] + }, + "pants.backend.go.util_rules.coverage_output.GoCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "GoCoverageDataCollection", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageReportRequest(raw_report: 'GoCoverageData')", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportRequest", + "provider": "pants.backend.go.util_rules.coverage_output", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.coverage_output.RenderGoCoverageReportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.coverage_output", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "RenderGoCoverageReportResult(coverage_report: 'FilesystemCoverageReport', html_report: 'FilesystemCoverageReport | None' = None)", + "is_union": false, + "module": "pants.backend.go.util_rules.coverage_output", + "name": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Metadata for a Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FallibleFirstPartyPkgDigest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.first_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "The source files for a Go package, but fallible if embed preparation failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FirstPartyPkgAnalysisRequest(address: 'Address', build_opts: 'GoBuildOptions', extra_build_tags: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgDigestRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FirstPartyPkgDigestRequest(address: 'Address', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgDigestRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.first_party_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "The derived import path of a first party package, based on its owning go.mod.\n\nUse `FirstPartyPkgAnalysis` instead for more detailed information like parsed imports. Use\n`FirstPartyPkgDigest` for source files and embed config.", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.first_party_pkg.FirstPartyPkgImportPathRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FirstPartyPkgImportPathRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.first_party_pkg", + "name": "FirstPartyPkgImportPathRequest", + "provider": "pants.backend.go.util_rules.first_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package" + ] + }, + "pants.backend.go.util_rules.go_bootstrap.GoBootstrap": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoBootstrap(go_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_bootstrap", + "name": "GoBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.AllGoModTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "AllGoModTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.go_mod.GoModInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.go_mod" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoModInfo(import_path: 'str', digest: 'Digest', mod_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfo", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.GoModInfoRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.determine_go_mod_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoModInfoRequest(source: 'Address | GoModSourcesField')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "GoModInfoRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "NearestAncestorGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.NearestAncestorGoModResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.go_mod", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "NearestAncestorGoModResult(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoMod": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.go_mod" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "OwningGoMod(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoMod", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.go_mod.OwningGoModRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "OwningGoModRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.go_mod", + "name": "OwningGoModRequest", + "provider": "pants.backend.go.util_rules.go_mod", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod" + ] + }, + "pants.backend.go.util_rules.goroot.GoRoot": { + "consumed_by_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Path to the Go installation (the `GOROOT`).", + "is_union": false, + "module": "pants.backend.go.util_rules.goroot", + "name": "GoRoot", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.goroot.setup_goroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.implicit_linker_deps.SdkImplicitLinkerDependenciesHook": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "dependencies": [ + "pants.backend.go.util_rules.link_defs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.go.util_rules.implicit_linker_deps", + "name": "SdkImplicitLinkerDependenciesHook", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "ImplicitLinkerDependenciesHook", + "used_in_rules": [] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackages": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.import_analysis" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A mapping of standard library import paths to an analysis of the package at that import\npath.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_analysis.GoStdLibPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoStdLibPackagesRequest(with_race_detector: 'bool', cgo_enabled: 'bool' = True)", + "is_union": false, + "module": "pants.backend.go.util_rules.import_analysis", + "name": "GoStdLibPackagesRequest", + "provider": "pants.backend.go.util_rules.import_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.import_config", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "An `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfig", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.import_config.ImportConfigRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.import_config.generate_import_config" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Create an `importcfg` file associating import paths to their `__pkg__.a` files.", + "is_union": false, + "module": "pants.backend.go.util_rules.import_config", + "name": "ImportConfigRequest", + "provider": "pants.backend.go.util_rules.import_config", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkGoBinaryRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Link a Go binary from package archives and an import configuration.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkGoBinaryRequest", + "provider": "pants.backend.go.util_rules.link", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkedGoBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.link", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A linked Go binary stored in a `Digest`.", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkedGoBinary", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.link.LinkerSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "LinkerSetup(digest: 'Digest', extld_wrapper_path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.link", + "name": "LinkerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.link.setup_go_linker" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ImplicitLinkerDependencies(digest: 'Digest', import_paths_to_pkg_a_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.link_defs.ImplicitLinkerDependenciesHook": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ImplicitLinkerDependenciesHook(build_opts: 'GoBuildOptions')", + "is_union": true, + "module": "pants.backend.go.util_rules.link_defs", + "name": "ImplicitLinkerDependenciesHook", + "provider": "pants.backend.go.util_rules.link_defs", + "returned_by_rules": [], + "union_members": [ + "SdkImplicitLinkerDependenciesHook" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.pkg_analyzer.PackageAnalyzerSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go" + ], + "documentation": "PackageAnalyzerSetup(digest: Digest, path: str)", + "is_union": false, + "module": "pants.backend.go.util_rules.pkg_analyzer", + "name": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkProcess": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkProcess(command: 'Iterable[str]', *, description: 'str', env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), working_dir: 'str | None' = None, output_files: 'Iterable[str]' = (), output_directories: 'Iterable[str]' = (), allow_downloads: 'bool' = False, replace_sandbox_root_in_args: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkProcess", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkRunSetup": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.setup_go_sdk_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkRunSetup(digest: 'Digest', script: 'FileContent')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkToolIDRequest(tool_name: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDRequest", + "provider": "pants.backend.go.util_rules.sdk", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.sdk.GoSdkToolIDResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.sdk" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GoSdkToolIDResult(tool_name: 'str', tool_id: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.sdk", + "name": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.sdk.compute_go_tool_id" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.link.link_go_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GenerateTestMainRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GenerateTestMainRequest(digest: 'Digest', test_paths: 'FrozenOrderedSet[str]', xtest_paths: 'FrozenOrderedSet[str]', import_path: 'str', register_cover: 'bool', address: 'Address')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GenerateTestMainRequest", + "provider": "pants.backend.go.util_rules.tests_analysis", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.tests_analysis.GeneratedTestMain": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.tests_analysis", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GeneratedTestMain(digest: 'Digest', has_tests: 'bool', has_xtests: 'bool', failed_exit_code_and_stderr: 'tuple[int, str] | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.tests_analysis", + "name": "GeneratedTestMain", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.tests_analysis.generate_testmain" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.test.prepare_go_test_binary" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackages": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "All the packages downloaded from a go.mod, along with a digest of the downloaded files.\n\nThe digest has files in the format `gopath/pkg/mod`, which is what `GoSdkProcess` sets `GOPATH`\nto. This means that you can include the digest in a process and Go will properly consume it as\nthe `GOPATH`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AllThirdPartyPackagesRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AllThirdPartyPackagesRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AllThirdPartyPackagesRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyModuleRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AnalyzeThirdPartyModuleRequest(go_mod_address: 'Address', go_mod_digest: 'Digest', go_mod_path: 'str', import_path: 'str', name: 'str', version: 'str', minimum_go_version: 'str | None', build_opts: 'GoBuildOptions')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyModuleRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzeThirdPartyPackageRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AnalyzeThirdPartyPackageRequest(pkg_json: 'FrozenDict[str, Any]', module_sources_digest: 'Digest', module_sources_path: 'str', module_import_path: 'str', package_path: 'str', minimum_go_version: 'str | None')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzeThirdPartyPackageRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.AnalyzedThirdPartyModule": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "AnalyzedThirdPartyModule(packages: 'FrozenOrderedSet[ThirdPartyPkgAnalysis]')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.FallibleThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.go.util_rules.third_party_pkg", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Metadata for a third-party Go package, but fallible if our analysis failed.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptors": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.go.util_rules.third_party_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ModuleDescriptors(modules: 'FrozenOrderedSet[ModuleDescriptor]', go_mods_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptors", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ModuleDescriptorsRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ModuleDescriptorsRequest(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ModuleDescriptorsRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.third_party_pkg" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "All the info and files needed to build a third-party package.\n\nThe digest only contains the files for the package, with all prefixes stripped.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.go.util_rules.third_party_pkg.ThirdPartyPkgAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.third_party_pkg.extract_package_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Request the info and digest needed to build a third-party package.\n\nThe package's module must be included in the input `go.mod`/`go.sum`.", + "is_union": false, + "module": "pants.backend.go.util_rules.third_party_pkg", + "name": "ThirdPartyPkgAnalysisRequest", + "provider": "pants.backend.go.util_rules.third_party_pkg", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request" + ] + }, + "pants.backend.google_cloud_function.python.rules.PythonGoogleCloudFunctionFieldSet": { + "consumed_by_rules": [ + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.google_cloud_function.python" + ], + "documentation": "PythonGoogleCloudFunctionFieldSet(address: 'Address', handler: 'PythonGoogleCloudFunctionHandlerField', runtime: 'PythonGoogleCloudFunctionRuntime', complete_platforms: 'PythonFaaSCompletePlatforms', type: 'PythonGoogleCloudFunctionType', output_path: 'OutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.google_cloud_function.python.rules", + "name": "PythonGoogleCloudFunctionFieldSet", + "provider": "pants.backend.google_cloud_function.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.FirstPartyHelmChartMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [ + "pants.backend.helm.util_rules.chart_metadata" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.chart.InferHelmChartDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.chart", + "name": "InferHelmChartDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.deployment.AnalyseHelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "AnalyseHelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "AnalyseHelmDeploymentRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.helm.dependency_inference.deployment", + "pants.build_graph.address" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "A mapping between `helm_deployment` target addresses and tuples made up of a Docker image\nreference and a `docker_image` target address.\n\nThe tuples of Docker image references and addresses are stored in a YAML index so we can track\nthe locations in which the Docker image refs appear in the deployment files.", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.FirstPartyHelmDeploymentMappingRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FirstPartyHelmDeploymentMappingRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "FirstPartyHelmDeploymentMappingRequest", + "provider": "pants.backend.helm.dependency_inference.deployment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ] + }, + "pants.backend.helm.dependency_inference.deployment.HelmDeploymentReport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.dependency_inference.deployment", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmDeploymentReport(address: 'Address', image_refs: 'FrozenYamlIndex[str]')", + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping" + ] + }, + "pants.backend.helm.dependency_inference.deployment.InferHelmDeploymentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.deployment", + "name": "InferHelmDeploymentDependenciesRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.dependency_inference.unittest.InferHelmUnitTestChartDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.dependency_inference.unittest", + "name": "InferHelmUnitTestChartDependencyRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.deploy.DeployHelmDeploymentFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "DeployHelmDeploymentFieldSet(address: 'Address', chart: 'HelmDeploymentChartField', description: 'DescriptionField', release_name: 'HelmDeploymentReleaseNameField', namespace: 'HelmDeploymentNamespaceField', sources: 'HelmDeploymentSourcesField', skip_crds: 'HelmDeploymentSkipCrdsField', no_hooks: 'HelmDeploymentNoHooksField', dependencies: 'HelmDeploymentDependenciesField', values: 'HelmDeploymentValuesField', post_renderers: 'HelmDeploymentPostRenderersField', enable_dns: 'HelmDeploymentEnableDNSField', timeout: 'HelmDeploymentTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.goals.deploy", + "name": "DeployHelmDeploymentFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.lint.HelmLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.lint", + "name": "HelmLintRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.package.HelmPackageFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.goals.package.run_helm_package" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmPackageFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', description: 'DescriptionField', version: 'HelmChartVersionField', output_path: 'HelmChartOutputPathField')", + "is_union": false, + "module": "pants.backend.helm.goals.package", + "name": "HelmPackageFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.HelmPublishFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "HelmPublishFieldSet(address: 'Address', chart: 'HelmChartMetaSourceField', sources: 'HelmChartSourcesField', dependencies: 'HelmChartDependenciesField', description: 'DescriptionField', version: 'HelmChartVersionField', registries: 'HelmRegistriesField', repository: 'HelmChartRepositoryField', skip_push: 'HelmSkipPushField')", + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "HelmPublishFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.goals.publish.PublishHelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.publish.publish_helm_chart" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.goals.publish", + "name": "PublishHelmChartRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.helm.goals.tailor.PutativeHelmTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.helm.goals.tailor.find_putative_helm_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "PutativeHelmTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.goals.tailor", + "name": "PutativeHelmTargetsRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.helm.resolve.artifacts.HelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "HelmArtifact", + "provider": "pants.backend.helm.resolve.artifacts", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ResolvedHelmArtifact": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.helm.resolve.artifacts" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ResolvedHelmArtifact(requirement: 'HelmArtifactRequirement', address: 'Address', location_url: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ] + }, + "pants.backend.helm.resolve.artifacts.ThirdPartyHelmArtifactMapping": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.resolve.artifacts", + "name": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.resolve.fetch.FetchHelmArtifactRequest": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FetchHelmArtifactRequest(field_set: 'HelmArtifactFieldSet', description_of_origin: 'str')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchHelmArtifactRequest", + "provider": "pants.backend.helm.resolve.fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.resolve.fetch.FetchedHelmArtifact": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.resolve.fetch", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FetchedHelmArtifact(artifact: 'ResolvedHelmArtifact', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.resolve.fetch", + "name": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.resolve.fetch.fetch_helm_artifact" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.helm.HelmSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.helm", + "name": "HelmSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.HelmKubeParserSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_k8s_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.k8s_parser.ParseKubeManifestRequest": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ParseKubeManifestRequest(file: 'FileEntry')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParseKubeManifestRequest", + "provider": "pants.backend.helm.subsystems.k8s_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser.ParsedKubeManifest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.helm.subsystems.k8s_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ParsedKubeManifest(filename: 'str', found_image_refs: 'tuple[ParsedImageRefEntry, ...]')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.subsystems.k8s_parser._HelmKubeParserTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "_HelmKubeParserTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.k8s_parser", + "name": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRenderer": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmPostRenderer(*, exe: 'str', digest: 'Digest', description_of_origin: 'str', env: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.subsystems.post_renderer.HelmPostRendererSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_post_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer.SetupHelmPostRenderer": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.post_renderer", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Request for a post-renderer process that will perform a series of replacements in the\ngenerated files.", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.post_renderer._HelmPostRendererTool": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "_HelmPostRendererTool(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.helm.subsystems.post_renderer", + "name": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestPluginBinding": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "dependencies": [ + "pants.backend.helm.util_rules.tool" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestPluginBinding", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExternalHelmPluginBinding", + "used_in_rules": [] + }, + "pants.backend.helm.subsystems.unittest.HelmUnitTestSubsystem": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_HelmUnitTestRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.subsystems.unittest", + "name": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "construct_scope_helm_unittest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmChartTargets": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_chart_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmDeploymentTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.AllHelmUnitTestTestTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.target_types.all_helm_unittest_test_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.target_types.HelmChartMetaSourceField": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.target_types", + "name": "HelmChartMetaSourceField", + "provider": "pants.backend.helm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestFieldSet": { + "consumed_by_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmUnitTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'HelmUnitTestSourceField', dependencies: 'HelmUnitTestDependenciesField', strict: 'HelmUnitTestStrictField', timeout: 'HelmUnitTestTimeoutField')", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestFieldSet", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.helm.test.unittest.HelmUnitTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.helm.test.unittest.HelmUnitTestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.test.unittest", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmUnitTestSetup(chart: 'HelmChart', chart_root: 'HelmChartRoot', process: 'HelmProcess', reports_output_directory: 'str', snapshot_output_directories: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestSetup", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest" + ] + }, + "pants.backend.helm.test.unittest.HelmUnitTestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmUnitTestSetupRequest(field_set: 'HelmUnitTestFieldSet', description: 'str', force: 'bool', update_snapshots: 'bool', timeout_seconds: 'int | None')", + "is_union": false, + "module": "pants.backend.helm.test.unittest", + "name": "HelmUnitTestSetupRequest", + "provider": "pants.backend.helm.test.unittest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest" + ] + }, + "pants.backend.helm.util_rules.chart.FindHelmDeploymentChart": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.find_chart_for_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "FindHelmDeploymentChart(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "FindHelmDeploymentChart", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChart": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.chart", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChart(address: 'Address', info: 'HelmChartMetadata', snapshot: 'Snapshot', artifact: 'ResolvedHelmArtifact | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChart", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ] + }, + "pants.backend.helm.util_rules.chart.HelmChartRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartRequest(field_set: 'HelmChartFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart", + "name": "HelmChartRequest", + "provider": "pants.backend.helm.util_rules.chart", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.renderer.render_helm_chart" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.HelmChartMetadata": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.target_types", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartMetadata(name: 'str', version: 'str', api_version: 'str' = 'v2', type: 'ChartType' = , kube_version: 'str | None' = None, app_version: 'str | None' = None, icon: 'str | None' = None, description: 'str | None' = None, dependencies: 'tuple[HelmChartDependency, ...]' = , keywords: 'tuple[str, ...]' = , sources: 'tuple[str, ...]' = , home: 'str | None' = None, maintainers: 'tuple[HelmChartMaintainer, ...]' = , deprecated: 'bool | None' = None, annotations: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm, pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.chart_metadata.ParseHelmChartMetadataDigest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Request to parse the Helm chart definition file (i.e. `Chart.yaml`) from the given digest.\n\nThe definition file is expected to be at the root of the digest.", + "is_union": false, + "module": "pants.backend.helm.util_rules.chart_metadata", + "name": "ParseHelmChartMetadataDigest", + "provider": "pants.backend.helm.util_rules.chart_metadata", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field" + ] + }, + "pants.backend.helm.util_rules.post_renderer.HelmDeploymentPostRendererRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmDeploymentPostRendererRequest(field_set: 'HelmDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.helm.util_rules.post_renderer", + "name": "HelmDeploymentPostRendererRequest", + "provider": "pants.backend.helm.util_rules.post_renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.HelmDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmDeploymentRequest(field_set: 'HelmDeploymentFieldSet', *, cmd: 'HelmDeploymentCmd', description: 'str', extra_argv: 'Iterable[str] | None' = None, post_renderer: 'HelmPostRenderer | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "HelmDeploymentRequest", + "provider": "pants.backend.helm.util_rules.renderer", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "pants.backend.helm.goals.deploy.run_helm_deploy" + ] + }, + "pants.backend.helm.util_rules.renderer.RenderedHelmFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "RenderedHelmFiles(address: 'Address', chart: 'HelmChart', snapshot: 'Snapshot', post_processed: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.dependency_inference.deployment.analyse_deployment" + ] + }, + "pants.backend.helm.util_rules.renderer._HelmDeploymentProcessWrapper": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.run_renderer" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.renderer", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Intermediate representation of a `HelmProcess` that will produce a fully rendered set of\nmanifests from a given chart.\n\nThe encapsulated `process` will be side-effecting dependening on the `cmd` that was originally requested.\n\nThis is meant to only be used internally by this module.", + "is_union": false, + "module": "pants.backend.helm.util_rules.renderer", + "name": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.sources.HelmChartRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.helm.util_rules.sources" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartRoot(path: 'str')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRoot", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartRootRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.find_chart_source_root" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartRootRequest(source: 'HelmChartMetaSourceField')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartRootRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.helm.util_rules.sources", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartSourceFiles(snapshot: 'Snapshot', unrooted_files: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.sources.HelmChartSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.sources.get_helm_source_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmChartSourceFilesRequest(field_set: 'HelmChartFieldSet', include_resources: 'bool', include_files: 'bool', include_metadata: 'bool')", + "is_union": false, + "module": "pants.backend.helm.util_rules.sources", + "name": "HelmChartSourceFilesRequest", + "provider": "pants.backend.helm.util_rules.sources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.chart.get_helm_chart" + ] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginBinding": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Union type allowing Pants to discover global external Helm plugins.", + "is_union": true, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginBinding", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [ + "HelmUnitTestPluginBinding" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.tool.ExternalHelmPluginRequest": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "dependencies": [ + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "Helper class to create a download request for an external Helm plugin.", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmBinary": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmBinary(path: 'str', *, helm_env: 'Mapping[str, str]', local_env: 'Mapping[str, str]', immutable_input_digests: 'Mapping[str, Digest]') -> 'None'", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmBinary", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmPlugin": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmPlugin(info: 'HelmPluginInfo', platform: 'Platform', snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugin", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.download_external_helm_plugin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ] + }, + "pants.backend.helm.util_rules.tool.HelmPlugins": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.setup_helm" + ], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmPlugins", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.backend.helm.util_rules.tool.all_helm_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.helm.util_rules.tool.HelmProcess": { + "consumed_by_rules": [ + "pants.backend.helm.util_rules.tool.helm_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "HelmProcess(argv: 'Iterable[str]', *, description: 'str', input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), level: 'LogLevel' = , output_directories: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, extra_env: 'Mapping[str, str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_append_only_caches: 'Mapping[str, str] | None' = None, cache_scope: 'ProcessCacheScope | None' = None, timeout_seconds: 'int | None' = None)", + "is_union": false, + "module": "pants.backend.helm.util_rules.tool", + "name": "HelmProcess", + "provider": "pants.backend.helm.util_rules.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "HandleJavacOptionsRequest(bsp_target_id: pants.bsp.spec.base.BuildTargetIdentifier)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsRequest", + "provider": "pants.backend.java.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.HandleJavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.java.bsp.rules", + "pants.base.build_root" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "HandleJavacOptionsResult(item: pants.backend.java.bsp.spec.JavacOptionsItem)", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.handle_bsp_java_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ] + }, + "pants.backend.java.bsp.rules.JavaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPCompileRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPLanguageSupport", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavaBSPResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.java.bsp.rules.JavacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.bsp.rules", + "name": "JavacOptionsHandlerMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.java.bsp.spec.JavacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.java.bsp.spec" + ], + "dependents": [], + "documentation": "JavacOptionsResult(items: 'tuple[JavacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.java.bsp.spec", + "name": "JavacOptionsResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_javac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.compile.javac.CompileJavaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.compile.javac", + "name": "CompileJavaSourceRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.FallibleJavaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.java.dependency_inference.java_parser", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "FallibleJavaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaParserCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.java_parser.JavaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors" + ] + }, + "pants.backend.java.dependency_inference.java_parser.JavaSourceDependencyAnalysisRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaSourceDependencyAnalysisRequest(source_files: 'SourceFiles')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.java_parser", + "name": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java, pants.backend.java.dependency_inference.java_parser", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.InferJavaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "InferJavaSourceDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.java.dependency_inference.rules", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaInferredDependencies(dependencies: 'FrozenOrderedSet[Address]', exports: 'FrozenOrderedSet[Address]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.rules.JavaInferredDependenciesAndExportsRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaInferredDependenciesAndExportsRequest(source: 'SourcesField')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.rules", + "name": "JavaInferredDependenciesAndExportsRequest", + "provider": "pants.backend.java.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis" + ] + }, + "pants.backend.java.dependency_inference.symbol_mapper.AllJavaTargets": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "AllJavaTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.symbol_mapper.FirstPartyJavaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.dependency_inference.symbol_mapper", + "name": "FirstPartyJavaTargetsMappingRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.java.dependency_inference.types.JavaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaSourceDependencyAnalysis(declared_package: 'str | None', imports: 'Sequence[JavaImport]', top_level_types: 'Sequence[str]', consumed_types: 'Sequence[str]', export_types: 'Sequence[str]')", + "is_union": false, + "module": "pants.backend.java.dependency_inference.types", + "name": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols" + ] + }, + "pants.backend.java.goals.check.JavacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.check.javac_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.goals.check", + "name": "JavacCheckRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.java.goals.tailor.PutativeJavaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "PutativeJavaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.java.goals.tailor", + "name": "PutativeJavaTargetsRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatRequest", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.rules.GoogleJavaFormatToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.rules", + "name": "GoogleJavaFormatToolLockfileSentinel", + "provider": "pants.backend.experimental.java.lint.google_java_format, pants.backend.java.lint.google_java_format.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt" + ] + }, + "pants.backend.java.lint.google_java_format.skip_field.SkipGoogleJavaFormatField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.skip_field", + "name": "SkipGoogleJavaFormatField", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.java.lint.google_java_format.subsystem.GoogleJavaFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java.lint.google_java_format" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.lint.google_java_format.subsystem", + "name": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "returned_by_rules": [ + "construct_scope_google_java_format" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.java_infer.JavaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.java_infer", + "name": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_java_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.javac.JavacSubsystem": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.javac", + "name": "JavacSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_javac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.subsystems.junit.JUnit": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_JunitTestRequest", + "pants.jvm.test.junit.generate_junit_lockfile_request", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.java.subsystems.junit", + "name": "JUnit", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_junit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.java.target_types.JavaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JavaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JavaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'JavaSourceField')", + "is_union": false, + "module": "pants.backend.java.target_types", + "name": "JavaFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.javascript.dependency_inference.rules.InferJSDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "InferJSDependenciesRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.javascript.dependency_inference.rules.InferNodePackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "InferNodePackageDependenciesRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.javascript.dependency_inference.rules.NodePackageCandidateMap": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.javascript.dependency_inference.rules" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "NodePackageCandidateMap", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ] + }, + "pants.backend.javascript.dependency_inference.rules.RequestNodePackagesCandidateMap": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "RequestNodePackagesCandidateMap(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.dependency_inference.rules", + "name": "RequestNodePackagesCandidateMap", + "provider": "pants.backend.javascript.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies" + ] + }, + "pants.backend.javascript.install_node_package.InstalledNodePackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.javascript.install_node_package", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "InstalledNodePackage(project_env: 'NodeJsProjectEnvironment', digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.install_node_package", + "name": "InstalledNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.install_node_package.InstalledNodePackageRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "InstalledNodePackageRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.install_node_package", + "name": "InstalledNodePackageRequest", + "provider": "pants.backend.javascript.install_node_package", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.install_node_package.InstalledNodePackageWithSource": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.javascript.install_node_package", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "InstalledNodePackageWithSource(project_env: 'NodeJsProjectEnvironment', digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.install_node_package", + "name": "InstalledNodePackageWithSource", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ] + }, + "pants.backend.javascript.nodejs_project.AllNodeJSProjects": { + "consumed_by_rules": [ + "pants.backend.javascript.resolve.resolve_for_package", + "pants.backend.javascript.resolve.resolve_to_projects" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.nodejs_project", + "name": "AllNodeJSProjects", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.nodejs_project_environment.NodeJSProjectEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "NodeJSProjectEnvironmentRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.nodejs_project_environment", + "name": "NodeJSProjectEnvironmentRequest", + "provider": "pants.backend.javascript.nodejs_project_environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ] + }, + "pants.backend.javascript.nodejs_project_environment.NodeJsProjectEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.javascript.nodejs_project_environment" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "NodeJsProjectEnvironment(resolve: 'ChosenNodeResolve', package: 'OwningNodePackage | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.nodejs_project_environment", + "name": "NodeJsProjectEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address" + ] + }, + "pants.backend.javascript.nodejs_project_environment.NodeJsProjectEnvironmentProcess": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "NodeJsProjectEnvironmentProcess(env: 'NodeJsProjectEnvironment', args: 'Iterable[str]', description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), output_files: 'tuple[str, ...]' = (), output_directories: 'tuple[str, ...]' = (), per_package_caches: 'FrozenDict[str, str]' = , timeout_seconds: 'int | None' = None, extra_env: 'FrozenDict[str, str]' = )", + "is_union": false, + "module": "pants.backend.javascript.nodejs_project_environment", + "name": "NodeJsProjectEnvironmentProcess", + "provider": "pants.backend.javascript.nodejs_project_environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.package_json.AllPackageJson": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.javascript.package_json.all_package_json_names", + "pants.backend.javascript.package_json.pnpm_workspace_files" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "AllPackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.all_package_json" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.AllPackageJsonNames": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.generate_node_package_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "Used to not invalidate all generated node package targets when any package.json contents are\nchanged.", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "AllPackageJsonNames", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.all_package_json_names" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.FirstPartyNodePackageTargets": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "pants.backend.javascript.resolve.resolve_to_first_party_node_package" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "FirstPartyNodePackageTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.all_first_party_node_package_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.GenerateNodePackageTargets": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.generate_node_package_targets" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "GenerateNodePackageTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.OwningNodePackage": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.javascript.package_json", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "OwningNodePackage(target: 'Target | None' = None, third_party: 'tuple[Target, ...]' = ())", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "OwningNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.find_owning_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment", + "pants.backend.javascript.resolve.resolve_for_package" + ] + }, + "pants.backend.javascript.package_json.OwningNodePackageRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.find_owning_package" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "OwningNodePackageRequest(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "OwningNodePackageRequest", + "provider": "pants.backend.javascript.package_json", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment", + "pants.backend.javascript.resolve.resolve_for_package" + ] + }, + "pants.backend.javascript.package_json.PackageJson": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.javascript.package_json", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "PackageJson(content: 'FrozenDict[str, Any]', name: 'str', version: 'str | None', snapshot: 'Snapshot', workspaces: 'tuple[str, ...]' = (), module: \"Literal['commonjs', 'module'] | None\" = None, dependencies: 'FrozenDict[str, str]' = , package_manager: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.package_json_for_source", + "pants.backend.javascript.package_json.parse_package_json" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.generate_node_package_targets", + "pants.backend.javascript.package_json.read_package_jsons", + "pants.backend.javascript.package_json.script_entrypoints_for_source", + "pants.backend.javascript.package_json.subpath_imports_for_source" + ] + }, + "pants.backend.javascript.package_json.PackageJsonEntryPoints": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.javascript.package_json" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "See https://nodejs.org/api/packages.html#package-entry-points and\nhttps://docs.npmjs.com/cli/v9/configuring-npm/package-json#browser.", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonEntryPoints", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.script_entrypoints_for_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies" + ] + }, + "pants.backend.javascript.package_json.PackageJsonForGlobs": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonForGlobs", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.read_package_jsons" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.all_package_json", + "pants.backend.javascript.package_json.package_json_for_source" + ] + }, + "pants.backend.javascript.package_json.PackageJsonImports": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata" + ], + "dependencies": [ + "pants.backend.javascript.package_json" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "https://nodejs.org/api/packages.html#subpath-imports.", + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonImports", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.subpath_imports_for_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.package_json.PackageJsonSourceField": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.package_json_for_source", + "pants.backend.javascript.package_json.script_entrypoints_for_source", + "pants.backend.javascript.package_json.subpath_imports_for_source" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PackageJsonSourceField", + "provider": "pants.backend.javascript.package_json", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.javascript.package_json.generate_node_package_targets", + "pants.backend.javascript.package_json.script_entrypoints_for_source", + "pants.backend.javascript.package_json.subpath_imports_for_source" + ] + }, + "pants.backend.javascript.package_json.PnpmWorkspaces": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.package_json", + "name": "PnpmWorkspaces", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.package_json.pnpm_workspace_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.resolve.ChosenNodeResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.javascript.resolve" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "ChosenNodeResolve(project: 'NodeJSProject')", + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "ChosenNodeResolve", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.resolve.resolve_for_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ] + }, + "pants.backend.javascript.resolve.FirstPartyNodePackageResolves": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "FirstPartyNodePackageResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.resolve.resolve_to_first_party_node_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.resolve.NodeJSProjectResolves": { + "consumed_by_rules": [ + "pants.backend.javascript.resolve.resolve_to_first_party_node_package" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "NodeJSProjectResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.resolve.resolve_to_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.resolve.RequestNodeResolve": { + "consumed_by_rules": [ + "pants.backend.javascript.resolve.resolve_for_package" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "RequestNodeResolve(address: 'Address')", + "is_union": false, + "module": "pants.backend.javascript.resolve", + "name": "RequestNodeResolve", + "provider": "pants.backend.javascript.resolve", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment" + ] + }, + "pants.backend.javascript.subsystems.nodejs.CorepackToolDigest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.javascript.subsystems.nodejs" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "CorepackToolDigest(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "CorepackToolDigest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.CorepackToolRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "CorepackToolRequest(tool: 'str', input_digest: 'Digest', working_directory: 'str | None' = None, version: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "CorepackToolRequest", + "provider": "pants.backend.javascript.subsystems.nodejs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "EnvironmentAware", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "construct_env_aware_scope_nodejs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJS": { + "consumed_by_rules": [ + "construct_env_aware_scope_nodejs", + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "construct_scope_nodejs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSBinaries": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment" + ], + "dependencies": [ + "pants.core", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "NodeJSBinaries(binary_dir: 'str', digest: 'Digest | None' = None)", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSBinaries", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSBootstrap": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "NodeJSBootstrap(nodejs_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSBootstrap", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSProcessEnvironment": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "NodeJSProcessEnvironment(binaries: 'NodeJSBinaries', npm_config_cache: 'str', tool_binaries: 'BinaryShims', corepack_home: 'str', corepack_shims: 'str', corepack_env_vars: 'EnvironmentVars')", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSProcessEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.node_process_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs.NodeJSToolProcess": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "A request for a tool installed with NodeJS.", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "NodeJSToolProcess", + "provider": "pants.backend.javascript.subsystems.nodejs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ] + }, + "pants.backend.javascript.subsystems.nodejs.UserChosenNodeJSResolveAliases": { + "consumed_by_rules": [ + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.javascript.resolve.resolve_to_projects" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "UserChosenNodeJSResolveAliases", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs._BinaryPathsPerVersion": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs", + "name": "_BinaryPathsPerVersion", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs_infer.NodeJSInfer": { + "consumed_by_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs_infer", + "name": "NodeJSInfer", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "construct_scope_nodejs_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.javascript.subsystems.nodejs_tool.NodeJSToolRequest": { + "consumed_by_rules": [ + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "NodeJSToolRequest(tool: 'str', resolve: 'str | None', args: 'tuple[str, ...]', input_digest: 'Digest', description: 'str', level: 'LogLevel', options_scope: 'str', output_files: 'tuple[str, ...]' = (), output_directories: 'tuple[str, ...]' = (), append_only_caches: 'FrozenDict[str, str]' = , timeout_seconds: 'int | None' = None, extra_env: 'Mapping[str, str]' = )", + "is_union": false, + "module": "pants.backend.javascript.subsystems.nodejs_tool", + "name": "NodeJSToolRequest", + "provider": "pants.backend.javascript.subsystems.nodejs_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.backend.openapi.lint.spectral.rules.run_spectral" + ] + }, + "pants.backend.kotlin.compile.kotlinc.CompileKotlinSourceRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc", + "name": "CompileKotlinSourceRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.AllKotlincPluginTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.kotlin.compile.kotlinc_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPlugins(ids: 'tuple[str, ...]', classpath: 'ClasspathEntry', plugin_args: 'FrozenDict[str, tuple[str, ...]]')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.compile.kotlinc_plugins.KotlincPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlincPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.kotlin.compile.kotlinc_plugins", + "name": "KotlincPluginsRequest", + "provider": "pants.backend.kotlin.compile.kotlinc_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.FallibleKotlinSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "FallibleKotlinSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinParserToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin, pants.backend.kotlin.dependency_inference.kotlin_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles" + ] + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.KotlinSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinSourceDependencyAnalysis(package: 'str', imports: 'frozenset[KotlinImport]', named_declarations: 'frozenset[str]', consumed_symbols_by_scope: 'FrozenDict[str, frozenset[str]]', scopes: 'frozenset[str]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.kotlin_parser", + "name": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinRuntimeDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinRuntimeDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.InferKotlinSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "InferKotlinSourceDependencies", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.dependency_inference.rules" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.rules.KotlinRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.rules", + "name": "KotlinRuntimeForResolveRequest", + "provider": "pants.backend.kotlin.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency" + ] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.AllKotlinTargets": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.FirstPartyKotlinTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.dependency_inference.symbol_mapper", + "name": "FirstPartyKotlinTargetsMappingRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.check.KotlincCheckRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.check.kotlinc_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.goals.check", + "name": "KotlincCheckRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.goals.tailor.PutativeKotlinTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "PutativeKotlinTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.kotlin.goals.tailor", + "name": "PutativeKotlinTargetsRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintRequest", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.rules.KtlintToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.rules", + "name": "KtlintToolLockfileSentinel", + "provider": "pants.backend.experimental.kotlin.lint.ktlint, pants.backend.kotlin.lint.ktlint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt" + ] + }, + "pants.backend.kotlin.lint.ktlint.skip_field.SkipKtlintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.skip_field", + "name": "SkipKtlintField", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.kotlin.lint.ktlint.subsystem.KtlintSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin.lint.ktlint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.lint.ktlint.subsystem", + "name": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "returned_by_rules": [ + "construct_scope_ktlint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin.KotlinSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin", + "name": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlin_infer.KotlinInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlin_infer", + "name": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlin_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.subsystems.kotlinc.KotlincSubsystem": { + "consumed_by_rules": [ + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.subsystems.kotlinc", + "name": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "construct_scope_kotlinc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.kotlin.target_types.KotlinFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_KotlinFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'KotlinSourceField')", + "is_union": false, + "module": "pants.backend.kotlin.target_types", + "name": "KotlinFieldSet", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.InferKotlinJunitTestDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "InferKotlinJunitTestDependencyRequest", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.kotlin.test.junit" + ], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinJunitLibrariesForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin", + "returned_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.kotlin.test.junit.KotlinJunitLibrariesForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.kotlin" + ], + "documentation": "KotlinJunitLibrariesForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.kotlin.test.junit", + "name": "KotlinJunitLibrariesForResolveRequest", + "provider": "pants.backend.kotlin.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency" + ] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiDocumentDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiDocumentDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.InferOpenApiSourceDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "InferOpenApiSourceDependenciesRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.dependency_inference.OpenApiDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.openapi.dependency_inference", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": "OpenApiDependencies(dependencies: 'FrozenDict[str, frozenset[str]]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.dependency_inference.ParseOpenApiSources": { + "consumed_by_rules": [ + "pants.backend.openapi.dependency_inference.parse_openapi_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": "ParseOpenApiSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.dependency_inference", + "name": "ParseOpenApiSources", + "provider": "pants.backend.openapi.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.openapi.goals.tailor.find_putative_targets" + ] + }, + "pants.backend.openapi.goals.tailor.PutativeOpenApiTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": "PutativeOpenApiTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.openapi.goals.tailor", + "name": "PutativeOpenApiTargetsRequest", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.openapi_format.rules.OpenApiFormatRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.openapi_format.rules", + "name": "OpenApiFormatRequest", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.openapi_format.skip_field.SkipOpenApiFormatField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.openapi_format.skip_field", + "name": "SkipOpenApiFormatField", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.openapi_format.subsystem.OpenApiFormatSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.openapi_format" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.openapi_format.subsystem", + "name": "OpenApiFormatSubsystem", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "returned_by_rules": [ + "construct_scope_openapi_format" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.rules.SpectralRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.rules", + "name": "SpectralRequest", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.skip_field.SkipSpectralField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.skip_field", + "name": "SkipSpectralField", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.openapi.lint.spectral.subsystem.SpectralSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_SpectralRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.lint.spectral.subsystem", + "name": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "returned_by_rules": [ + "construct_scope_spectral" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.openapi.subsystems.openapi.OpenApiSubsystem": { + "consumed_by_rules": [ + "pants.backend.openapi.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.openapi" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.openapi.subsystems.openapi", + "name": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi", + "returned_by_rules": [ + "construct_scope_openapi" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.plugin_development.pants_requirements.GenerateFromPantsRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.plugin_development" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.plugin_development.pants_requirements", + "name": "GenerateFromPantsRequirementsRequest", + "provider": "pants.backend.plugin_development", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCode": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCode", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.CountLinesOfCodeSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_count_loc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.count_loc.SuccinctCodeCounter": { + "consumed_by_rules": [ + "pants.backend.project_info.count_loc.count_loc" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.count_loc", + "name": "SuccinctCodeCounter", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_scc" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.Dependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "Dependencies", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependencies.DependenciesSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependencies", + "name": "DependenciesSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.AddressToDependents": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "AddressToDependents(mapping: pants.util.frozendict.FrozenDict[Address, pants.util.ordered_set.FrozenOrderedSet[Address]])", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "AddressToDependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.map_addresses_to_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.Dependents": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.project_info", + "pants.backend.python.mixed_interpreter_constraints" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "Dependents", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.dependents.DependentsRequest": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.find_dependents" + ], + "dependencies": [], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "DependentsRequest(addresses: Iterable[Address], *, transitive: bool, include_roots: bool)", + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.backend.project_info.dependents.DependentsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.dependents.dependents_goal" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.dependents", + "name": "DependentsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_dependents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.Filedeps": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.base.build_root", + "pants.build_graph.address", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "Filedeps", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filedeps.FiledepsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filedeps.file_deps" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filedeps", + "name": "FiledepsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filedeps" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.filter_targets.FilterSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.filter_targets.filter_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.filter_targets", + "name": "FilterSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_filter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.Roots": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "Roots", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_roots.RootsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_roots", + "name": "RootsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.List": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "List", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.list_targets.ListSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.list_targets.list_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.list_targets", + "name": "ListSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_list" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsGoal", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.PathsSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.paths" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "PathsSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.paths.RootDestinationPair": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destination" + ], + "dependencies": [], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "RootDestinationPair(root: 'Target', destination: 'Target')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "RootDestinationPair", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ] + }, + "pants.backend.project_info.paths.RootDestinationsPair": { + "consumed_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ], + "dependencies": [], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "RootDestinationsPair(root: 'Target', destinations: 'Targets')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "RootDestinationsPair", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths" + ] + }, + "pants.backend.project_info.paths.SpecsPaths": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "SpecsPaths(paths: 'list[list[str]]')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "SpecsPaths", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destination" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ] + }, + "pants.backend.project_info.paths.SpecsPathsCollection": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "SpecsPathsCollection(spec_paths: 'list[SpecsPaths]')", + "is_union": false, + "module": "pants.backend.project_info.paths", + "name": "SpecsPathsCollection", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.paths.get_paths_between_root_and_destinations" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths" + ] + }, + "pants.backend.project_info.peek.Peek": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.console", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "Peek", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.PeekSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": "Display detailed target information in JSON form.", + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "PeekSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_peek" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.project_info.peek.TargetDatas": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.peek", + "name": "TargetDatas", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "pants.backend.project_info.peek.get_target_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.peek.peek" + ] + }, + "pants.backend.project_info.regex_lint.RegexLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintRequest", + "provider": "pants.backend.project_info", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.project_info.regex_lint.RegexLintSubsystem": { + "consumed_by_rules": [ + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.project_info.regex_lint.partition_inputs" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.project_info" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.project_info.regex_lint", + "name": "RegexLintSubsystem", + "provider": "pants.backend.project_info", + "returned_by_rules": [ + "construct_scope_regex_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.AllPythonTargets": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "AllPythonTargets(first_party: 'tuple[Target, ...]', third_party: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "AllPythonTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImpl": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A mapping of each resolve name to the first-party module names contained and their owning\naddresses.\n\nThis contains the modules from a specific implementation, e.g. a codegen backend. All\nimplementations then get merged.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.python, pants.backend.python", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonMappingImplMarker": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "An entry point for a specific implementation of mapping module names to owning targets for\nPython import dependency inference.\n\nAll implementations will be merged together. Any modules that show up in multiple\nimplementations will be marked ambiguous.", + "is_union": true, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonMappingImplMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "FirstPartyPythonTargetsMappingMarker", + "PythonProtobufMappingMarker", + "PythonThriftMappingMarker", + "PythonVCSVersionMappingMarker" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "FirstPartyPythonModuleMapping(resolves_to_modules_to_providers: 'FrozenDict[ResolveName, FrozenDict[str, Tuple[ModuleProvider, ...]]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.FirstPartyPythonTargetsMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "FirstPartyPythonTargetsMappingMarker", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "The target(s) that own a Python module.\n\nUp to 2 targets can unambiguously own the same module, if one is an implementation and the other\nis a .pyi type stub. It is ambiguous for >1 implementation target to own the same module, and\nthose targets will be put into `ambiguous` instead of `unambiguous`. Therefore, `unambiguous`\nshould never be >2; and only 1 of `unambiguous` and `ambiguous` should have targets.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.PythonModuleOwnersRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonModuleOwnersRequest(module: 'str', resolve: 'str | None', locality: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "PythonModuleOwnersRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.dependency_inference.module_mapper.ThirdPartyPythonModuleMapping": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A mapping of each resolve to the modules they contain and the addresses providing those\nmodules.", + "is_union": false, + "module": "pants.backend.python.dependency_inference.module_mapper", + "name": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsePythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ParsePythonDependenciesRequest(source: 'PythonSourceField', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsePythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.ParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.internals.native_dep_inference" + ], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ParsedPythonDependencies(imports: 'ParsedPythonImports', assets: 'ParsedPythonAssetPaths')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.parse_python_dependencies", + "name": "ParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.InferConftestDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferConftestDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferInitDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferInitDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.InferPythonImportDependencies": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "InferPythonImportDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.dependency_inference.rules.PythonImportDependenciesInferenceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": "PythonImportDependenciesInferenceFieldSet(address: 'Address', source: 'PythonSourceField', dependencies: 'PythonDependenciesField', resolve: 'PythonResolveField', interpreter_constraints: 'InterpreterConstraintsField')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "PythonImportDependenciesInferenceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "ResolvedParsedPythonDependencies(resolve_results: 'dict[str, ImportResolveResult]', assets: 'dict[str, ImportResolveResult]', explicit: 'ExplicitlyProvidedDependencies')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.ResolvedParsedPythonDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ResolvedParsedPythonDependenciesRequest(field_set: 'PythonImportDependenciesInferenceFieldSet', parsed_dependencies: 'ParsedPythonDependencies', resolve: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "ResolvedParsedPythonDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwnerRequest": { + "consumed_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "UnownedImportPossibleOwnerRequest(unowned_import: 'str', original_resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwnerRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.rules.UnownedImportPossibleOwners": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "UnownedImportPossibleOwners(value: 'list[tuple[Address, ResolveName]]')", + "is_union": false, + "module": "pants.backend.python.dependency_inference.rules", + "name": "UnownedImportPossibleOwners", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ] + }, + "pants.backend.python.dependency_inference.subsystem.PythonInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.dependency_inference.subsystem", + "name": "PythonInferSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_python_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.InferStevedoreNamespacesDependencies": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "InferStevedoreNamespacesDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.StevedoreExtensions": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": "A mapping of stevedore namespaces to a list of targets that provide them.\n\nEffectively, the targets are StevedoreExtension targets.", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.python_target_dependencies", + "name": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.rules.GenerateEntryPointsTxtFromStevedoreExtensionRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.rules", + "name": "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.AllStevedoreExtensionTargets": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreExtensionTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesField", + "provider": "pants.backend.experimental.python.framework.stevedore", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.framework.stevedore.target_types.StevedoreNamespacesProviderTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore" + ], + "documentation": "StevedoreNamespacesProviderTargetsRequest(stevedore_namespaces: 'StevedoreNamespacesField')", + "is_union": false, + "module": "pants.backend.python.framework.stevedore.target_types", + "name": "StevedoreNamespacesProviderTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension" + ] + }, + "pants.backend.python.goals.coverage_py.CoverageConfig": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "CoverageConfig(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageConfig", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSetup": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "CoverageSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.setup_coverage" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.CoverageSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "CoverageSubsystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_coverage_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.MergedCoverageData": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "MergedCoverageData(coverage_data: 'Digest', addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "MergedCoverageData", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.coverage_py.PytestCoverageDataCollection": { + "consumed_by_rules": [ + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.coverage_py", + "name": "PytestCoverageDataCollection", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CoverageDataCollection", + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.console" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.DumpPythonSourceAnalysisSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_python_dump_source_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.goals.debug_goals.PythonSourceAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": "Information on the inferred imports for a Python file, including all raw intermediate\nresults.", + "is_union": false, + "module": "pants.backend.python.goals.debug_goals", + "name": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ] + }, + "pants.backend.python.goals.export.ExportPluginOptions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.subsystem" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportPluginOptions", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginOption", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.ExportVenvsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ExportVenvsRequest(targets: 'Sequence[Target]')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "ExportVenvsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ExportRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.export.MaybeExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "MaybeExportResult(result: 'ExportResult | None')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "MaybeExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.export.VenvExportRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "VenvExportRequest(pex_request: 'PexRequest', dest_prefix: 'str', resolve_name: 'str', qualify_path_with_python_version: 'bool', editable_local_dists_digest: 'Digest | None' = None)", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "VenvExportRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.goals.export._ExportVenvForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_ExportVenvForResolveRequest(resolve: 'str')", + "is_union": false, + "module": "pants.backend.python.goals.export", + "name": "_ExportVenvForResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ] + }, + "pants.backend.python.goals.lockfile.GeneratePythonLockfile": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GeneratePythonLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', requirements: 'FrozenOrderedSet[str]', find_links: 'FrozenOrderedSet[str]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "GeneratePythonLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.KnownPythonUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "KnownPythonUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.PythonSyntheticLockfileTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "dependencies": [ + "pants.engine.internals.synthetic_targets" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Register the type used to create synthetic targets for Python lockfiles.\n\nAs the paths for all lockfiles are known up-front, we set the `path` field to\n`SyntheticTargetsRequest.SINGLE_REQUEST_FOR_ALL_TARGETS` so that we get a single request for all\nour synthetic targets rather than one request per directory.", + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "PythonSyntheticLockfileTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "SyntheticTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.lockfile.RequestedPythonUserResolveNames": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.lockfile", + "name": "RequestedPythonUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.backend.python.goals.package_pex_binary.PexBinaryFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PexBinaryFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PexBinaryFieldSet(address: 'Address', entry_point: pants.backend.python.target_types.PexEntryPointField, script: pants.backend.python.target_types.PexScriptField, args: pants.backend.python.target_types.PexArgsField, env: pants.backend.python.target_types.PexEnvField, output_path: pants.core.goals.package.OutputPathField, emit_warnings: pants.backend.python.target_types.PexEmitWarningsField, ignore_errors: pants.backend.python.target_types.PexIgnoreErrorsField, inherit_path: pants.backend.python.target_types.PexInheritPathField, shebang: pants.backend.python.target_types.PexShebangField, strip_env: pants.backend.python.target_types.PexStripEnvField, platforms: pants.backend.python.target_types.PexPlatformsField, complete_platforms: pants.backend.python.target_types.PexCompletePlatformsField, resolve_local_platforms: pants.backend.python.target_types.PexResolveLocalPlatformsField, layout: pants.backend.python.target_types.PexLayoutField, execution_mode: pants.backend.python.target_types.PexExecutionModeField, include_requirements: pants.backend.python.target_types.PexIncludeRequirementsField, include_sources: pants.backend.python.target_types.PexIncludeSourcesField, include_tools: pants.backend.python.target_types.PexIncludeToolsField, venv_site_packages_copies: pants.backend.python.target_types.PexVenvSitePackagesCopies, venv_hermetic_scripts: pants.backend.python.target_types.PexVenvHermeticScripts, environment: pants.core.util_rules.environments.EnvironmentField)", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexBinaryFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.package_pex_binary.PexFromTargetsRequestForBuiltPackage": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request" + ], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "An intermediate class that gives consumers access to the data used to create a\n`PexFromTargetsRequest` to fulfil a `BuiltPackage` request.\n\nThis class is used directly by `run_pex_binary`, but should be handled transparently by direct\n`BuiltPackage` requests.", + "is_union": false, + "module": "pants.backend.python.goals.package_pex_binary", + "name": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request" + ] + }, + "pants.backend.python.goals.publish.PublishPythonPackageFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "PublishPythonPackageFieldSet(address: 'Address', repositories: 'PythonRepositoriesField', skip_twine: 'SkipTwineUploadField')", + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageFieldSet", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PublishPythonPackageRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PublishPythonPackageRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PublishRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.PythonRepositoriesField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "PythonRepositoriesField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.publish.SkipTwineUploadField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.publish", + "name": "SkipTwineUploadField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetups": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.python.framework.stevedore", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetups", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.AllPytestPluginSetupsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "AllPytestPluginSetupsRequest(addresses: 'tuple[Address, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "AllPytestPluginSetupsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ] + }, + "pants.backend.python.goals.pytest_runner.PyTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PyTestRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The result of custom set up logic before Pytest runs.\n\nPlease reach out it if you would like certain functionality, such as allowing your plugin to set\nenvironment variables.", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.PytestPluginSetupRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "A request to set up the test environment before Pytest runs, e.g. to set up databases.\n\nTo use, subclass PytestPluginSetupRequest, register the rule\n`UnionRule(PytestPluginSetupRequest, MyCustomPytestPluginSetupRequest)`, and add a rule that\ntakes your subclass as a parameter and returns `PytestPluginSetup`.", + "is_union": true, + "module": "pants.backend.python.goals.pytest_runner", + "name": "PytestPluginSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "GenerateEntryPointsTxtFromStevedoreExtensionRequest", + "RuntimePackagesPluginRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins" + ] + }, + "pants.backend.python.goals.pytest_runner.RuntimePackagesPluginRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "RuntimePackagesPluginRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "RuntimePackagesPluginRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PytestPluginSetupRequest", + "used_in_rules": [] + }, + "pants.backend.python.goals.pytest_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "TestSetup(process: 'Process', results_file_name: 'Optional[str]')", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetup", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.pytest_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "TestSetupRequest(field_sets: 'Tuple[PythonTestFieldSet, ...]', metadata: 'TestMetadata', is_debug: 'bool', extra_env: 'FrozenDict[str, str]' = FrozenDict({}), prepend_argv: 'Tuple[str, ...]' = (), additional_pexes: 'Tuple[Pex, ...]' = ())", + "is_union": false, + "module": "pants.backend.python.goals.pytest_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.backend.python.goals.repl.IPythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "IPythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.repl.PythonRepl": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_python_repl_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.goals.repl", + "name": "PythonRepl", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_requirement.PythonRequirementFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PythonRequirementFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonRequirementFieldSet(address: 'Address', requirements: 'PythonRequirementsField', dependencies: 'PythonRequirementDependenciesField', modules: 'PythonRequirementModulesField', resolve: 'PythonRequirementResolveField', entry_point: 'PythonRequirementEntryPointField')", + "is_union": false, + "module": "pants.backend.python.goals.run_python_requirement", + "name": "PythonRequirementFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.run_python_source.PythonSourceFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonSourceFieldSet(address: 'Address', source: pants.backend.python.target_types.PythonSourceField, interpreter_constraints: pants.backend.python.target_types.InterpreterConstraintsField, _run_goal_use_sandbox: pants.backend.python.target_types.PythonRunGoalUseSandboxField)", + "is_union": false, + "module": "pants.backend.python.goals.run_python_source", + "name": "PythonSourceFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.goals.tailor.PutativePythonTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PutativePythonTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.goals.tailor", + "name": "PutativePythonTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.rules.AddTrailingCommaRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.rules", + "name": "AddTrailingCommaRequest", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.skip_field.SkipAddTrailingCommaField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.skip_field", + "name": "SkipAddTrailingCommaField", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.add_trailing_comma.subsystem.AddTrailingComma": { + "consumed_by_rules": [ + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.lint.add_trailing_comma" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.add_trailing_comma.subsystem", + "name": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "returned_by_rules": [ + "construct_scope_add_trailing_comma" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.rules.AutoflakeRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.rules", + "name": "AutoflakeRequest", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.skip_field.SkipAutoflakeField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.skip_field", + "name": "SkipAutoflakeField", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.autoflake.subsystem.Autoflake": { + "consumed_by_rules": [ + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.autoflake" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.autoflake.subsystem", + "name": "Autoflake", + "provider": "pants.backend.python.lint.autoflake", + "returned_by_rules": [ + "construct_scope_autoflake" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.rules.BanditRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.rules", + "name": "BanditRequest", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.skip_field.SkipBanditField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.skip_field", + "name": "SkipBanditField", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.bandit.subsystem.Bandit": { + "consumed_by_rules": [ + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.bandit.rules.partition_bandit" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.bandit" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.bandit.subsystem", + "name": "Bandit", + "provider": "pants.backend.python.lint.bandit", + "returned_by_rules": [ + "construct_scope_bandit" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.black.rules.BlackRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.rules", + "name": "BlackRequest", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.skip_field.SkipBlackField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.skip_field", + "name": "SkipBlackField", + "provider": "pants.backend.python.lint.black", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.black.subsystem.Black": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BlackRequest", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.black.rules.partition_black", + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.python.lint.black", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.black.subsystem", + "name": "Black", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_black" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.rules.DocformatterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.rules", + "name": "DocformatterRequest", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.skip_field.SkipDocformatterField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.skip_field", + "name": "SkipDocformatterField", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.docformatter.subsystem.Docformatter": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.docformatter" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.docformatter.subsystem", + "name": "Docformatter", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [ + "construct_scope_docformatter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.rules.Flake8Request": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.rules", + "name": "Flake8Request", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.skip_field.SkipFlake8Field": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.skip_field", + "name": "SkipFlake8Field", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "construct_scope_flake8" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.flake8.subsystem.Flake8FirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.flake8.rules.run_flake8" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.python.lint.flake8" + ], + "documentation": "Flake8FirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.flake8.subsystem", + "name": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8", + "returned_by_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.rules.IsortRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.rules", + "name": "IsortRequest", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.skip_field.SkipIsortField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.skip_field", + "name": "SkipIsortField", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.isort.subsystem.Isort": { + "consumed_by_rules": [ + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.isort" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.isort.subsystem", + "name": "Isort", + "provider": "pants.backend.python.lint.isort", + "returned_by_rules": [ + "construct_scope_isort" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.rules.PydocstyleRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.rules", + "name": "PydocstyleRequest", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.skip_field.SkipPydocstyleField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.skip_field", + "name": "SkipPydocstyleField", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pydocstyle.subsystem.Pydocstyle": { + "consumed_by_rules": [ + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_PydocstyleRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.pydocstyle" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pydocstyle.subsystem", + "name": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle", + "returned_by_rules": [ + "construct_scope_pydocstyle" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.rules.PylintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.rules", + "name": "PylintRequest", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.skip_field.SkipPylintField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.skip_field", + "name": "SkipPylintField", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.Pylint": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "Pylint", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "construct_scope_pylint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pylint.subsystem.PylintFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.lint.pylint.rules.run_pylint" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.python.lint.pylint" + ], + "documentation": "PylintFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', interpreter_constraints_fields: 'FrozenOrderedSet[InterpreterConstraintsField]', sources_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.lint.pylint.subsystem", + "name": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint", + "returned_by_rules": [ + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.rules.PyUpgradeRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.rules", + "name": "PyUpgradeRequest", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.skip_field.SkipPyUpgradeField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.skip_field", + "name": "SkipPyUpgradeField", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.pyupgrade.subsystem.PyUpgrade": { + "consumed_by_rules": [ + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.lint.pyupgrade" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.pyupgrade.subsystem", + "name": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade", + "returned_by_rules": [ + "construct_scope_pyupgrade" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffFixRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffFixRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules.RuffLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "RuffLintRequest", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.rules._RunRuffRequest": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.rules.run_ruff" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.lint.ruff" + ], + "documentation": "_RunRuffRequest(snapshot: 'Snapshot', is_fix: 'bool')", + "is_union": false, + "module": "pants.backend.python.lint.ruff.rules", + "name": "_RunRuffRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_lint" + ] + }, + "pants.backend.python.lint.ruff.skip_field.SkipRuffField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.skip_field", + "name": "SkipRuffField", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.ruff.subsystem.Ruff": { + "consumed_by_rules": [ + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_RuffLintRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.lint.ruff" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.ruff.subsystem", + "name": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff", + "returned_by_rules": [ + "construct_scope_ruff" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.rules.YapfRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.rules", + "name": "YapfRequest", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.skip_field.SkipYapfField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.skip_field", + "name": "SkipYapfField", + "provider": "pants.backend.python.lint.yapf", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.lint.yapf.subsystem.Yapf": { + "consumed_by_rules": [ + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_YapfRequest", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.build_files.fmt.yapf", + "pants.backend.python.lint.yapf", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.lint.yapf.subsystem", + "name": "Yapf", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_yapf" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.macros.pipenv_requirements.GenerateFromPipenvRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.pipenv_requirements", + "name": "GenerateFromPipenvRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.poetry_requirements.GenerateFromPoetryRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.poetry_requirements", + "name": "GenerateFromPoetryRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.macros.python_requirements.GenerateFromPythonRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.macros.python_requirements.generate_from_python_requirement" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.macros.python_requirements", + "name": "GenerateFromPythonRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core", + "pants.engine.addresses", + "pants.engine.console", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.PyConstraintsSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.mixed_interpreter_constraints" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.mixed_interpreter_constraints.py_constraints", + "name": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints", + "returned_by_rules": [ + "construct_scope_py_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyOxidizerFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PyOxidizerFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": "PyOxidizerFieldSet(address: 'Address', binary_name: 'PyOxidizerBinaryNameField', entry_point: 'PyOxidizerEntryPointField', dependencies: 'PyOxidizerDependenciesField', unclassified_resources: 'PyOxidizerUnclassifiedResources', template: 'PyOxidizerConfigSourceField', output_path: 'PyOxidizerOutputPathField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyOxidizerFieldSet", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.rules.PyoxidizerRunnerScript": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": "PyoxidizerRunnerScript(digest: 'Digest', path: 'str')", + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.rules", + "name": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.packaging.pyoxidizer.subsystem.PyOxidizer": { + "consumed_by_rules": [ + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.packaging.pyoxidizer" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.packaging.pyoxidizer.subsystem", + "name": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "returned_by_rules": [ + "construct_scope_pyoxidizer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.debugpy.DebugPy": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.debugpy", + "name": "DebugPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_debugpy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.ipython.IPython": { + "consumed_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.ipython", + "name": "IPython", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_ipython" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PyTest": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PyTest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pytest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.pytest.PythonTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "PythonTestFieldSet(address: 'Address', sources: 'SourcesField', source: 'PythonTestSourceField', interpreter_constraints: 'InterpreterConstraintsField', timeout: 'PythonTestsTimeoutField', runtime_package_dependencies: 'RuntimePackageDependenciesField', extra_env_vars: 'PythonTestsExtraEnvVarsField', xdist_concurrency: 'PythonTestsXdistConcurrencyField', batch_compatibility_tag: 'PythonTestsBatchCompatibilityTagField', resolve: 'PythonResolveField', environment: 'EnvironmentField')", + "is_union": false, + "module": "pants.backend.python.subsystems.pytest", + "name": "PythonTestFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_python_native_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.python_native_code.PythonNativeCodeSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_python_native_code" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.python_native_code", + "name": "PythonNativeCodeSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_native_code" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.repos.PythonRepos": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.repos", + "name": "PythonRepos", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_repos" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup.PythonSetup": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.python", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup", + "name": "PythonSetup", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setup_py_generation.SetupPyGeneration": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setup_py_generation", + "name": "SetupPyGeneration", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setup_py_generation" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools.PythonDistributionFieldSet": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonDistributionFieldSet(address: 'Address', provides: pants.backend.python.target_types.PythonProvidesField)", + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "PythonDistributionFieldSet", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ] + }, + "pants.backend.python.subsystems.setuptools.Setuptools": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools", + "name": "Setuptools", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_setuptools" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.setuptools_scm.SetuptoolsSCM": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.setuptools_scm", + "name": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_setuptools_scm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.subsystems.twine.TwineSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.publish.twine_upload" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.subsystems.twine", + "name": "TwineSubsystem", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "construct_scope_twine" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexBinaryDefaults": { + "consumed_by_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexBinaryDefaults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "construct_scope_pex_binary_defaults" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.target_types.PexCompletePlatformsField": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PexCompletePlatformsField", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary" + ] + }, + "pants.backend.python.target_types.PythonFilesGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_files_generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "PythonFilesGeneratorSettingsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types.ResolvePexEntryPointRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Determine the `entry_point` for a `pex_binary` after applying all syntactic sugar.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePexEntryPointRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvePythonDistributionEntryPointsRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Looks at the entry points to see if it is a setuptools entry point, or a BUILD target address\nthat should be resolved into a setuptools entry point.\n\nIf the `entry_points_field` is present, inspect the specified entry points.\nIf the `provides_field` is present, inspect the `provides_field.kwargs[\"entry_points\"]`.\n\nThis is to support inspecting one or the other depending on use case, using the same\nlogic for resolving pex_binary addresses etc.", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvePythonDistributionEntryPointsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.target_types.ResolvedPexEntryPoint": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ResolvedPexEntryPoint(val: 'EntryPoint | None', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPexEntryPoint", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_pex_entry_point" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ] + }, + "pants.backend.python.target_types.ResolvedPythonDistributionEntryPoints": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.python" + ], + "documentation": "ResolvedPythonDistributionEntryPoints(val: 'FrozenDict[str, FrozenDict[str, PythonDistributionEntryPoint]]' = FrozenDict({}))", + "is_union": false, + "module": "pants.backend.python.target_types", + "name": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.target_types_rules.GenerateTargetsFromPexBinaries": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "GenerateTargetsFromPexBinaries", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPexBinaryEntryPointDependency": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPexBinaryEntryPointDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.InferPythonDistributionDependencies": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "InferPythonDistributionDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.python.target_types_rules.PythonValidateDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.target_types_rules", + "name": "PythonValidateDependenciesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.MyPycDistBuildEnvironmentRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPycDistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "MyPycDistBuildEnvironmentRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "DistBuildEnvironmentRequest", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.mypyc.UsesMyPycField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.mypyc", + "name": "UsesMyPycField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPyPartition(field_sets: 'FrozenOrderedSet[MyPyFieldSet]', root_targets: 'CoarsenedTargets', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartition", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyPartitions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.rules.MyPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.rules", + "name": "MyPyRequest", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck" + ] + }, + "pants.backend.python.typecheck.mypy.skip_field.SkipMyPyField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.skip_field", + "name": "SkipMyPyField", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPy": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPy", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "construct_scope_mypy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyConfigFile": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPyConfigFile(digest: 'Digest', _python_version_configured: 'bool')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.mypy.subsystem.MyPyFirstPartyPlugins": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "MyPyFirstPartyPlugins(requirement_strings: 'FrozenOrderedSet[str]', sources_digest: 'Digest', source_roots: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.typecheck.mypy.subsystem", + "name": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.typecheck.pytype.rules.PytypePartition": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.python.typecheck.pytype" + ], + "documentation": "PytypePartition(field_sets: 'FrozenOrderedSet[PytypeFieldSet]', root_targets: 'CoarsenedTargets', resolve_description: 'str | None', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.rules", + "name": "PytypePartition", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.backend.python.typecheck.pytype.rules.PytypePartitions": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.python.typecheck.pytype" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.rules", + "name": "PytypePartitions", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "returned_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.backend.python.typecheck.pytype.rules.PytypeRequest": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.python.typecheck.pytype" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.rules", + "name": "PytypeRequest", + "provider": "pants.backend.experimental.python.typecheck.pytype, pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.backend.python.typecheck.pytype.skip_field.SkipPytypeField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.skip_field", + "name": "SkipPytypeField", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.python.typecheck.pytype.subsystem.Pytype": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.python.typecheck.pytype" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.typecheck.pytype.subsystem", + "name": "Pytype", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "returned_by_rules": [ + "construct_scope_pytype" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Any ancestor files found.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.ancestor_files.AncestorFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request for ancestor files of the given names.\n\n\"Ancestor files\" means all files with one of the given names that are siblings of, or in parent\ndirectories of, a `.py` or `.pyi` file in the input_files.", + "is_union": false, + "module": "pants.backend.python.util_rules.ancestor_files", + "name": "AncestorFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A PEP 517/518 build system configuration.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystem", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.BuildSystemRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.find_build_system" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to find build system config in the given dir of the given digest.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "BuildSystemRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to build dists via a PEP 517 build backend.", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.dists.DistBuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "DistBuildResult(output: 'Digest', wheel_path: 'str | None', sdist_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.dists", + "name": "DistBuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.dists.run_pep517_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist" + ] + }, + "pants.backend.python.util_rules.faas.BuildPythonFaaSRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "BuildPythonFaaSRequest(address: 'Address', target_name: 'str', complete_platforms: 'PythonFaaSCompletePlatforms', handler: 'None | PythonFaaSHandlerField', output_path: 'OutputPathField', runtime: 'PythonFaaSRuntimeField', include_requirements: 'bool', include_sources: 'bool', reexported_handler_module: 'None | str', log_only_reexported_handler_func: 'bool' = False, prefix_in_artifact: 'None | str' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "BuildPythonFaaSRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function" + ] + }, + "pants.backend.python.util_rules.faas.InferPythonFaaSHandlerDependency": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "InferPythonFaaSHandlerDependency", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.faas.PythonFaaSCompletePlatforms": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.digest_complete_platforms" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "PythonFaaSCompletePlatforms", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.infer_runtime_platforms" + ] + }, + "pants.backend.python.util_rules.faas.ResolvePythonFaaSHandlerRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.resolve_python_faas_handler" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "ResolvePythonFaaSHandlerRequest(field: 'PythonFaaSHandlerField')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "ResolvePythonFaaSHandlerRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.util_rules.faas.ResolvedPythonFaaSHandler": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "ResolvedPythonFaaSHandler(module: 'str', func: 'str', file_name_used: 'bool')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "ResolvedPythonFaaSHandler", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.resolve_python_faas_handler" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency" + ] + }, + "pants.backend.python.util_rules.faas.RuntimePlatforms": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "RuntimePlatforms(interpreter_version: 'None | tuple[int, int]', pex_platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]))", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "RuntimePlatforms", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.infer_runtime_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.faas.RuntimePlatformsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.faas.infer_runtime_platforms" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "RuntimePlatformsRequest(address: 'Address', target_name: 'str', runtime: 'PythonFaaSRuntimeField', complete_platforms: 'PythonFaaSCompletePlatforms')", + "is_union": false, + "module": "pants.backend.python.util_rules.faas", + "name": "RuntimePlatformsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.interpreter_constraints.InterpreterConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.interpreter_constraints", + "name": "InterpreterConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistWheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Contains the wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistWheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPex": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A PEX file containing locally-built dists.\n\nCan be consumed from another PEX, e.g., by adding to PEX_PATH.\n\nThe PEX will only contain locally built dists and not their dependencies. For Pants generated\n`setup.py` / `pyproject.toml`, the dependencies will be included in the standard resolve process\nthat the locally-built dists PEX is adjoined to via PEX_PATH. For hand-made `setup.py` /\n`pyproject.toml` with 3rdparty dependencies not hand-mirrored into BUILD file dependencies, this\nwill lead to issues. See https://github.com/pantsbuild/pants/issues/13587#issuecomment-974863636\nfor one way to fix this corner which is intentionally punted on for now.\n\nLists the files provided by the dists on sys.path, so they can be subtracted from\nsources digests, to prevent the same file ending up on sys.path twice.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPex", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists.LocalDistsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.build_local_dists" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Request to build the local dists from the dependency closure of a set of addresses.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists", + "name": "LocalDistsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.AllPythonDistributionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "AllPythonDistributionTargets(targets: 'Targets')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "AllPythonDistributionTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.local_dists_pep660.EditableLocalDists": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A Digest populated by editable (PEP660) wheels of local dists.\n\nAccording to PEP660, these wheels should not be exported to users and must be discarded\nafter install. Anything that uses this should ensure that these wheels get installed and\nthen deleted.\n\nInstalling PEP660 wheels creates an \"editable\" install such that the sys.path gets\nadjusted to include source directories from the build root (not from the sandbox).\nThis is decidedly not hermetic or portable and should only be used locally.\n\nPEP660 wheels have .dist-info metadata and the .pth files (or similar) that adjust sys.path.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "EditableLocalDists", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.EditableLocalDistsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Request to generate PEP660 wheels of local dists in the given resolve.\n\nThe editable wheel files must not be exported or made available to the end-user (according to\nPEP 660). Instead, the PEP660 editable wheels serve as intermediate, internal-only,\nrepresentation of what should be installed in the exported virtualenv to create the editable\ninstalls of local python_distributions.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "EditableLocalDistsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.LocalDistPEP660Wheels": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python.typecheck.mypy", + "pants.core", + "pants.engine.env_vars", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Contains the PEP 660 \"editable\" wheels isolated from a single local Python distribution.", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "LocalDistPEP660Wheels", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.PEP660BuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PEP660BuildResult(output: 'Digest', editable_wheel_path: 'str | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "PEP660BuildResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.local_dists_pep660.ResolveSortedPythonDistributionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ResolveSortedPythonDistributionTargets(targets: 'FrozenDict[str | None, tuple[Target, ...]]')", + "is_union": false, + "module": "pants.backend.python.util_rules.local_dists_pep660", + "name": "ResolveSortedPythonDistributionTargets", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.package_dists.DependencyOwner": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "An ExportedTarget in its role as an owner of other targets.\n\nWe need this type to prevent rule ambiguities when computing the list of targets owned by an\nExportedTarget (which involves going from ExportedTarget -> dep -> owner (which is itself an\nExportedTarget) and checking if owner is the original ExportedTarget.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DependencyOwner", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_sources" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildChroot": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A chroot containing PEP 517 build setup and the sources it operates on.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildChroot", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildChrootRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to create a chroot for building a dist in.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildChrootRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Various extra information that might be needed to build a dist.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildEnvironmentRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": "DistBuildEnvironmentRequest(target_addresses: 'tuple[Address, ...]', interpreter_constraints: 'InterpreterConstraints')", + "is_union": true, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildEnvironmentRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [ + "MyPycDistBuildEnvironmentRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels" + ] + }, + "pants.backend.python.util_rules.package_dists.DistBuildSources": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The source-root-stripped sources required to build a distribution with a generated setup.py.\n\nIncludes some information derived from analyzing the source, namely the packages, namespace\npackages and resource files in the source.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "DistBuildSources", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.ExportedTarget": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A target that explicitly exports a setup.py artifact, using a `provides=` stanza.\n\nThe code provided by this artifact can be from this target or from any targets it owns.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "ExportedTarget", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_exporting_owner" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.ExportedTargetRequirements": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The requirements of an ExportedTarget.\n\nIncludes:\n- The \"normal\" 3rdparty requirements of the ExportedTarget and all targets it owns.\n- The published versions of any other ExportedTargets it depends on.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "ExportedTargetRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_requirements" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ] + }, + "pants.backend.python.util_rules.package_dists.FinalizedSetupKwargs": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The final kwargs used for the `setup()` function, after Pants added requirements and sources\ninformation.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "FinalizedSetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ] + }, + "pants.backend.python.util_rules.package_dists.GenerateSetupPyRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "GenerateSetupPyRequest(exported_target: 'ExportedTarget', sources: 'DistBuildSources', interpreter_constraints: 'InterpreterConstraints')", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "GenerateSetupPyRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ] + }, + "pants.backend.python.util_rules.package_dists.GeneratedSetupPy": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "GeneratedSetupPy(digest: 'Digest')", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "GeneratedSetupPy", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.generate_setup_py" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.generate_chroot" + ] + }, + "pants.backend.python.util_rules.package_dists.OwnedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "OwnedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "pants.backend.python.util_rules.package_dists.get_sources" + ] + }, + "pants.backend.python.util_rules.package_dists.OwnedDependency": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.package_dists.get_exporting_owner" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A target that is owned by some ExportedTarget.\n\nCode in this target is published in the owner's distribution.\n\nThe owner of a target T is T's closest filesystem ancestor among the python_distribution\ntargets that directly or indirectly depend on it (including T itself).", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "OwnedDependency", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.SetupKwargs": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "The keyword arguments to the `setup()` function in the generated `setup.py`.", + "is_union": false, + "module": "pants.backend.python.util_rules.package_dists", + "name": "SetupKwargs", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.package_dists.get_requirements" + ] + }, + "pants.backend.python.util_rules.package_dists.SetupKwargsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to allow setting the kwargs passed to the `setup()` function.\n\nBy default, Pants will pass the kwargs provided in the BUILD file unchanged. To customize this\nbehavior, subclass `SetupKwargsRequest`, register the rule `UnionRule(SetupKwargsRequest,\nMyCustomSetupKwargsRequest)`, and add a rule that takes your subclass as a parameter and returns\n`SetupKwargs`.", + "is_union": true, + "module": "pants.backend.python.util_rules.package_dists", + "name": "SetupKwargsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs" + ] + }, + "pants.backend.python.util_rules.pex.BuildPexResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BuildPexResult(result: 'ProcessResult', pex_filename: 'str', digest: 'Digest', python: 'PythonExecutable | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "BuildPexResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex" + ] + }, + "pants.backend.python.util_rules.pex.CompletePlatforms": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "CompletePlatforms", + "provider": "pants.backend.awslambda.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.pex.digest_complete_platforms" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPex": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "OptionalPex(maybe_pex: 'Pex | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPex", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex.OptionalPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_optional_pex" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "OptionalPexRequest(maybe_pex_request: 'PexRequest | None')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "OptionalPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex.Pex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "Wrapper for a digest containing a pex file created with some filename.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "Pex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_pex_process" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "PexProcess(pex: 'Pex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.tools.yamllint.rules.run_yamllint" + ] + }, + "pants.backend.python.util_rules.pex.PexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "PexRequest(*, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, python: 'PythonExecutable | None' = None, requirements: 'PexRequirements | EntireLockfile' = PexRequirements(req_strings_or_addrs=FrozenOrderedSet(), constraints_strings=FrozenOrderedSet(), from_superset=None, description_of_origin=''), interpreter_constraints=InterpreterConstraints(), platforms=PexPlatforms([]), complete_platforms=CompletePlatforms([]), sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), additional_args: 'Iterable[str]' = (), pex_path: 'Iterable[Pex]' = (), description: 'str | None' = None, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.create_optional_pex", + "pants.backend.python.util_rules.pex.create_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.PexRequirementsInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "PexRequirementsInfo(req_strings: 'tuple[str, ...]', find_links: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexRequirementsInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex.PexResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Information about all distributions resolved in a PEX file, as reported by `PEX_TOOLS=1\nrepository info -v`.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "PexResolveInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex.PythonProvider": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Union which should have 0 or 1 implementations registered which provide Python.\n\nSubclasses should provide a rule from their subclass type to `PythonExecutable`.", + "is_union": true, + "module": "pants.backend.python.util_rules.pex", + "name": "PythonProvider", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex.VenvPex": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.core" + ], + "documentation": "VenvPex(digest: 'Digest', append_only_caches: 'FrozenDict[str, str] | None', pex_filename: 'str', pex: 'Script', python: 'Script', bin: 'FrozenDict[str, Script]', venv_rel_dir: 'str')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPex", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.python.goals.coverage_py.setup_coverage", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.setup_venv_pex_process" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "VenvPexProcess(venv_pex: 'VenvPex', *, description: 'str', argv: 'Iterable[str]' = (), level: 'LogLevel' = , input_digest: 'Digest | None' = None, working_directory: 'str | None' = None, extra_env: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex.VenvPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.create_venv_pex" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "VenvPexRequest(pex_request: 'PexRequest', complete_pex_env: 'CompletePexEnvironment', bin_names: 'Iterable[str]' = (), site_packages_copies: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex", + "name": "VenvPexRequest", + "provider": "pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.wrap_venv_prex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexCli": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCli", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex_cli" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_cli.PexCliProcess": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "PexCliProcess(*, subcommand: 'Iterable[str]', extra_args: 'Iterable[str]', description: 'str', additional_input_digest: 'Optional[Digest]' = None, extra_env: 'Optional[Mapping[str, str]]' = None, output_files: 'Optional[Iterable[str]]' = None, output_directories: 'Optional[Iterable[str]]' = None, level: 'LogLevel' = , concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = ) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexCliProcess", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_venv.pex_venv" + ] + }, + "pants.backend.python.util_rules.pex_cli.PexPEX": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [ + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "The Pex PEX binary.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_cli", + "name": "PexPEX", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_cli.download_pex_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexEnvironment": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process" + ], + "dependencies": [ + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.core" + ], + "documentation": "PexEnvironment(path: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]', subprocess_environment_dict: 'FrozenDict[str, str]', named_caches_dir: 'PurePath', bootstrap_python: 'PythonBuildStandaloneBinary', venv_use_symlinks: 'bool' = False)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PexSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_pex", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PexSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_pex" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_environment.PythonExecutable": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "The BinaryPath of a Python executable for user code, along with some extras.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_environment", + "name": "PythonExecutable", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex.find_interpreter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.find_interpreter" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ChosenPythonResolve(name: 'str', lockfile: 'Lockfile')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolve", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.ChosenPythonResolveRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ChosenPythonResolveRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "ChosenPythonResolveRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.GlobalRequirementConstraints": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": [ + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Global constraints specified by the `[python].requirement_constraints` setting, if any.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "GlobalRequirementConstraints", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.pex_from_targets.InterpreterConstraintsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "InterpreterConstraintsRequest(addresses: 'Iterable[Address]', *, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "InterpreterConstraintsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.PexFromTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PexFromTargetsRequest(addresses: 'Iterable[Address]', *, output_filename: 'str', internal_only: 'bool', layout: 'PexLayout | None' = None, main: 'MainSpecification | None' = None, inject_args: 'Iterable[str]' = (), inject_env: 'Mapping[str, str]' = FrozenDict({}), platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_args: 'Iterable[str]' = (), additional_lockfile_args: 'Iterable[str]' = (), include_source_files: 'bool' = True, include_requirements: 'bool' = True, include_local_dists: 'bool' = False, additional_sources: 'Digest | None' = None, additional_inputs: 'Digest | None' = None, hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, description: 'str | None' = None, warn_for_transitive_files_targets: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "PexFromTargetsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.pex_from_targets.RequirementsPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Requests a PEX containing only thirdparty requirements for internal/non-portable use.\n\nUsed as part of an optimization to reduce the \"overhead\" (in terms of both time and space) of\nthirdparty requirements by taking advantage of certain PEX features.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "RequirementsPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._ConstraintsRepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_ConstraintsRepositoryPexRequest(repository_pex_request: '_RepositoryPexRequest')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_ConstraintsRepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._PexRequirementsRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "Determine the requirement strings used transitively.\n\nThis type is private because callers should likely use `RequirementsPexRequest` or\n`PexFromTargetsRequest` instead.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_PexRequirementsRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_from_targets._RepositoryPexRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "_RepositoryPexRequest(addresses: 'Iterable[Address]', *, internal_only: 'bool', hardcoded_interpreter_constraints: 'InterpreterConstraints | None' = None, platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), additional_lockfile_args: 'tuple[str, ...]' = ()) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_from_targets", + "name": "_RepositoryPexRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.python", + "pants.core" + ], + "documentation": "A lockfile after loading and header stripping.\n\nValidation is deferred until consumption time, because each consumed subset (in the case of a\nPEX-native lockfile) can be individually validated.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.LoadedLockfileRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.load_lockfile" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A request to load and validate the content of the given lockfile.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "LoadedLockfileRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Lockfile": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.python", + "pants.core" + ], + "documentation": "Lockfile(url: 'str', url_description_of_origin: 'str', resolve_name: 'str', lockfile_hex_digest: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Lockfile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.PexRequirements": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.get_req_strings" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": "A request to resolve a series of requirements (optionally from a \"superset\" resolve).", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "PexRequirements", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.pex_requirements.Resolve": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Resolve(name: 'str', use_entire_lockfile: 'bool')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "Resolve", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.pex.build_pex", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfig": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Configuration from `[python]` that impacts how the resolve is created.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfig", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_requirements.ResolvePexConfigRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Find all configuration from `[python]` that impacts how the resolve is created.\n\nIf `resolve_name` is None, then most per-resolve options will be ignored because there is no way\nfor users to configure them. However, some options like `[python-repos].indexes` will still be\nloaded.", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_requirements", + "name": "ResolvePexConfigRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.util_rules.pex.build_pex" + ] + }, + "pants.backend.python.util_rules.pex_venv.PexVenv": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "PexVenv(digest: 'Digest', path: 'Path')", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_venv", + "name": "PexVenv", + "provider": "pants.backend.awslambda.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.pex_venv.pex_venv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.pex_venv.PexVenvRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_venv.pex_venv" + ], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python" + ], + "documentation": "PexVenvRequest(pex: 'Pex', layout: 'PexVenvLayout', output_path: 'Path', description: 'str', platforms: 'PexPlatforms' = PexPlatforms([]), complete_platforms: 'CompletePlatforms' = CompletePlatforms([]), prefix: 'None | str' = None)", + "is_union": false, + "module": "pants.backend.python.util_rules.pex_venv", + "name": "PexVenvRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.faas.build_python_faas" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFiles": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.core", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "Sources that can be introspected by Python, relative to a set of source roots.\n\nSpecifically, this will filter out to only have Python, and, optionally, resource and\nfile targets; and will add any missing `__init__.py` files to ensure that modules are\nrecognized correctly.\n\nUse-cases that introspect Python source code (e.g., the `test, `lint`, `fmt` goals) can\nrequest this type to get relevant sources that are still relative to their source roots.\nThat way the paths they report are the unstripped ones the user is familiar with.\n\nThe sources can also be imported and used by Python (e.g., for the `test` goal), but only\nif sys.path is modified to include the source roots.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.PythonSourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.python_sources.prepare_python_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "PythonSourceFilesRequest(targets: 'Iterable[Target]', *, include_resources: 'bool' = True, include_files: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "PythonSourceFilesRequest", + "provider": "pants.backend.python", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.python_sources.StrippedPythonSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint" + ], + "documentation": "A PythonSourceFiles that has had its source roots stripped.", + "is_union": false, + "module": "pants.backend.python.util_rules.python_sources", + "name": "StrippedPythonSourceFiles", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.python_sources.strip_python_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets" + ] + }, + "pants.backend.python.util_rules.vcs_versioning.AllVCSVersionTargets": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.GeneratePythonFromSetuptoolsSCMRequest": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "GeneratePythonFromSetuptoolsSCMRequest", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.PythonVCSVersionMappingMarker": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ], + "dependencies": [ + "pants.backend.python" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "PythonVCSVersionMappingMarker", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyPythonMappingImplMarker", + "used_in_rules": [] + }, + "pants.backend.python.util_rules.vcs_versioning.VCSVersionPythonResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.python.util_rules.vcs_versioning", + "name": "VCSVersionPythonResolveField", + "provider": "pants.backend.experimental.python", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "HandleScalacOptionsRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.HandleScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.base.build_root", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "HandleScalacOptionsResult(item: 'ScalacOptionsItem')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ] + }, + "pants.backend.scala.bsp.rules.ScalaBSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPBuildTargetsMetadataRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPBuildTargetsMetadataRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPCompileRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaBSPCompileRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]', task_id: 'TaskId')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPCompileRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPCompileRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPDependencyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaBSPDependencyModulesRequest(field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPDependencyModulesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPDependencyModulesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.util_rules.lifecycle" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPLanguageSupport", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPLanguageSupport", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaBSPResourcesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_resources_request" + ], + "dependencies": [ + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaBSPResourcesRequest(bsp_target: 'BSPBuildTargetInternal', field_sets: 'tuple[_FS, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaBSPResourcesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPResourcesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaMainClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaMainClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalaTestClassesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalaTestClassesHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ScalacOptionsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ScalacOptionsHandlerMapping", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModules": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.scala.bsp.rules", + "pants.core", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ThirdpartyModules(resolve: 'CoursierResolveKey', entries: 'dict[CoursierLockfileEntry, ClasspathEntry]', merged_digest: 'Digest')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.rules.ThirdpartyModulesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ThirdpartyModulesRequest(addresses: 'Addresses')", + "is_union": false, + "module": "pants.backend.scala.bsp.rules", + "name": "ThirdpartyModulesRequest", + "provider": "pants.backend.scala.bsp.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ] + }, + "pants.backend.scala.bsp.spec.ScalaMainClassesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "dependents": [], + "documentation": "ScalaMainClassesResult(items: 'tuple[ScalaMainClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalaTestClassesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "dependents": [], + "documentation": "ScalaTestClassesResult(items: 'tuple[ScalaTestClassesItem, ...]', origin_id: 'str | None' = None)", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.bsp.spec.ScalacOptionsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.bsp.spec" + ], + "dependents": [], + "documentation": "ScalacOptionsResult(items: 'tuple[ScalacOptionsItem, ...]')", + "is_union": false, + "module": "pants.backend.scala.bsp.spec", + "name": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_scalac_options_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac.CompileScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac", + "name": "CompileScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.AllScalaPluginTargets": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginTargetsForTarget": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.scala.compile.scalac_plugins", + "pants.engine.environment" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginTargetsForTarget(plugins: 'Targets', artifacts: 'Targets')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPlugins": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac_plugins", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPlugins(names: 'tuple[str, ...]', classpath: 'ClasspathEntry')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPlugins", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target" + ], + "dependencies": [ + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginsForTargetRequest(target: 'Target', resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala, pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsForTargetWithoutResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginsForTargetWithoutResolveRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsForTargetWithoutResolveRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ] + }, + "pants.backend.scala.compile.scalac_plugins.ScalaPluginsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaPluginsRequest(plugins: 'Targets', artifacts: 'Targets', resolve: 'CoursierResolveKey')", + "is_union": false, + "module": "pants.backend.scala.compile.scalac_plugins", + "name": "ScalaPluginsRequest", + "provider": "pants.backend.scala.compile.scalac_plugins", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source" + ] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaLibraryDependencyRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaLibraryDependencyRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaPluginDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaPluginDependenciesRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.InferScalaSourceDependencies": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "InferScalaSourceDependencies", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolve": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.scala.dependency_inference.rules" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaRuntimeForResolve(addresses: 'frozenset[Address]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.rules.ScalaRuntimeForResolveRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaRuntimeForResolveRequest(resolve_name: 'str')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.rules", + "name": "ScalaRuntimeForResolveRequest", + "provider": "pants.backend.scala.dependency_inference.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.AnalyzeScalaSourceRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "AnalyzeScalaSourceRequest(source_files: 'SourceFiles', scala_version: 'str', source3: 'bool')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.FallibleScalaSourceDependencyAnalysisResult": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "FallibleScalaSourceDependencyAnalysisResult(process_result: 'FallibleProcessResult')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserCompiledClassfiles": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaParserToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaParserToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.dependency_inference.scala_parser", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles" + ] + }, + "pants.backend.scala.dependency_inference.scala_parser.ScalaSourceDependencyAnalysis": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.helm", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaSourceDependencyAnalysis(provided_symbols: 'FrozenOrderedSet[ScalaProvidedSymbol]', provided_symbols_encoded: 'FrozenOrderedSet[ScalaProvidedSymbol]', imports_by_scope: 'FrozenDict[str, tuple[ScalaImport, ...]]', consumed_symbols_by_scope: 'FrozenDict[str, FrozenOrderedSet[str]]', scopes: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.backend.scala.dependency_inference.scala_parser", + "name": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.AllScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "AllScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.dependency_inference.symbol_mapper.FirstPartyScalaTargetsMappingRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "dependencies": [ + "pants.jvm.dependency_inference.symbol_mapper" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.dependency_inference.symbol_mapper", + "name": "FirstPartyScalaTargetsMappingRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "FirstPartyMappingRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.check.ScalacCheckRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.check.scalac_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.check", + "name": "ScalacCheckRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.scala.goals.repl.ScalaRepl": { + "consumed_by_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.goals.repl", + "name": "ScalaRepl", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ReplImplementation", + "used_in_rules": [] + }, + "pants.backend.scala.goals.tailor.PutativeScalaTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "PutativeScalaTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.goals.tailor", + "name": "PutativeScalaTargetsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.GatherScalafmtConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "GatherScalafmtConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "GatherScalafmtConfigFilesRequest", + "provider": "pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtConfigFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.scala.lint.scalafmt.rules" + ], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "ScalafmtConfigFiles(snapshot: 'Snapshot', source_dir_to_config_file: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtRequest", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.rules.ScalafmtToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.rules", + "name": "ScalafmtToolLockfileSentinel", + "provider": "pants.backend.experimental.scala.lint.scalafmt, pants.backend.scala.lint.scalafmt.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt" + ] + }, + "pants.backend.scala.lint.scalafmt.skip_field.SkipScalafmtField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.skip_field", + "name": "SkipScalafmtField", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.scala.lint.scalafmt.subsystem.ScalafmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.lint.scalafmt.subsystem", + "name": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "construct_scope_scalafmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.resolve.artifact.ScalaArtifactClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.artifact.scala_artifact_classpath" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.artifact", + "name": "ScalaArtifactClasspathEntryRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.backend.scala.resolve.lockfile.ValidateResolveHasScalaRuntimeRequest": { + "consumed_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "dependencies": [ + "pants.jvm.goals.lockfile" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.resolve.lockfile", + "name": "ValidateResolveHasScalaRuntimeRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "ValidateJvmArtifactsForResolveRequest", + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala.ScalaSubsystem": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.target_types.generate_jvm_artifact_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala", + "name": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scala_infer.ScalaInferSubsystem": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scala_infer", + "name": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scala_infer" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalac.Scalac": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalac", + "name": "Scalac", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalac" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.subsystems.scalatest.Scalatest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ScalatestTestRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.subsystems.scalatest", + "name": "Scalatest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "construct_scope_scalatest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.scala.target_types.GenerateJvmArtifactForScalaTargets": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.generate_jvm_artifact_targets" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "GenerateJvmArtifactForScalaTargets", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_ScalaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', sources: 'ScalaSourceField')", + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.target_types.ScalaSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.scala.target_types.scala_settings_request" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.target_types", + "name": "ScalaSettingsRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "ScalatestTestFieldSet(address: 'Address', sources: 'ScalatestTestSourceField', timeout: 'ScalatestTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'ScalatestTestExtraEnvVarsField')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestFieldSet", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestTestRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.scala.test.scalatest.ScalatestToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "ScalatestToolLockfileSentinel", + "provider": "pants.backend.experimental.scala, pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ] + }, + "pants.backend.scala.test.scalatest.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.scala.test.scalatest", + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetup", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.test.scalatest.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.scala.test.scalatest.setup_scalatest_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "TestSetupRequest(field_set: 'ScalatestTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.backend.scala.test.scalatest", + "name": "TestSetupRequest", + "provider": "pants.backend.scala.test.scalatest", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionRequest": { + "consumed_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaArtifactsForVersionRequest(scala_version: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionRequest", + "provider": "pants.backend.scala.util_rules.versions", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.scala.util_rules.versions.ScalaArtifactsForVersionResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.scala.util_rules.versions" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "ScalaArtifactsForVersionResult(compiler_coordinate: 'Coordinate', library_coordinate: 'Coordinate', reflect_coordinate: 'Coordinate | None', compiler_main: 'str', repl_main: 'str')", + "is_union": false, + "module": "pants.backend.scala.util_rules.versions", + "name": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ] + }, + "pants.backend.shell.dependency_inference.AllShellTargets": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "AllShellTargets", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.find_all_shell_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.InferShellDependencies": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "InferShellDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.dependency_inference.ParseShellImportsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "ParseShellImportsRequest(digest: 'Digest', fp: 'str')", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParseShellImportsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ParsedShellImports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ParsedShellImports", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ] + }, + "pants.backend.shell.dependency_inference.ShellMapping": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.infer_shell_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "A mapping of Shell file names to their owning file address.", + "is_union": false, + "module": "pants.backend.shell.dependency_inference", + "name": "ShellMapping", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.dependency_inference.map_shell_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.goals.tailor.PutativeShellTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.goals.tailor.find_putative_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "PutativeShellTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.shell.goals.tailor", + "name": "PutativeShellTargetsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.ShellTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "ShellTestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.goals.test.TestShellCommandFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.goals.test", + "name": "TestShellCommandFieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.rules.ShellcheckRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.rules", + "name": "ShellcheckRequest", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.skip_field.SkipShellcheckField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.skip_field", + "name": "SkipShellcheckField", + "provider": "pants.backend.shell.lint.shellcheck", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shellcheck.subsystem.Shellcheck": { + "consumed_by_rules": [ + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_ShellcheckRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shellcheck.subsystem", + "name": "Shellcheck", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shellcheck" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.rules.ShfmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.rules", + "name": "ShfmtRequest", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.skip_field.SkipShfmtField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.skip_field", + "name": "SkipShfmtField", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.backend.shell.lint.shfmt.subsystem.Shfmt": { + "consumed_by_rules": [ + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell.lint.shfmt" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.lint.shfmt.subsystem", + "name": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt", + "returned_by_rules": [ + "construct_scope_shfmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2FieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "Shunit2FieldSet(address: 'Address', sources: pants.backend.shell.target_types.Shunit2TestSourceField, timeout: pants.backend.shell.target_types.Shunit2TestTimeoutField, shell: pants.backend.shell.target_types.Shunit2ShellField, runtime_package_dependencies: pants.core.goals.test.RuntimePackageDependenciesField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2FieldSet", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2Runner": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "Shunit2Runner(shell: pants.backend.shell.target_types.Shunit2Shell, binary_path: pants.core.util_rules.system_binaries.BinaryPath)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2Runner", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2RunnerRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "Shunit2RunnerRequest(address: Address, test_file_content: pants.engine.fs.FileContent, shell_field: pants.backend.shell.target_types.Shunit2ShellField)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2RunnerRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.backend.shell.shunit2_test_runner.Shunit2TestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "Shunit2TestRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.backend.shell.shunit2_test_runner.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.fs", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "TestSetup(process: pants.engine.process.Process)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.shunit2_test_runner.TestSetupRequest": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "TestSetupRequest(field_set: pants.backend.shell.shunit2_test_runner.Shunit2FieldSet)", + "is_union": false, + "module": "pants.backend.shell.shunit2_test_runner", + "name": "TestSetupRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test" + ] + }, + "pants.backend.shell.subsystems.shell_setup.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": [ + "pants.core", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "EnvironmentAware", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_env_aware_scope_shell_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_setup.ShellSetup": { + "consumed_by_rules": [ + "construct_env_aware_scope_shell_setup", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_setup", + "name": "ShellSetup", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shell_setup" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shell_test_subsys.ShellTestSubsystem": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ShellTestRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shell_test_subsys", + "name": "ShellTestSubsystem", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shell_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.subsystems.shunit2.Shunit2": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_Shunit2TestRequest" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.subsystems.shunit2", + "name": "Shunit2", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "construct_scope_shunit2" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.shell.target_types.ShellGeneratorSettingsRequest": { + "consumed_by_rules": [ + "pants.backend.shell.target_types.generator_settings" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.target_types", + "name": "ShellGeneratorSettingsRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "TargetFilesGeneratorSettingsRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.GenerateFilesFromShellCommandRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "GenerateFilesFromShellCommandRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.RunShellCommand": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported_RunShellCommand", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_RunShellCommand" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "RunShellCommand", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.backend.shell.util_rules.shell_command.ShellCommandProcessFromTargetRequest": { + "consumed_by_rules": [ + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "ShellCommandProcessFromTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.backend.shell.util_rules.shell_command", + "name": "ShellCommandProcessFromTargetRequest", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.backend.terraform.dependencies.TerraformDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependencies.get_terraform_providers" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "TerraformDependenciesRequest(source_files: 'SourceFiles', directories: 'Tuple[str, ...]', backend_config: 'SourceFiles', dependencies_files: 'SourceFiles', initialise_backend: 'bool' = False)", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformDependenciesRequest", + "provider": "pants.backend.terraform.dependencies", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependencies.init_terraform" + ] + }, + "pants.backend.terraform.dependencies.TerraformDependenciesResponse": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.terraform.dependencies", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "TerraformDependenciesResponse(fetched_deps: 'Tuple[Tuple[str, Digest], ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformDependenciesResponse", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependencies.get_terraform_providers" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependencies.init_terraform" + ] + }, + "pants.backend.terraform.dependencies.TerraformInitRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependencies.init_terraform" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "TerraformInitRequest(root_module: 'TerraformRootModuleField', backend_config: 'TerraformBackendConfigField', dependencies: 'TerraformDependenciesField', initialise_backend: 'bool' = False)", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformInitRequest", + "provider": "pants.backend.terraform.dependencies", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ] + }, + "pants.backend.terraform.dependencies.TerraformInitResponse": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.terraform.dependencies", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "TerraformInitResponse(sources_and_deps: 'Digest', terraform_files: 'tuple[str, ...]', chdir: 'str')", + "is_union": false, + "module": "pants.backend.terraform.dependencies", + "name": "TerraformInitResponse", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependencies.init_terraform" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ] + }, + "pants.backend.terraform.dependency_inference.InferTerraformModuleDependenciesRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "InferTerraformModuleDependenciesRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "InferDependenciesRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.ParseTerraformModuleSources": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "ParseTerraformModuleSources(sources_digest: 'Digest', paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParseTerraformModuleSources", + "provider": "pants.backend.terraform.dependency_inference", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ] + }, + "pants.backend.terraform.dependency_inference.ParserSetup": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "ParserSetup(pex: 'VenvPex')", + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "ParserSetup", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.dependency_inference.TerraformHcl2Parser": { + "consumed_by_rules": [ + "pants.backend.terraform.dependency_inference.setup_parser" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.dependency_inference", + "name": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_hcl2_parser" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformCheckRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformCheckRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "CheckRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.check.TerraformValidateSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.check.terraform_check" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.goals.check", + "name": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_validate" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.goals.deploy.DeployTerraformFieldSet": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.deploy.run_terraform_deploy" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "DeployTerraformFieldSet(address: 'Address', description: 'DescriptionField', root_module: 'TerraformRootModuleField', dependencies: 'TerraformDependenciesField', backend_config: 'TerraformBackendConfigField', var_files: 'TerraformVarFileSourcesField')", + "is_union": false, + "module": "pants.backend.terraform.goals.deploy", + "name": "DeployTerraformFieldSet", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "DeployFieldSet", + "used_in_rules": [] + }, + "pants.backend.terraform.goals.deploy.TerraformDeploymentRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "TerraformDeploymentRequest(field_set: 'TerraformDeploymentFieldSet')", + "is_union": false, + "module": "pants.backend.terraform.goals.deploy", + "name": "TerraformDeploymentRequest", + "provider": "pants.backend.terraform.goals.deploy", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.goals.deploy.run_terraform_deploy" + ] + }, + "pants.backend.terraform.goals.tailor.PutativeTerraformTargetsRequest": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "PutativeTerraformTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.terraform.goals.tailor", + "name": "PutativeTerraformTargetsRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "PutativeTargetsRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TfFmtSubsystem": { + "consumed_by_rules": [ + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_terraform_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.lint.tffmt.tffmt.TffmtRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.lint.tffmt.tffmt", + "name": "TffmtRequest", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.terraform.target_types.AllTerraformDeploymentTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.target_types", + "name": "AllTerraformDeploymentTargets", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.terraform.target_types.all_terraform_deployment_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.terraform.tool.TerraformProcess": { + "consumed_by_rules": [ + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": "A request to invoke Terraform.", + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformProcess", + "provider": "pants.backend.terraform.tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt" + ] + }, + "pants.backend.terraform.tool.TerraformTool": { + "consumed_by_rules": [ + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.terraform.tool.setup_terraform_process" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.terraform" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.terraform.tool", + "name": "TerraformTool", + "provider": "pants.backend.experimental.terraform", + "returned_by_rules": [ + "construct_scope_download_terraform" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.preamble.rules.PreambleRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.rules", + "name": "PreambleRequest", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.preamble.subsystem.PreambleSubsystem": { + "consumed_by_rules": [ + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.preamble.subsystem", + "name": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble", + "returned_by_rules": [ + "construct_scope_preamble" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.semgrep.rules.AllSemgrepConfigs": { + "consumed_by_rules": [ + "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs" + ], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.tools.semgrep" + ], + "documentation": "AllSemgrepConfigs(configs_by_dir: 'dict[PurePath, set[PurePath]]')", + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "AllSemgrepConfigs", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [ + "pants.backend.tools.semgrep.rules.find_all_semgrep_configs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.semgrep.rules.RelevantSemgrepConfigs": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.tools.semgrep.rules" + ], + "dependents": [ + "pants.backend.experimental.tools.semgrep" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "RelevantSemgrepConfigs", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [ + "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.tools.semgrep.rules.partition" + ] + }, + "pants.backend.tools.semgrep.rules.RelevantSemgrepConfigsRequest": { + "consumed_by_rules": [ + "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.tools.semgrep" + ], + "documentation": "RelevantSemgrepConfigsRequest(field_set: 'SemgrepFieldSet')", + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "RelevantSemgrepConfigsRequest", + "provider": "pants.backend.tools.semgrep.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.tools.semgrep.rules.partition" + ] + }, + "pants.backend.tools.semgrep.rules.SemgrepIgnoreFiles": { + "consumed_by_rules": [ + "pants.backend.tools.semgrep.rules.partition" + ], + "dependencies": [ + "builtins" + ], + "dependents": [ + "pants.backend.experimental.tools.semgrep" + ], + "documentation": "SemgrepIgnoreFiles(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "SemgrepIgnoreFiles", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [ + "pants.backend.tools.semgrep.rules.all_semgrep_ignore_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.semgrep.rules.SemgrepLintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.semgrep.rules", + "name": "SemgrepLintRequest", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.semgrep.subsystem.SemgrepSubsystem": { + "consumed_by_rules": [ + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.semgrep.rules.partition" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.tools.semgrep" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.semgrep.subsystem", + "name": "SemgrepSubsystem", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [ + "construct_scope_semgrep" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.workunit_logger.rules.WorkunitLogger": { + "consumed_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.tools.workunit_logger" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.workunit_logger.rules", + "name": "WorkunitLogger", + "provider": "pants.backend.experimental.tools.workunit_logger", + "returned_by_rules": [ + "construct_scope_workunit_logger" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.backend.tools.workunit_logger.rules.WorkunitLoggerCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "dependents": [ + "pants.backend.experimental.tools.workunit_logger" + ], + "documentation": "A unique request type that is installed to trigger construction of our WorkunitsCallback.", + "is_union": false, + "module": "pants.backend.tools.workunit_logger.rules", + "name": "WorkunitLoggerCallbackFactoryRequest", + "provider": "pants.backend.experimental.tools.workunit_logger", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.tools.yamllint.rules" + ], + "dependents": [ + "pants.backend.experimental.tools.yamllint" + ], + "documentation": "YamllintConfigFiles(snapshot: 'Snapshot', source_dir_to_config_files: 'FrozenDict[str, str]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.tools.yamllint.rules.partition_inputs" + ] + }, + "pants.backend.tools.yamllint.rules.YamllintConfigFilesRequest": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.tools.yamllint" + ], + "documentation": "YamllintConfigFilesRequest(filepaths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintConfigFilesRequest", + "provider": "pants.backend.tools.yamllint.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.tools.yamllint.rules.partition_inputs" + ] + }, + "pants.backend.tools.yamllint.rules.YamllintRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.rules", + "name": "YamllintRequest", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [], + "union_members": [], + "union_type": "AbstractLintRequest", + "used_in_rules": [] + }, + "pants.backend.tools.yamllint.subsystem.Yamllint": { + "consumed_by_rules": [ + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.backend.tools.yamllint.rules.run_yamllint" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.tools.yamllint" + ], + "documentation": null, + "is_union": false, + "module": "pants.backend.tools.yamllint.subsystem", + "name": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint", + "returned_by_rules": [ + "construct_scope_yamllint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.base.specs.RawSpecs": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Convert the specs into matching targets and files.\n\nUnlike `Specs`, this does not consider include vs. ignore specs. It simply matches all relevant\ntargets/files.\n\nWhen you want to operate on what the user specified, use `Specs`. Otherwise, you can use\neither `Specs` or `RawSpecs` in rules, e.g. to find what targets exist in a directory.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.javascript.package_json.find_owning_package", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.goals.tailor.restrict_conflicting_sources" + ] + }, + "pants.base.specs.RawSpecsWithoutFileOwners": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The subset of `RawSpecs` that do not use the `Owners` rule to match targets.\n\nThis exists to work around a cycle in the rule graph. Usually, consumers should use the simpler\n`Get(Addresses, RawSpecs)`, which will result in this rule being used.", + "is_union": false, + "module": "pants.base.specs", + "name": "RawSpecsWithoutFileOwners", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.resolve_all_generator_target_requests" + ] + }, + "pants.base.specs.Specs": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "The specs provided by the user for what to run on.\n\nThe `ignores` will filter out all relevant `includes`.\n\nIf your rule does not need to consider includes vs. ignores, e.g. to find all targets in a\ndirectory, you can directly use `RawSpecs`.", + "is_union": false, + "module": "pants.base.specs", + "name": "Specs", + "provider": "pants.base.specs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.paths.paths", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.tailor", + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.bsp.context.BSPContext": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependencies": [ + "pants.engine.internals.session" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "Wrapper type to provide BSP rules with the ability to interact with the BSP protocol\ndriver.", + "is_union": false, + "module": "pants.bsp.context", + "name": "BSPContext", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.rules.bsp_context" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.goal.BSPGoal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.bsp.goal", + "name": "BSPGoal", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_experimental_bsp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.protocol.BSPHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "Union type for rules to register handlers for BSP methods.", + "is_union": true, + "module": "pants.bsp.protocol", + "name": "BSPHandlerMapping", + "provider": "pants.bsp.protocol", + "returned_by_rules": [], + "union_members": [ + "BuildTargetSourcesHandlerMapping", + "CompileRequestHandlerMapping", + "DependencyModulesHandlerMapping", + "DependencySourcesHandlerMapping", + "InitializeBuildHandlerMapping", + "JavacOptionsHandlerMapping", + "ResourcesRequestHandlerMapping", + "ScalaMainClassesHandlerMapping", + "ScalaTestClassesHandlerMapping", + "ScalacOptionsHandlerMapping", + "WorkspaceBuildTargetsHandlerMapping" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.base.BuildTargetIdentifier": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A unique identifier for a target, can use any URI-compatible encoding as long as it is unique\nwithin the workspace.\n\nClients should not infer metadata out of the URI structure such as the path or query parameters,\nuse BuildTarget instead.", + "is_union": false, + "module": "pants.bsp.spec.base", + "name": "BuildTargetIdentifier", + "provider": "pants.bsp.spec.base", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.spec.compile.CompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.compile", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "CompileResult(origin_id: 'str | None', status_code: 'int', data_kind: 'str | None' = None, data: 'Any | None' = None)", + "is_union": false, + "module": "pants.bsp.spec.compile", + "name": "CompileResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.lifecycle.InitializeBuildResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.spec.lifecycle", + "pants.engine.unions" + ], + "dependents": [], + "documentation": "InitializeBuildResult(display_name: 'str', version: 'str', bsp_version: 'str', capabilities: 'BuildServerCapabilities', data: 'Any | None')", + "is_union": false, + "module": "pants.bsp.spec.lifecycle", + "name": "InitializeBuildResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.lifecycle.bsp_build_initialize" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.resources.ResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.spec.resources", + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "ResourcesResult(items: 'tuple[ResourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.resources", + "name": "ResourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "DependencyModulesResult(items: 'tuple[DependencyModulesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencyModulesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.DependencySourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "dependents": [], + "documentation": "DependencySourcesResult(items: 'tuple[DependencySourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "DependencySourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.SourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.spec.targets" + ], + "dependents": [], + "documentation": "SourcesResult(items: 'tuple[SourcesItem, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "SourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.spec.targets.WorkspaceBuildTargetsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.bsp.spec.targets", + "pants.engine.fs" + ], + "dependents": [], + "documentation": "WorkspaceBuildTargetsResult(targets: 'tuple[BuildTarget, ...]')", + "is_union": false, + "module": "pants.bsp.spec.targets", + "name": "WorkspaceBuildTargetsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.compile.CompileOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "CompileOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal', origin_id: 'str | None' = None, arguments: 'tuple[str, ...] | None' = ())", + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request" + ] + }, + "pants.bsp.util_rules.compile.CompileRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.compile", + "name": "CompileRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.BSPLanguageSupport": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Union exposed by language backends to inform BSP core rules of capabilities to advertise to\nclients.", + "is_union": true, + "module": "pants.bsp.util_rules.lifecycle", + "name": "BSPLanguageSupport", + "provider": "pants.bsp.util_rules.lifecycle", + "returned_by_rules": [], + "union_members": [ + "JavaBSPLanguageSupport", + "ScalaBSPLanguageSupport" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.lifecycle.InitializeBuildHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.lifecycle", + "name": "InitializeBuildHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.resources.ResourcesForOneBSPTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ResourcesForOneBSPTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesForOneBSPTargetRequest", + "provider": "pants.bsp.util_rules.resources", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request" + ] + }, + "pants.bsp.util_rules.resources.ResourcesRequestHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.resources", + "name": "ResourcesRequestHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetInternal": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "dependencies": [ + "pants.bsp.spec.base" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BSPBuildTargetInternal(name: 'str', specs: 'RawSpecs', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetInternal", + "provider": "pants.bsp.util_rules.targets, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetSourcesInfo": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Source files and roots for a BSP build target.\n\nIt is a separate class so that it is computed lazily only when called for by an RPC call.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetSourcesInfo", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargets": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.fs" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BSPBuildTargets(targets_mapping: 'FrozenDict[str, BSPBuildTargetInternal]')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide metadata for BSP build targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPBuildTargetsMetadataRequest", + "ScalaBSPBuildTargetsMetadataRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPBuildTargetsMetadataResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Response type for a BSPBuildTargetsMetadataRequest.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to compile targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPCompileRequest", + "ScalaBSPCompileRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPCompileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.bsp.util_rules.compile", + "pants.engine.target", + "pants.engine.unions", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Result of compilation of a target capable of target compilation.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPCompileResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.compile.bsp_compile_request", + "pants.bsp.util_rules.compile.compile_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide dependency modules.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "ScalaBSPDependencyModulesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPDependencyModulesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.build_root", + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "BSPDependencyModulesResult(modules: 'tuple[DependencyModule, ...]', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "Hook to allow language backends to provide resources for targets.", + "is_union": true, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [ + "JavaBSPResourcesRequest", + "ScalaBSPResourcesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BSPResourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.base.build_root", + "pants.bsp.util_rules.resources", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Resources for a target.", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BSPResourcesResult", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.core", + "returned_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.resources.bsp_resources_request", + "pants.bsp.util_rules.resources.resources_bsp_target" + ] + }, + "pants.bsp.util_rules.targets.BuildTargetSourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "BuildTargetSourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencyModulesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencyModulesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.DependencySourcesHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "DependencySourcesHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GenerateOneBSPBuildTargetRequest(bsp_target: 'BSPBuildTargetInternal')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.GenerateOneBSPBuildTargetResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.base.build_root", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "GenerateOneBSPBuildTargetResult(build_target: 'BuildTarget', digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_workspace_build_targets" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "MaterializeBuildTargetSourcesRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.MaterializeBuildTargetSourcesResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.base.build_root", + "pants.bsp.util_rules.targets" + ], + "dependents": [ + "pants.core" + ], + "documentation": "MaterializeBuildTargetSourcesResult(sources_item: 'SourcesItem')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_build_target_sources" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ResolveOneDependencyModuleRequest(bsp_target_id: 'BuildTargetIdentifier')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.ResolveOneDependencyModuleResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.bsp.util_rules.targets", + "pants.engine.unions" + ], + "dependents": [ + "pants.core" + ], + "documentation": "ResolveOneDependencyModuleResult(bsp_target_id: 'BuildTargetIdentifier', modules: 'tuple[DependencyModule, ...]' = (), digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "ResolveOneDependencyModuleResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_one_dependency_module" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.bsp_dependency_modules" + ] + }, + "pants.bsp.util_rules.targets.WorkspaceBuildTargetsHandlerMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.bsp.protocol" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "WorkspaceBuildTargetsHandlerMapping", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "BSPHandlerMapping", + "used_in_rules": [] + }, + "pants.bsp.util_rules.targets._ParseOneBSPMappingRequest": { + "consumed_by_rules": [ + "pants.bsp.util_rules.targets.parse_one_bsp_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_ParseOneBSPMappingRequest(name: 'str', definition: 'BSPTargetDefinition')", + "is_union": false, + "module": "pants.bsp.util_rules.targets", + "name": "_ParseOneBSPMappingRequest", + "provider": "pants.bsp.util_rules.targets", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.bsp.util_rules.targets.materialize_bsp_build_targets" + ] + }, + "pants.build_graph.address.BuildFileAddressRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to find the BUILD file path for an address.", + "is_union": false, + "module": "pants.build_graph.address", + "name": "BuildFileAddressRequest", + "provider": "pants.build_graph.address", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.filedeps.file_deps", + "pants.engine.internals.graph.find_owners" + ] + }, + "pants.core.goals.check.Check": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "Check", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.check.check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.check.CheckRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "A union for targets that should be checked.\n\nSubclass and install a member of this type to provide a checker.", + "is_union": true, + "module": "pants.core.goals.check", + "name": "CheckRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCheckRequest", + "JavacCheckRequest", + "KotlincCheckRequest", + "MyPyRequest", + "PytypeRequest", + "ScalacCheckRequest", + "TerraformCheckRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "CheckResult(exit_code: 'int', stdout: 'str', stderr: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0))", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResult", + "provider": "pants.backend.experimental.python.typecheck.pytype, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck" + ] + }, + "pants.core.goals.check.CheckResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Zero or more CheckResult objects for a single type checker.\n\nTypically, type checkers will return one result. If they no-oped, they will return zero results.\nHowever, some type checkers may need to partition their input and thus may need to return\nmultiple results.", + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckResults", + "provider": "pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.typecheck.pytype, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python.typecheck.mypy", + "returned_by_rules": [ + "pants.backend.go.goals.check.check_go", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.terraform.goals.check.terraform_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.check.check" + ] + }, + "pants.core.goals.check.CheckSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.check.check" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.check", + "name": "CheckSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_check" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.Deploy": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.backend.experimental.terraform", + "pants.engine.console", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": "Deploy(exit_code: 'int')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "Deploy", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.deploy.run_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy.DeployFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm", + "pants.backend.experimental.terraform" + ], + "documentation": "The FieldSet type for the `deploy` goal.\n\nUnion members may list any fields required to fulfill the instantiation of the `DeployProcess`\nresult of the deploy rule.", + "is_union": true, + "module": "pants.core.goals.deploy", + "name": "DeployFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployHelmDeploymentFieldSet", + "DeployTerraformFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.deploy.DeployProcess": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A process that when executed will have the side effect of deploying a target.\n\nTo provide with the ability to deploy a given target, create a custom `DeployFieldSet` for\nthat given target and implement a rule that returns `DeployProcess` for that custom field set:\n\nExample:\n\n @dataclass(frozen=True)\n class MyDeploymentFieldSet(DeployFieldSet):\n pass\n\n @rule\n async def my_deployment_process(field_set: MyDeploymentFieldSet) -> DeployProcess:\n # Create the underlying process that executes the deployment\n process = Process(...)\n return DeployProcess(\n name=\"my_deployment\",\n process=InteractiveProcess.from_process(process)\n )\n\n def rules():\n return [\n *collect_rules(),\n UnionRule(DeployFieldSet, MyDeploymentFieldSet)\n ]\n\nUse the `publish_dependencies` field to provide with a list of targets that produce packages\nwhich need to be externally published before the deployment process is executed.", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeployProcess", + "provider": "pants.backend.experimental.helm, pants.backend.experimental.terraform", + "returned_by_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.terraform.goals.deploy.run_terraform_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.deploy.DeploySubsystem": { + "consumed_by_rules": [ + "pants.core.goals.deploy.run_deploy" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "DeploySubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_experimental_deploy" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.deploy._PublishProcessesForTargetRequest": { + "consumed_by_rules": [ + "pants.core.goals.deploy.publish_process_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_PublishProcessesForTargetRequest(target: 'Target')", + "is_union": false, + "module": "pants.core.goals.deploy", + "name": "_PublishProcessesForTargetRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy" + ] + }, + "pants.core.goals.export.Export": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.base.build_root", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "Export", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.export.export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.export.ExportRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A union for exportable data provided by a backend.\n\nSubclass and install a member of this type to export data.", + "is_union": true, + "module": "pants.core.goals.export", + "name": "ExportRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ExportVenvsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ExportResult(description: 'str', reldir: 'str', *, digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), post_processing_cmds: 'Iterable[PostProcessingCommand]' = (), resolve: 'str | None' = None)", + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResult", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.do_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.export.export_virtualenv_for_resolve" + ] + }, + "pants.core.goals.export.ExportResults": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportResults", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.export.export_virtualenvs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export" + ] + }, + "pants.core.goals.export.ExportSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "pants.backend.python.goals.export.export_virtualenvs", + "pants.core.goals.export.export" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.export", + "name": "ExportSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_export" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.AbstractFixRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fix", + "name": "AbstractFixRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "OpenApiFormatRequest", + "PreambleRequest", + "PyUpgradeRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.Batch": { + "consumed_by_rules": [ + "pants.backend.python.lint.docformatter.rules.docformatter_fmt" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.python.lint.docformatter" + ], + "documentation": "Batch(tool_name: 'str', elements: 'tuple[PartitionElementT, ...]', partition_metadata: 'PartitionMetadataT', snapshot: 'Snapshot')", + "is_union": true, + "module": "pants.core.goals.fix", + "name": "Batch", + "provider": "pants.backend.python.lint.docformatter", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.fix.Fix": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "Fix", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fix.fix" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix.FixResult": { + "consumed_by_rules": [ + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": [ + "pants.core" + ], + "documentation": "FixResult(input: 'Snapshot', output: 'Snapshot', stdout: 'str', stderr: 'str', tool_name: 'str')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixResult", + "provider": "pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.experimental.go, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.openapi.lint.openapi_format, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.python.lint.autoflake, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.isort, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble, pants.core", + "returned_by_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.backend.tools.preamble.rules.preamble_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix_batch" + ] + }, + "pants.core.goals.fix.FixSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fix", + "name": "FixSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_fix" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fix._FixBatchRequest": { + "consumed_by_rules": [ + "pants.core.goals.fix.fix_batch" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request to serially fix all the elements in the given batch.", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.fix._FixBatchResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "dependents": [ + "pants.core" + ], + "documentation": "_FixBatchResult(results: 'tuple[FixResult, ...]')", + "is_union": false, + "module": "pants.core.goals.fix", + "name": "_FixBatchResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fix.fix_batch" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt" + ] + }, + "pants.core.goals.fmt.AbstractFmtRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.fmt", + "name": "AbstractFmtRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BuildifierRequest", + "DocformatterRequest", + "GofmtRequest", + "GoogleJavaFormatRequest", + "IsortRequest", + "KtlintRequest", + "OpenApiFormatRequest", + "PreambleRequest", + "ScalafmtRequest", + "ShfmtRequest", + "TffmtRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.Fmt": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "Fmt", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.fmt.FmtSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.fmt.fmt" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.fmt", + "name": "FmtSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_fmt" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "A union base for generating ecosystem-specific lockfiles.\n\nEach language ecosystem should set up a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile` and `GenerateJVMLockfile`, and register a union rule. They should\nalso set up a simple rule that goes from that class -> `WrappedGenerateLockfile`.\n\nSubclasses will usually want to add additional properties, such as what requirements to\ninstall and Python interpreter constraints.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfile", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GenerateJvmLockfile", + "GeneratePythonLockfile" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfileResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.core" + ], + "documentation": "The result of generating a lockfile for a particular resolve.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateLockfilesSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.jvm.goals.lockfile.generate_jvm_lockfile" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateLockfilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_generate_lockfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_lockfiles.GenerateToolLockfileSentinel": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "Tools use this as an entry point to say how to generate their tool lockfile.\n\nEach language ecosystem should set up a union member of `GenerateLockfile`, like\n`GeneratePythonLockfile`, as explained in that class's docstring.\n\nEach language ecosystem should also subclass `GenerateToolLockfileSentinel`, e.g.\n`GeneratePythonToolLockfileSentinel`. The subclass does not need to do anything - it is only used to know which language ecosystems tools correspond to.\n\nThen, each tool should subclass their language ecosystem's subclass of `GenerateToolLockfileSentinel` and set up a rule that goes from the\nsubclass -> the language's lockfile request, e.g. BlackLockfileSentinel ->\nGeneratePythonLockfile. Register `UnionRule(GenerateToolLockfileSentinel, MySubclass)`.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "GenerateToolLockfileSentinel", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoogleJavaFormatToolLockfileSentinel", + "GrpcJavaToolLockfileSentinel", + "JarJarGeneratorLockfileSentinel", + "JarToolGenerateLockfileSentinel", + "JavaParserToolLockfileSentinel", + "JunitToolLockfileSentinel", + "KotlinParserToolLockfileSentinel", + "KtlintToolLockfileSentinel", + "ScalaParserToolLockfileSentinel", + "ScalafmtToolLockfileSentinel", + "ScalapbcToolLockfileSentinel", + "ScalatestToolLockfileSentinel", + "StripJarToolLockfileSentinel" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "All defined user resolves for a particular language ecosystem.\n\nSee KnownUserResolveNamesRequest for how to use this type. `option_name` should be formatted\nlike `[options-scope].resolves`", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.KnownUserResolveNamesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "A hook for a language ecosystem to declare which resolves it has defined.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> KnownUserResolveNames, usually by simply reading the\n`resolves` option from the relevant subsystem.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "KnownUserResolveNamesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "KnownJVMUserResolveNamesRequest", + "KnownPythonUserResolveNamesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.export.export", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.RequestedUserResolveNames": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "The user resolves requested for a particular language ecosystem.\n\nEach language ecosystem should set up a subclass and register it with a UnionRule. Implement a\nrule that goes from the subclass -> UserGenerateLockfiles.", + "is_union": true, + "module": "pants.core.goals.generate_lockfiles", + "name": "RequestedUserResolveNames", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "RequestedJVMUserResolveNames", + "RequestedPythonUserResolveNames" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.UserGenerateLockfiles": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.core" + ], + "documentation": "All user resolves for a particular language ecosystem to build.\n\nEach language ecosystem should set up a subclass of `RequestedUserResolveNames` (see its\ndocstring), and implement a rule going from that subclass -> UserGenerateLockfiles. Each element\nin the returned `UserGenerateLockfiles` should be a subclass of `GenerateLockfile`, like\n`GeneratePythonLockfile`.", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_lockfiles.WrappedGenerateLockfile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "WrappedGenerateLockfile(request: 'GenerateLockfile')", + "is_union": false, + "module": "pants.core.goals.generate_lockfiles", + "name": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java, pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal" + ] + }, + "pants.core.goals.generate_snapshots.EnvironmentAwareGenerateSnapshotsRequest": { + "consumed_by_rules": [ + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request class to request a `GenerateSnapshotsResult` in an environment-aware fashion.", + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "EnvironmentAwareGenerateSnapshotsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_snapshots.generate_snapshots" + ] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshots": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshots", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.generate_snapshots.generate_snapshots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshotsFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "The fields necessary to generate snapshots from a target.", + "is_union": true, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshotsFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "HelmUnitTestFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots" + ] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshotsResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.engine.environment" + ], + "dependents": [ + "pants.core" + ], + "documentation": "GenerateSnapshotsResult(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshotsResult", + "provider": "pants.backend.experimental.helm, pants.core", + "returned_by_rules": [ + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "pants.core.goals.generate_snapshots.generate_snapshots" + ] + }, + "pants.core.goals.generate_snapshots.GenerateSnapshotsSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.generate_snapshots", + "name": "GenerateSnapshotsSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_generate_snapshots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.AbstractLintRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ], + "documentation": "Base class for plugin types wanting to be run as part of `lint`.\n\nPlugins should define a new type which subclasses either `LintTargetsRequest` (to lint targets)\nor `LintFilesRequest` (to lint arbitrary files), and set the appropriate class variables.\nE.g.\n class DryCleaningRequest(LintTargetsRequest):\n name = DryCleaningSubsystem.options_scope\n field_set_type = DryCleaningFieldSet\n\nThen, define 2 `@rule`s:\n 1. A rule which takes an instance of your request type's `PartitionRequest` class property,\n and returns a `Partitions` instance.\n E.g.\n @rule\n async def partition(\n request: DryCleaningRequest.PartitionRequest[DryCleaningFieldSet]\n # or `request: DryCleaningRequest.PartitionRequest` if file linter\n subsystem: DryCleaningSubsystem,\n ) -> Partitions[DryCleaningFieldSet, Any]:\n if subsystem.skip:\n return Partitions()\n\n # One possible implementation\n return Partitions.single_partition(request.field_sets)\n\n 2. A rule which takes an instance of your request type's `Batch` class property, and\n returns a `LintResult instance.\n E.g.\n @rule\n async def dry_clean(\n request: DryCleaningRequest.Batch,\n ) -> LintResult:\n ...\n\nLastly, register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules()\n ]", + "is_union": true, + "module": "pants.core.goals.lint", + "name": "AbstractLintRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "AddTrailingCommaRequest", + "AutoflakeRequest", + "BanditRequest", + "BlackRequest", + "BlackRequest", + "BufFormatRequest", + "BufLintRequest", + "BuildifierRequest", + "DocformatterRequest", + "Flake8Request", + "GofmtRequest", + "GoogleJavaFormatRequest", + "HadolintRequest", + "HelmLintRequest", + "IsortRequest", + "KtlintRequest", + "OpenApiFormatRequest", + "PreambleRequest", + "PyUpgradeRequest", + "PydocstyleRequest", + "PylintRequest", + "RegexLintRequest", + "RenameFieldsInFilesRequest", + "RenameTargetsInFilesRequest", + "RuffFixRequest", + "RuffLintRequest", + "ScalafmtRequest", + "SemgrepLintRequest", + "ShellcheckRequest", + "ShfmtRequest", + "SpectralRequest", + "TffmtRequest", + "YamllintRequest", + "YapfRequest", + "YapfRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.Batch": { + "consumed_by_rules": [ + "pants.backend.tools.semgrep.rules.lint" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.tools.semgrep" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "Batch", + "provider": "pants.backend.experimental.tools.semgrep", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.lint.Lint": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "Lint", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.lint.lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.LintResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "LintResult(exit_code: 'int', stdout: 'str', stderr: 'str', linter_name: 'str', partition_description: 'str | None' = None, report: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), _render_message: 'bool' = True)", + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.helm, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.tools.semgrep, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python.lint.bandit, pants.backend.python.lint.flake8, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.shell.lint.shellcheck, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.goals.fix.convert_fix_result_to_lint_result" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.lint.LintSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.lint.lint" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.lint", + "name": "LintSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_lint" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.lint.PartitionRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.lint", + "name": "PartitionRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest", + "PartitionRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.lint.lint" + ] + }, + "pants.core.goals.package.AllPackageableTargets": { + "consumed_by_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.docker" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "AllPackageableTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.find_all_packageable_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.BuiltPackage": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.platform", + "pants.engine.process", + "pants.engine.unions", + "pants.jvm.package.deploy_jar", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BuiltPackage(digest: 'Digest', artifacts: 'tuple[BuiltPackageArtifact, ...]')", + "is_union": false, + "module": "pants.core.goals.package", + "name": "BuiltPackage", + "provider": "pants.backend.awslambda.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.google_cloud_function.python, pants.backend.python, pants.core", + "returned_by_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.go.goals.package_binary.package_go_binary", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.core.goals.package.environment_aware_package", + "pants.core.target_types.package_archive_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.core.goals.package.EnvironmentAwarePackageRequest": { + "consumed_by_rules": [ + "pants.core.goals.package.environment_aware_package" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request class to request a `BuiltPackage` in an environment-aware fashion.", + "is_union": false, + "module": "pants.core.goals.package", + "name": "EnvironmentAwarePackageRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.package.Package": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "Package", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.package.package_asset" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.package.PackageFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core" + ], + "documentation": "The fields necessary to build an asset from a target.", + "is_union": true, + "module": "pants.core.goals.package", + "name": "PackageFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "ArchiveFieldSet", + "DeployJarFieldSet", + "DockerPackageFieldSet", + "GoBinaryFieldSet", + "HelmPackageFieldSet", + "PackageWarFileFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonAwsLambdaFieldSet", + "PythonAwsLambdaLayerFieldSet", + "PythonDistributionFieldSet", + "PythonGoogleCloudFunctionFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.core.goals.package.environment_aware_package" + ] + }, + "pants.core.goals.package.PackageSubsystem": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.package", + "name": "PackageSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_package" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.Publish": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python", + "pants.engine.console", + "pants.engine.environment", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "Publish", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "FieldSet for PublishRequest.\n\nUnion members may list any fields required to fulfill the instantiation of the\n`PublishProcesses` result of the publish rule.", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "HelmPublishFieldSet", + "PublishDockerImageFieldSet", + "PublishPythonPackageFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.publish.PublishProcesses": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Collection of what processes to run for all built packages.\n\nThis is returned from implementing rules in response to a PublishRequest.\n\nDepending on the capabilities of the publishing tool, the work may be partitioned based on\nnumber of artifacts and/or repositories to publish to.", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcesses", + "provider": "pants.backend.docker, pants.backend.experimental.helm, pants.backend.experimental.python, pants.core", + "returned_by_rules": [ + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.python.goals.publish.twine_upload", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.package_for_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishProcessesRequest": { + "consumed_by_rules": [ + "pants.core.goals.publish.package_for_publish" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Internal request taking all field sets for a target and turning it into a `PublishProcesses`\ncollection (via registered publish plugins).", + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishProcessesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.publish.run_publish" + ] + }, + "pants.core.goals.publish.PublishRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.python" + ], + "documentation": "Implement a union member subclass of this union class along with a PublishFieldSet subclass\nthat appoints that member subclass in order to receive publish requests for targets compatible\nwith the field set.\n\nThe `packages` hold all artifacts produced for a given target to be published.\n\nExample:\n\n PublishToMyRepoRequest(PublishRequest):\n pass\n\n PublishToMyRepoFieldSet(PublishFieldSet):\n publish_request_type = PublishToMyRepoRequest\n\n # Standard FieldSet semantics from here on:\n required_fields = (MyRepositories,)\n ...", + "is_union": true, + "module": "pants.core.goals.publish", + "name": "PublishRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PublishDockerImageRequest", + "PublishHelmChartRequest", + "PublishPythonPackageRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.publish.package_for_publish" + ] + }, + "pants.core.goals.publish.PublishSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.publish.run_publish" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.publish", + "name": "PublishSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_publish" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.Repl": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.engine.console", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "Repl", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.repl.ReplImplementation": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "A REPL implementation for a specific language or runtime.\n\nProxies from the top-level `repl` goal to an actual implementation.", + "is_union": true, + "module": "pants.core.goals.repl", + "name": "ReplImplementation", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "IPythonRepl", + "PythonRepl", + "ScalaRepl" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "ReplRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, run_in_workspace: 'bool' = True) -> 'None'", + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplRequest", + "provider": "pants.backend.experimental.scala, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.scala.goals.repl.create_scala_repl_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.repl.run_repl" + ] + }, + "pants.core.goals.repl.ReplSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.repl.run_repl" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.repl", + "name": "ReplSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_repl" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.Run": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.engine.env_vars", + "pants.engine.fs", + "pants.engine.process", + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "Run", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.run.run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.run.RunDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Like RunRequest, but launches the process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunDebugAdapterRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DeployJarFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DockerRunFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_GoBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JavaFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JvmArtifactFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_KotlinFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PexBinaryFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PyOxidizerFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PythonRequirementFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_RunShellCommand", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_ScalaFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_SystemBinaryFieldSet" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.run.run" + ] + }, + "pants.core.goals.run.RunFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary from a target to run a program/script.", + "is_union": true, + "module": "pants.core.goals.run", + "name": "RunFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "DeployJarFieldSet", + "DockerRunFieldSet", + "GoBinaryFieldSet", + "JavaFieldSet", + "JvmArtifactFieldSet", + "KotlinFieldSet", + "PexBinaryFieldSet", + "PyOxidizerFieldSet", + "PythonRequirementFieldSet", + "PythonSourceFieldSet", + "RunShellCommand", + "ScalaFieldSet", + "SystemBinaryFieldSet" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet", + "pants.core.goals.run.run", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunInSandboxRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.package.deploy_jar" + ], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell" + ], + "documentation": "A run request that launches the process in the sandbox for use as part of a build rule.\n\nThe arguments and environment should only use values relative to the build root (or prefixed\nwith `{chroot}`), or refer to binaries that were fetched with `BinaryPathRequest`.\n\nPresently, implementors can opt to use the existing as not guaranteeing hermeticity, which will\ninternally mark the rule as uncacheable. In such a case, non-safe APIs can be used, however,\nthis behavior can result in poorer performance, and only exists as a stop-gap while\nimplementors work to make sure their `RunRequest`-generating rules can be used in a hermetic\ncontext, or writing new custom rules. (See the Plugin Upgrade Guide for details).", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunInSandboxRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported_RunShellCommand", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.goals.run.RunRequest": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.experimental.helm", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.backend.google_cloud_function.python", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process", + "pants.engine.target", + "pants.jvm.package.deploy_jar", + "pants.jvm.target_types" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.core" + ], + "documentation": "RunRequest(*, digest: 'Digest', args: 'Iterable[str]', extra_env: 'Optional[Mapping[str, str]]' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunRequest", + "provider": "pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python.packaging.pyoxidizer, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet", + "pants.core.goals.run.run", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet" + ] + }, + "pants.core.goals.run.RunSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.run.run" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.run", + "name": "RunSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_run" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.AllOwnedSources": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "All files in the project already owned by targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "AllOwnedSources", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.determine_all_owned_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.DisjointSourcePutativeTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Putative target whose sources don't overlap with those of any existing targets.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "DisjointSourcePutativeTarget", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditBuildFilesRequest": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "EditBuildFilesRequest(putative_targets: 'PutativeTargets')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditBuildFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.EditedBuildFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": [ + "pants.core" + ], + "documentation": "EditedBuildFiles(digest: 'Digest', created_paths: 'tuple[str, ...]', updated_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "EditedBuildFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.edit_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTarget": { + "consumed_by_rules": [ + "pants.core.goals.tailor.restrict_conflicting_sources" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A potential target to add, detected by various heuristics.\n\nThis class uses the term \"target\" in the loose sense. It can also represent an invocation of a\ntarget-generating macro.", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTarget", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargets": { + "consumed_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": [ + "builtins", + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.PutativeTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "PutativeTargetsRequest(dirs: 'tuple[str, ...]')", + "is_union": true, + "module": "pants.core.goals.tailor", + "name": "PutativeTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "PutativeDockerTargetsRequest", + "PutativeGoTargetsRequest", + "PutativeHelmTargetsRequest", + "PutativeJavaTargetsRequest", + "PutativeKotlinTargetsRequest", + "PutativeOpenApiTargetsRequest", + "PutativeProtobufTargetsRequest", + "PutativePythonTargetsRequest", + "PutativeScalaTargetsRequest", + "PutativeShellTargetsRequest", + "PutativeTerraformTargetsRequest", + "PutativeThriftTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.tailor.TailorGoal": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.TailorSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.tailor" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "TailorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_tailor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.tailor.UniquelyNamedPutativeTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Putative targets that have no name conflicts with existing targets (or each other).", + "is_union": false, + "module": "pants.core.goals.tailor", + "name": "UniquelyNamedPutativeTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.tailor.tailor" + ] + }, + "pants.core.goals.test.Batch": { + "consumed_by_rules": [ + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_Shunit2TestRequest" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.shell" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "Batch", + "provider": "pants.backend.shell", + "returned_by_rules": [], + "union_members": [], + "union_type": "Batch", + "used_in_rules": [] + }, + "pants.core.goals.test.BuildPackageDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "BuildPackageDependenciesRequest(field: 'RuntimePackageDependenciesField')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuildPackageDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.BuiltPackageDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.google_cloud_function.python", + "pants.backend.python" + ], + "dependents": [ + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "BuiltPackageDependencies", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.build_runtime_package_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target" + ] + }, + "pants.core.goals.test.CoverageDataCollection": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.python" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "CoverageDataCollection", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoCoverageDataCollection", + "PytestCoverageDataCollection" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.CoverageReports": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": [ + "pants.core" + ], + "documentation": "CoverageReports(reports: 'tuple[CoverageReport, ...]')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "CoverageReports", + "provider": "pants.backend.experimental.go, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "pants.backend.python.goals.coverage_py.generate_coverage_reports" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.PartitionRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ScalatestTestRequest" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": true, + "module": "pants.core.goals.test", + "name": "PartitionRequest", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [], + "union_members": [], + "union_type": "PartitionRequest", + "used_in_rules": [] + }, + "pants.core.goals.test.Test": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble", + "pants.engine.console", + "pants.engine.desktop", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.session", + "pants.engine.process", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "Test", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.run_tests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestDebugAdapterRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.core" + ], + "documentation": "Like TestDebugRequest, but launches the test process using the relevant Debug Adapter server.\n\nThe process should be launched waiting for the client to connect.", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_GoTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_HelmUnitTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_JunitTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ScalatestTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ShellTestRequest", + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_Shunit2TestRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestDebugRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "TestDebugRequest(process: 'InteractiveProcess')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestDebugRequest", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.python.goals.pytest_runner.debug_python_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_GoTestRequest", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_HelmUnitTestRequest", + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_ShellTestRequest", + "pants.jvm.test.junit.setup_junit_debug_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestExtraEnv": { + "consumed_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "TestExtraEnv(env: 'EnvironmentVars')", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestExtraEnv", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.test.get_filtered_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestFieldSet": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The fields necessary to run tests on a target.", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestFieldSet", + "HelmUnitTestFieldSet", + "JunitTestFieldSet", + "PythonTestFieldSet", + "ScalatestTestFieldSet", + "Shunit2FieldSet", + "TestShellCommandFieldSet" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "Base class for plugin types wanting to be run as part of `test`.\n\nPlugins should define a new type which subclasses this type, and set the\nappropriate class variables.\nE.g.\n class DryCleaningRequest(TestRequest):\n tool_subsystem = DryCleaningSubsystem\n field_set_type = DryCleaningFieldSet\n\nThen register the rules which tell Pants about your plugin.\nE.g.\n def rules():\n return [\n *collect_rules(),\n *DryCleaningRequest.rules(),\n ]", + "is_union": true, + "module": "pants.core.goals.test", + "name": "TestRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "GoTestRequest", + "HelmUnitTestRequest", + "JunitTestRequest", + "PyTestRequest", + "ScalatestTestRequest", + "ShellTestRequest", + "Shunit2TestRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.test.TestResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.env_vars", + "pants.engine.process" + ], + "dependents": [ + "pants.core" + ], + "documentation": "TestResult(exit_code: 'int | None', stdout_bytes: 'bytes', stdout_digest: 'FileDigest', stderr_bytes: 'bytes', stderr_digest: 'FileDigest', addresses: 'tuple[Address, ...]', output_setting: 'ShowOutput', result_metadata: 'ProcessResultMetadata | None', partition_description: 'str | None' = None, coverage_data: 'CoverageData | None' = None, xml_results: 'Snapshot | None' = None, extra_output: 'Snapshot | None' = None, log_extra_output: 'bool' = False, process_results: 'Tuple[FallibleProcessResult, ...]' = , output_simplifier: 'Simplifier' = Simplifier(strip_chroot_path=True, strip_formatting=False))", + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestResult", + "provider": "pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.jvm.test.junit.run_junit_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.goals.test.TestSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_test", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.goals.test.run_tests", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.test", + "name": "TestSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_test" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithBlackRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithBlackRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.FormatWithYapfRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "FormatWithYapfRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedFieldsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedFieldsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RenameDeprecatedTargetsRequest": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RenameDeprecatedTargetsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "RewrittenBuildFileRequest", + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.RewrittenBuildFile": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.fs" + ], + "dependents": [ + "pants.core" + ], + "documentation": "RewrittenBuildFile(path: 'str', lines: 'tuple[str, ...]', change_descriptions: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFile", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.RewrittenBuildFileRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "RewrittenBuildFileRequest(path: 'str', lines: 'tuple[str, ...]', colors_enabled: 'bool')", + "is_union": true, + "module": "pants.core.goals.update_build_files", + "name": "RewrittenBuildFileRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [ + "FormatWithBlackRequest", + "FormatWithYapfRequest", + "RenameDeprecatedFieldsRequest", + "RenameDeprecatedTargetsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesGoal": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.base.specs", + "pants.engine.console", + "pants.engine.fs", + "pants.engine.internals.build_files", + "pants.engine.unions" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesGoal", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.goals.update_build_files.UpdateBuildFilesSubsystem": { + "consumed_by_rules": [ + "pants.core.goals.update_build_files.update_build_files" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.goals.update_build_files", + "name": "UpdateBuildFilesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_update_build_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.debug_adapter.DebugAdapterSubsystem": { + "consumed_by_rules": [ + "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.debug_adapter", + "name": "DebugAdapterSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_debug_adapter" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.EnvironmentAware": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrap": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "PythonBootstrap(interpreter_names: 'tuple[str, ...]', interpreter_search_paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrap", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap.PythonBootstrapSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_python_bootstrap", + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "PythonBootstrapSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_python_bootstrap" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.subsystems.python_bootstrap._ExpandInterpreterSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "_ExpandInterpreterSearchPathsRequest(interpreter_search_paths: 'Collection[str]', env_tgt: 'EnvironmentTarget')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_ExpandInterpreterSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.subsystems.python_bootstrap._SearchPaths": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": "_SearchPaths(paths: 'tuple[str, ...]')", + "is_union": false, + "module": "pants.core.subsystems.python_bootstrap", + "name": "_SearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.target_types.AllAssetTargets": { + "consumed_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.core" + ], + "documentation": "AllAssetTargets(resources: 'tuple[Target, ...]', files: 'tuple[Target, ...]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargets", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.find_all_assets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.target_types.AllAssetTargetsByPath": { + "consumed_by_rules": [ + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm", + "pants.backend.python" + ], + "documentation": "AllAssetTargetsByPath(resources: 'FrozenDict[PurePath, frozenset[Target]]', files: 'FrozenDict[PurePath, frozenset[Target]]')", + "is_union": false, + "module": "pants.core.target_types", + "name": "AllAssetTargetsByPath", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.target_types.map_assets_by_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies" + ] + }, + "pants.core.target_types.ArchiveFieldSet": { + "consumed_by_rules": [ + "pants.core.target_types.package_archive_target" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ArchiveFieldSet(address: 'Address', packages: 'ArchivePackagesField', files: 'ArchiveFilesField', format_field: 'ArchiveFormatField', output_path: 'OutputPathField')", + "is_union": false, + "module": "pants.core.target_types", + "name": "ArchiveFieldSet", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateFileSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_file_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateFileSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.GenerateResourceSourceRequest": { + "consumed_by_rules": [ + "pants.core.target_types.hydrate_resource_source" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "GenerateResourceSourceRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.target_types.RelocateFilesViaCodegenRequest": { + "consumed_by_rules": [ + "pants.core.target_types.relocate_files" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.target_types", + "name": "RelocateFilesViaCodegenRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries.GunzipBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GunzipBinary(python_binary: 'PythonBuildStandaloneBinary')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "GunzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.adhoc_binaries.PythonBuildStandaloneBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_environment.find_pex_python", + "pants.core.util_rules.adhoc_binaries.find_gunzip", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": "A Python interpreter for use by `@rule` code as an alternative to BashBinary scripts.\n\nThis interpreter is provided by Python Build Standalone https://gregoryszorc.com/docs/python-build-standalone/main/,\nwhich has a few caveats. Namely it doesn't play nicely with third-party sdists. Meaning Pants'\nscripts being run by Python Build Standalone should avoid third-party sdists.", + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.adhoc_binaries._DownloadPythonBuildStandaloneBinaryRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_DownloadPythonBuildStandaloneBinaryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_binaries._PythonBuildStandaloneBinary": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.platform" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.adhoc_binaries", + "name": "_PythonBuildStandaloneBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "AdhocProcessRequest(description: 'str', address: 'Address', working_directory: 'str', root_output_directory: 'str', argv: 'tuple[str, ...]', timeout: 'int | None', input_digest: 'Digest', immutable_input_digests: 'FrozenDict[str, Digest] | None', append_only_caches: 'FrozenDict[str, str] | None', output_files: 'tuple[str, ...]', output_directories: 'tuple[str, ...]', fetch_env_vars: 'tuple[str, ...]', supplied_env_var_values: 'FrozenDict[str, str] | None', log_on_process_errors: 'FrozenDict[int, str] | None', log_output: 'bool', capture_stdout_file: 'str | None', capture_stderr_file: 'str | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.core.util_rules.adhoc_process_support.AdhocProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.terraform", + "pants.core", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell" + ], + "documentation": "AdhocProcessResult(process_result: 'ProcessResult', adjusted_digest: 'Digest')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "AdhocProcessResult", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox" + ] + }, + "pants.core.util_rules.adhoc_process_support.ExtraSandboxContents": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell" + ], + "documentation": "ExtraSandboxContents(digest: 'Digest', path: 'str | None', immutable_input_digests: 'Mapping[str, Digest]', append_only_caches: 'Mapping[str, str]', extra_env: 'Mapping[str, str]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ExtraSandboxContents", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.MergeExtraSandboxContents": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "MergeExtraSandboxContents(additions: 'tuple[ExtraSandboxContents, ...]')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "MergeExtraSandboxContents", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolveExecutionDependenciesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.shell" + ], + "documentation": "ResolveExecutionDependenciesRequest(address: 'Address', execution_dependencies: 'tuple[str, ...] | None', runnable_dependencies: 'tuple[str, ...] | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolveExecutionDependenciesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.adhoc_process_support.ResolvedExecutionDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.google_cloud_function.python", + "pants.backend.python", + "pants.core", + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell" + ], + "documentation": "ResolvedExecutionDependencies(digest: 'Digest', runnable_dependencies: 'RunnableDependencies | None')", + "is_union": false, + "module": "pants.core.util_rules.adhoc_process_support", + "name": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell", + "returned_by_rules": [ + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request" + ] + }, + "pants.core.util_rules.archive.CreateArchive": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.create_archive" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "A request to create an archive.\n\nAll files in the input snapshot will be included in the resulting archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "CreateArchive", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.package_archive_target" + ] + }, + "pants.core.util_rules.archive.ExtractedArchive": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.core" + ], + "documentation": "The result of extracting an archive.", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "ExtractedArchive", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.core.util_rules.archive.MaybeExtractArchiveRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A request to extract a single archive file (otherwise returns the input digest).\n\n:param digest: The digest of the archive to maybe extract. If the archive contains a single file\n which matches a known suffix, the `ExtractedArchive` will contain the extracted digest.\n Otherwise the `ExtractedArchive` will contain this digest.\n:param use_suffix: If provided, extracts the single file archive as if it had this suffix.\n Useful in situations where the file is archived then renamed.\n (E.g. A Python `.whl` is a renamed `.zip`, so the client should provide `\".zip\"`)", + "is_union": false, + "module": "pants.core.util_rules.archive", + "name": "MaybeExtractArchiveRequest", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.asdf.AsdfToolPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "AsdfToolPathsRequest(env_tgt: 'EnvironmentTarget', tool_name: 'str', tool_description: 'str', resolve_standard: 'bool', resolve_local: 'bool', paths_option_name: 'str', bin_relpath: 'str' = 'bin')", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.asdf.AsdfToolPathsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.base.build_root", + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": "AsdfToolPathsResult(tool_name: 'str', standard_tool_paths: 'tuple[str, ...]' = (), local_tool_paths: 'tuple[str, ...]' = ())", + "is_union": false, + "module": "pants.core.util_rules.asdf", + "name": "AsdfToolPathsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.asdf.resolve_asdf_tool_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.config_files.ConfigFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Config files used by a tool run by Pants.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.config_files.ConfigFilesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.config_files.find_config_file" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Resolve the specified config files if given, else look for candidate config files if\ndiscovery is enabled.\n\nFiles in `check_existence` only need to exist, whereas files in `check_content` both must exist\nand contain the bytes snippet in the file.", + "is_union": false, + "module": "pants.core.util_rules.config_files", + "name": "ConfigFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf" + ] + }, + "pants.core.util_rules.distdir.DistDir": { + "consumed_by_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.lint.lint", + "pants.core.goals.package.package_asset", + "pants.core.goals.test.run_tests" + ], + "dependencies": [ + "pants.base.build_root" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "The directory to which we write distributable files.", + "is_union": false, + "module": "pants.core.util_rules.distdir", + "name": "DistDir", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.distdir.get_distdir" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.environments.EnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "EnvironmentNameRequest(raw_value: 'str', description_of_origin: 'str')", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "EnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.export.export", + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "pants.core.goals.lint.lint", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run" + ] + }, + "pants.core.util_rules.environments.OptionField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "OptionField", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.core.util_rules.environments.SingleEnvironmentNameRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Asserts that all of the given environment strings resolve to the same EnvironmentName.", + "is_union": false, + "module": "pants.core.util_rules.environments", + "name": "SingleEnvironmentNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.util_rules.external_tool.DownloadedExternalTool": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.build_files.fmt.buildifier", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "DownloadedExternalTool(digest: 'Digest', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "DownloadedExternalTool", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.external_tool.ExternalToolRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.external_tool.download_external_tool" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ExternalToolRequest(download_file_request: 'DownloadFile', exe: 'str')", + "is_union": false, + "module": "pants.core.util_rules.external_tool", + "name": "ExternalToolRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.jvm.resolve.coursier_setup.setup_coursier" + ] + }, + "pants.core.util_rules.partitions.Partitions": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.kotlin", + "pants.core", + "pants.engine.internals.build_files", + "pants.engine.target" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A collection of (, ) pairs.\n\nWhen implementing a plugin, one of your rules will return this type, taking in a\n`PartitionRequest` specific to your plugin.\n\nThe return likely will fit into one of:\n - Returning empty partitions: E.g. if your tool is being skipped.\n - Returning one partition. The partition may contain all of the inputs\n (as will likely be the case for target-based plugins) or a subset (which will likely be the\n case for targetless plugins).\n - Returning >1 partition. This might be the case if you can't run\n the tool on all the inputs at once. E.g. having to run a Python tool on XYZ with Py3,\n and files ABC with Py2.", + "is_union": false, + "module": "pants.core.util_rules.partitions", + "name": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations, pants.backend.build_files.fmt.black, pants.backend.build_files.fmt.buildifier, pants.backend.build_files.fmt.yapf, pants.backend.codegen.protobuf.lint.buf, pants.backend.docker.lint.hadolint, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.openapi.lint.openapi_format, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.lint.add_trailing_comma, pants.backend.experimental.python.lint.ruff, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt, pants.backend.experimental.terraform, pants.backend.experimental.tools.semgrep, pants.backend.experimental.tools.yamllint, pants.backend.project_info, pants.backend.python, pants.backend.python.lint.autoflake, pants.backend.python.lint.bandit, pants.backend.python.lint.black, pants.backend.python.lint.docformatter, pants.backend.python.lint.flake8, pants.backend.python.lint.isort, pants.backend.python.lint.pydocstyle, pants.backend.python.lint.pylint, pants.backend.python.lint.pyupgrade, pants.backend.python.lint.yapf, pants.backend.shell, pants.backend.shell.lint.shellcheck, pants.backend.shell.lint.shfmt, pants.backend.tools.preamble", + "returned_by_rules": [ + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BlackRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BuildifierRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameFieldsInFilesRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameTargetsInFilesRequest", + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_YapfRequest", + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "pants.backend.helm.goals.lint.partition_helm_lint", + "pants.backend.project_info.regex_lint.partition_inputs", + "pants.backend.python.goals.pytest_runner.partition_python_tests", + "pants.backend.python.lint.bandit.rules.partition_bandit", + "pants.backend.python.lint.black.rules.partition_black", + "pants.backend.python.lint.flake8.rules.partition_flake8", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.tools.preamble.rules.partition_inputs", + "pants.backend.tools.semgrep.rules.partition", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_GoTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_HelmUnitTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_JunitTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ScalatestTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ShellTestRequest", + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_Shunit2TestRequest", + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_HadolintRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_PydocstyleRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_RuffLintRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_ShellcheckRequest", + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_SpectralRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.fix.fix", + "pants.core.goals.fmt.fmt", + "pants.core.goals.lint.lint", + "pants.core.goals.test.run_tests" + ] + }, + "pants.core.util_rules.search_paths.ValidateSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.search_paths.validate_search_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "ValidateSearchPathsRequest(env_tgt: 'EnvironmentTarget', search_paths: 'tuple[str, ...]', option_origin: 'str', environment_key: 'str', is_default: 'bool', local_only: 'FrozenOrderedSet[str]')", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "ValidateSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.search_paths.ValidatedSearchPaths": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": "Search paths that are valid for the current target environment.", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "ValidatedSearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.search_paths.validate_search_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap.python_bootstrap" + ] + }, + "pants.core.util_rules.search_paths.VersionManagerSearchPaths": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "VersionManagerSearchPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.search_paths.VersionManagerSearchPathsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "VersionManagerSearchPathsRequest(env_tgt: 'EnvironmentTarget', root_dir: 'str | None', tool_path: 'str', option: 'str', version_files: 'tuple[str, ...]' = (), local_token: 'str | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.search_paths", + "name": "VersionManagerSearchPathsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths" + ] + }, + "pants.core.util_rules.source_files.SourceFiles": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A merged snapshot of the `sources` fields of multiple targets.", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.source_files.determine_source_files" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.source_files.SourceFilesRequest": { + "consumed_by_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.core.util_rules.source_files.determine_source_files" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "SourceFilesRequest(sources_fields: Iterable[pants.engine.target.SourcesField], *, for_sources_types: Iterable[Type[pants.engine.target.SourcesField]] = (,), enable_codegen: bool = False)", + "is_union": false, + "module": "pants.core.util_rules.source_files", + "name": "SourceFilesRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.python" + ], + "documentation": "StrippedFileName(value: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileName", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedFileNameRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_file_name" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "StrippedFileNameRequest(file_path: str)", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedFileNameRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "pants.backend.javascript.nodejs_project.find_node_js_projects", + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules" + ] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFileNames": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [], + "documentation": "The file names from a target's `sources` field, with source roots stripped.\n\nUse via `Get(StrippedSourceFileNames, SourcePathsRequest(tgt.get(SourcesField))`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFileNames", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.stripped_source_files.StrippedSourceFiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.scala", + "pants.backend.python" + ], + "documentation": "Wrapper for a snapshot of files whose source roots have been stripped.\n\nUse via `Get(StrippedSourceFiles, SourceFilesRequest([tgt.get(SourcesField)])`.", + "is_union": false, + "module": "pants.core.util_rules.stripped_source_files", + "name": "StrippedSourceFiles", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "pants.backend.python.util_rules.python_sources.strip_python_sources", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironment": { + "consumed_by_rules": [ + "construct_env_aware_scope_subprocess_environment" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironment", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.subprocess_environment.SubprocessEnvironmentVars": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex_environment.find_pex_python" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.core" + ], + "documentation": "SubprocessEnvironmentVars(vars: pants.util.frozendict.FrozenDict[str, str])", + "is_union": false, + "module": "pants.core.util_rules.subprocess_environment", + "name": "SubprocessEnvironmentVars", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.subprocess_environment.get_subprocess_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.BashBinary": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The `bash` binary.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BashBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.get_bash" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.system_binaries.find_binary" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.go.util_rules.cgo_binaries", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "BinaryPath(path: 'str', fingerprint: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPath", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.link.setup_go_linker" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPathRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request to find a binary of a given name.\n\nIf `check_file_entries` is `True` a BinaryPathRequest will consider any entries in the\n`search_path` that are file paths in addition to traditional directory paths.\n\nIf a `test` is specified all binaries that are found will be executed with the test args and\nonly those binaries whose test executions exit with return code 0 will be retained.\nAdditionally, if test execution includes stdout content, that will be used to fingerprint the\nbinary path so that upgrades and downgrades can be detected. A reasonable test for many programs\nmight be `BinaryPathTest(args=[\"--version\"])` since it will both ensure the program runs and\nalso produce stdout text that changes upon upgrade or downgrade of the binary at the discovered\npath.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPathRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryPaths": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell", + "pants.core" + ], + "documentation": "BinaryPaths(binary_name: 'str', paths: 'Iterable[BinaryPath] | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryPaths", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_binary" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShims": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell" + ], + "documentation": "The shims created for a BinaryShimsRequest is placed in `bin_directory` of the `digest`.\n\nThe purpose of these shims is so that a Process may be executed with `immutable_input_digests`\nprovided to the `Process`, and `path_component` included in its `PATH` environment variable.\n\nThe alternative is to add the directories hosting the binaries directly, but that opens up for\nmany more unrelated binaries to also be executable from PATH, leaking into the sandbox\nunnecessarily.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShims", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.BinaryShimsRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.create_binary_shims" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Request to create shims for one or more system binaries.", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "BinaryShimsRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.docker.util_rules.docker_binary.get_docker", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target" + ] + }, + "pants.core.util_rules.system_binaries.CatBinary": { + "consumed_by_rules": [ + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CatBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_cat" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ChmodBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ChmodBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_chmod" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.CpBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "CpBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_cp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.DiffBinary": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format" + ], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "DiffBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_diff" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.EnvironmentAware": { + "consumed_by_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_cat", + "pants.core.util_rules.system_binaries.find_chmod", + "pants.core.util_rules.system_binaries.find_cp", + "pants.core.util_rules.system_binaries.find_diff", + "pants.core.util_rules.system_binaries.find_git", + "pants.core.util_rules.system_binaries.find_ln", + "pants.core.util_rules.system_binaries.find_mkdir", + "pants.core.util_rules.system_binaries.find_mktemp", + "pants.core.util_rules.system_binaries.find_mv", + "pants.core.util_rules.system_binaries.find_open", + "pants.core.util_rules.system_binaries.find_readlink", + "pants.core.util_rules.system_binaries.find_tar", + "pants.core.util_rules.system_binaries.find_touch", + "pants.core.util_rules.system_binaries.find_unzip", + "pants.core.util_rules.system_binaries.find_zip", + "pants.core.util_rules.system_binaries.get_bash", + "pants.core.util_rules.system_binaries.maybe_find_git" + ], + "dependencies": [ + "pants.engine.env_vars" + ], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "EnvironmentAware", + "provider": "pants.core", + "returned_by_rules": [ + "construct_env_aware_scope_system_binaries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.GitBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "GitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_git" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.LnBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "LnBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_ln" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MaybeGitBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "pants.vcs.git.get_git_worktree" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "MaybeGitBinary(git_binary: 'GitBinary | None' = None)", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MaybeGitBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.maybe_find_git", + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MkdirBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MkdirBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mkdir" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MktempBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MktempBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mktemp" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.MvBinary": { + "consumed_by_rules": [ + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition" + ], + "dependencies": [], + "dependents": [ + "pants.backend.python.typecheck.mypy" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "MvBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_mv" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.OpenBinary": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "OpenBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_open" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.ReadlinkBinary": { + "consumed_by_rules": [ + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ReadlinkBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_readlink" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.SystemBinariesSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_system_binaries" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "SystemBinariesSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_system_binaries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.TarBinary": { + "consumed_by_rules": [ + "pants.core.util_rules.adhoc_binaries.download_python_binary" + ], + "dependencies": [ + "pants.engine.platform" + ], + "dependents": [ + "pants.core" + ], + "documentation": "TarBinary(path: 'str', fingerprint: 'str', platform: 'Platform')", + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TarBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_tar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.TouchBinary": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "TouchBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_touch" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.core.util_rules.system_binaries.UnzipBinary": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.run.create_run_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "UnzipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_unzip" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.maybe_extract_archive" + ] + }, + "pants.core.util_rules.system_binaries.ZipBinary": { + "consumed_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.system_binaries", + "name": "ZipBinary", + "provider": "pants.core", + "returned_by_rules": [ + "pants.core.util_rules.system_binaries.find_zip" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.util_rules.archive.create_archive" + ] + }, + "pants.core.util_rules.wrap_source.GenerateWrapSourceSourcesRequest": { + "consumed_by_rules": [ + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.core.util_rules.wrap_source", + "name": "GenerateWrapSourceSourcesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateSourcesRequest", + "used_in_rules": [] + }, + "pants.engine.addresses.Addresses": { + "consumed_by_rules": [ + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.dependents_goal", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.filter_targets.filter_targets", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.engine.internals.graph.coarsened_targets_request", + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "dependencies": [ + "builtins", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell", + "pants.build_graph.address", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.addresses", + "name": "Addresses", + "provider": "pants.backend.experimental.go, pants.engine.addresses", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.addresses.UnparsedAddressInputs": { + "consumed_by_rules": [ + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.core" + ], + "documentation": "Raw addresses that have not been parsed yet.\n\nYou can convert these into fully normalized `Addresses` and `Targets` like this:\n\n await Get(Addresses, UnparsedAddressInputs([\"//:tgt1\", \"//:tgt2\"], owning_address=None)\n await Get(Targets, UnparsedAddressInputs([...], owning_address=Address(\"original\"))\n\nThis is intended for contexts where the user specifies addresses outside of the `dependencies`\nfield, such as through an option or a special field on a target that is not normal\n`dependencies`. You should not use this to resolve the `dependencies` field; use\n`await Get(Addresses, DependenciesRequest)` for that.\n\nIf the addresses are coming from a target's fields, set `owning_address` so that relative\nreferences like `:sibling` work properly.\n\nUnlike the `dependencies` field, this type does not work with `!` and `!!` ignores.\n\nSet `description_of_origin` to a value like \"CLI arguments\" or \"the `dependencies` field\nfrom {tgt.address}\". It is used for better error messages.", + "is_union": false, + "module": "pants.engine.addresses", + "name": "UnparsedAddressInputs", + "provider": "pants.engine.addresses", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.faas.digest_complete_platforms", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex.digest_complete_platforms", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ] + }, + "pants.engine.desktop.OpenFilesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "OpenFilesRequest(files: Iterable[pathlib.PurePath], *, error_if_open_not_found: bool = True)", + "is_union": false, + "module": "pants.engine.desktop", + "name": "OpenFilesRequest", + "provider": "pants.engine.desktop", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.env_vars.EnvironmentVarsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Requests a subset of the variables set in the environment.\n\nRequesting only the relevant subset of the environment reduces invalidation caused by unrelated\nchanges.", + "is_union": false, + "module": "pants.engine.env_vars", + "name": "EnvironmentVarsRequest", + "provider": "pants.engine.env_vars", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_env_aware_scope_apache_thrift", + "construct_env_aware_scope_docker", + "construct_env_aware_scope_go_generate", + "construct_env_aware_scope_golang", + "construct_env_aware_scope_jvm", + "construct_env_aware_scope_nodejs", + "construct_env_aware_scope_pex", + "construct_env_aware_scope_python_bootstrap", + "construct_env_aware_scope_python_native_code", + "construct_env_aware_scope_shell_setup", + "construct_env_aware_scope_subprocess_environment", + "construct_env_aware_scope_system_binaries", + "construct_env_aware_scope_test", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.publish.push_docker_images", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.core.goals.export.export", + "pants.core.goals.test.get_filtered_environment", + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.environment.EnvironmentName": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.adhoc", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The normalized name for an environment, from `[environments-preview].names`, after applying\nthings like the __local__ matcher.\n\nNote that we have this type, rather than only `EnvironmentTarget`, for a more efficient rule\ngraph. This node impacts the equality of many downstream nodes, so we want its identity to only\nbe a single string, rather than a Target instance.", + "is_union": false, + "module": "pants.engine.environment", + "name": "EnvironmentName", + "provider": "pants.engine.environment", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.goals.check.check", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "pants.core.goals.package.environment_aware_package", + "pants.core.goals.publish.package_for_publish", + "pants.core.goals.publish.run_publish", + "pants.core.goals.test.run_tests", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.fs.CreateDigest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to create a Digest with the input FileContent/FileEntry/SymlinkEntry/Directory\nvalues.\n\nThe engine will create any parent directories necessary, e.g. `FileContent('a/b/c.txt')` will\nresult in `a/`, `a/b`, and `a/b/c.txt` being created. You only need to use `Directory` to\ncreate an empty directory.\n\nThis does _not_ actually materialize the digest to the build root. You must use\n`engine.fs.Workspace` in a `@goal_rule` to save the resulting digest to disk.", + "is_union": false, + "module": "pants.engine.fs", + "name": "CreateDigest", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.render_embed_config", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.import_config.generate_import_config", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.link.setup_go_linker", + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.javascript.package_json.pnpm_workspace_files", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.faas.build_python_faas", + "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.package_dists.generate_setup_py", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.create_venv_pex", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.backend.terraform.dependency_inference.setup_parser", + "pants.backend.tools.preamble.rules.preamble_fmt", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.external_tool.download_external_tool", + "pants.core.util_rules.system_binaries.create_binary_shims", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.package.war.render_war_deployment_descriptor", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "pants.jvm.resolve.coursier_setup.setup_coursier", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors" + ] + }, + "pants.engine.fs.DigestSubset": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to get a subset of a digest.\n\nThe digest will be traversed symlink-oblivious to match the provided globs. If you require a\nsymlink-aware subset, you can access the digest's entries `Get(DigestEntries, Digest, digest)`,\nfilter them out, and create a new digest: `Get(Digest, CreateDigest(...))`.\n\nExample:\n\n result = await Get(Digest, DigestSubset(original_digest, PathGlobs([\"subdir1\", \"f.txt\"]))", + "is_union": false, + "module": "pants.engine.fs", + "name": "DigestSubset", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "pants.backend.helm.util_rules.tool.setup_helm", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.util_rules.dists.find_build_system", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.tools.yamllint.rules.partition_inputs", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.util_rules.digest_to_file_digest" + ] + }, + "pants.engine.fs.DownloadFile": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Retrieve the contents of a file via an HTTP GET request or directly for local file:// URLs.\n\nTo compute the `expected_digest`, manually download the file, then run `shasum -a 256` to\ncompute the fingerprint and `wc -c` to compute the expected length of the downloaded file in\nbytes.", + "is_union": false, + "module": "pants.engine.fs", + "name": "DownloadFile", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.external_tool.download_external_tool" + ] + }, + "pants.engine.fs.FileContent": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.parse_package_json" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "The content of a file.\n\nThis can be used to create a new Digest with `Get(Digest, CreateDigest)`. You can also get back\na list of `FileContent` objects by using `Get(DigestContents, Digest)`.", + "is_union": false, + "module": "pants.engine.fs", + "name": "FileContent", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.read_package_jsons" + ] + }, + "pants.engine.fs.PathGlobs": { + "consumed_by_rules": [ + "pants.backend.javascript.package_json.read_package_jsons" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "PathGlobs(globs: 'Iterable[str]', glob_match_error_behavior: 'GlobMatchErrorBehavior' = , conjunction: 'GlobExpansionConjunction' = , description_of_origin: 'str | None' = None) -> 'None'", + "is_union": false, + "module": "pants.engine.fs", + "name": "PathGlobs", + "provider": "pants.engine.fs", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "pants.backend.docker.goals.tailor.find_putative_targets", + "pants.backend.go.goals.tailor.find_putative_go_package_target", + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "pants.backend.java.goals.tailor.find_putative_targets", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.package_json.all_package_json", + "pants.backend.javascript.package_json.package_json_for_source", + "pants.backend.javascript.package_json.parse_package_json", + "pants.backend.javascript.package_json.pnpm_workspace_files", + "pants.backend.javascript.package_json.read_package_jsons", + "pants.backend.kotlin.goals.tailor.find_putative_targets", + "pants.backend.openapi.goals.tailor.find_putative_targets", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "pants.backend.scala.goals.tailor.find_putative_targets", + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "pants.backend.shell.goals.tailor.find_putative_targets", + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "pants.backend.tools.semgrep.rules.all_semgrep_ignore_files", + "pants.backend.tools.semgrep.rules.find_all_semgrep_configs", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.gather_config_files", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "pants.core.goals.fix.fix_batch", + "pants.core.goals.lint.lint", + "pants.core.goals.tailor.edit_build_files", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.goals.update_build_files.update_build_files", + "pants.core.util_rules.config_files.find_config_file", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_source_paths", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ] + }, + "pants.engine.internals.build_files.AddressFamilyDir": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "The directory to find addresses for.\n\nThis does _not_ recurse into subdirectories.", + "is_union": false, + "module": "pants.engine.internals.build_files", + "name": "AddressFamilyDir", + "provider": "pants.engine.internals.build_files", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.peek.get_target_data" + ] + }, + "pants.engine.internals.graph.GenerateFileTargets": { + "consumed_by_rules": [ + "pants.engine.internals.graph.generate_file_targets" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "GenerateFileTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateTargetsRequest", + "used_in_rules": [] + }, + "pants.engine.internals.graph.Owners": { + "consumed_by_rules": [], + "dependencies": [ + "pants.build_graph.address", + "pants.core", + "pants.engine.environment", + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "Owners", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_owners" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.OwnersRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.find_owners" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A request for the owners of a set of file paths.\n\nTODO: This is widely used as an effectively-public API. It should probably move to\n`pants.engine.target`.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "OwnersRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies" + ] + }, + "pants.engine.internals.graph.ResolveAllTargetGeneratorRequests": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ResolveAllTargetGeneratorRequests(description_of_origin: 'str', of_type: 'type[TargetGenerator] | None' = None)", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolveAllTargetGeneratorRequests", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.all_package_json" + ] + }, + "pants.engine.internals.graph.ResolveTargetGeneratorRequests": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ResolveTargetGeneratorRequests(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolveTargetGeneratorRequests", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph.ResolvedTargetGeneratorRequests": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.engine.internals.graph", + "pants.engine.internals.mapper", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral" + ], + "documentation": "ResolvedTargetGeneratorRequests(requests: 'tuple[GenerateTargetsRequest, ...]' = ())", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_generator_target_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.javascript.package_json.all_package_json", + "pants.engine.internals.graph.resolve_all_generator_target_requests", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph.SubprojectRoots": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "SubprojectRoots", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_subproject_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph.WrappedTargetForBootstrap": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [], + "documentation": "Used to avoid a rule graph cycle when evaluating bootstrap targets.\n\nThis does not work with target generation and parametrization. It also ignores any unrecognized\nfields in the target, to accommodate plugin fields which are not yet registered during\nbootstrapping.\n\nThis should only be used by bootstrapping code.", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.graph._AdaptorAndType": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.internals.graph", + "pants.engine.internals.target_adaptor", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_AdaptorAndType(adaptor: 'TargetAdaptor', target_type: 'type[Target]')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_AdaptorAndType", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.graph._DependencyMapping": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.internals.graph", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_DependencyMapping(mapping: 'FrozenDict[Address, tuple[Address, ...]]', visited: 'FrozenOrderedSet[Target]', roots_as_targets: 'Collection[Target]')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMapping", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.graph._DependencyMappingRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.transitive_dependency_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_DependencyMappingRequest(tt_request: 'TransitiveTargetsRequest', expanded_targets: 'bool')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_DependencyMappingRequest", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.coarsened_targets", + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.internals.graph._RequestAdaptorAndType": { + "consumed_by_rules": [ + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_RequestAdaptorAndType(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.graph", + "name": "_RequestAdaptorAndType", + "provider": "pants.engine.internals.graph", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizations": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.engine.internals.parametrize", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala" + ], + "documentation": "All parametrizations and generated targets for a single input Address.\n\nIf a Target has been parametrized, the original Target might _not_ be present, due to no Target\nbeing addressable at the un-parameterized Address.", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizations", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.parametrize._TargetParametrizationsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "_TargetParametrizationsRequest(address: 'Address', description_of_origin: 'str')", + "is_union": false, + "module": "pants.engine.internals.parametrize", + "name": "_TargetParametrizationsRequest", + "provider": "pants.engine.internals.parametrize", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ] + }, + "pants.engine.internals.synthetic_targets.SyntheticAddressMaps": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A collection of `SyntheticAddressMap` for all synthetic target adaptors.", + "is_union": false, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticAddressMaps", + "provider": "pants.core", + "returned_by_rules": [ + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.synthetic_targets.SyntheticTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Union members of the `SyntheticTargetsRequest` should implement a rule returning an instance\nof a `SyntheticAddressMaps`.", + "is_union": true, + "module": "pants.engine.internals.synthetic_targets", + "name": "SyntheticTargetsRequest", + "provider": "pants.engine.internals.synthetic_targets", + "returned_by_rules": [], + "union_members": [ + "PythonSyntheticLockfileTargetsRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.internals.target_adaptor.TargetAdaptorRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "Lookup the TargetAdaptor for an Address.", + "is_union": false, + "module": "pants.engine.internals.target_adaptor", + "name": "TargetAdaptorRequest", + "provider": "pants.engine.internals.target_adaptor", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.engine.internals.graph._determine_target_adaptor_and_type" + ] + }, + "pants.engine.process.FallibleProcessResult": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.python", + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.yamllint", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "Result of executing a process which might fail.\n\nIf the process has a non-zero exit code, this will not raise an exception, unlike ProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "FallibleProcessResult", + "provider": "pants.backend.experimental.python.lint.ruff, pants.engine.process", + "returned_by_rules": [ + "pants.backend.python.lint.ruff.rules.run_ruff" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.lint.run_helm_lint", + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "pants.backend.helm.test.unittest.run_helm_unittest", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.lint.bandit.rules.bandit_lint", + "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "pants.backend.python.lint.flake8.rules.run_flake8", + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "pants.backend.python.lint.pylint.rules.run_pylint", + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "pants.backend.python.lint.ruff.rules.ruff_fix", + "pants.backend.python.lint.ruff.rules.ruff_lint", + "pants.backend.python.lint.ruff.rules.run_ruff", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.terraform.dependencies.get_terraform_providers", + "pants.backend.terraform.goals.check.terraform_check", + "pants.backend.tools.semgrep.rules.lint", + "pants.backend.tools.yamllint.rules.run_yamllint", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.system_binaries.find_binary", + "pants.engine.process.run_proc_with_retry", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.run_junit_test" + ] + }, + "pants.engine.process.InteractiveProcess": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.shell", + "pants.backend.terraform.goals.deploy", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm", + "pants.backend.experimental.terraform" + ], + "documentation": "InteractiveProcess(argv: 'Iterable[str]', *, env: 'Mapping[str, str] | None' = None, input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), run_in_workspace: 'bool' = False, forward_signals_to_process: 'bool' = True, restartable: 'bool' = False, append_only_caches: 'Mapping[str, str] | None' = None, immutable_input_digests: 'Mapping[str, Digest] | None' = None, keep_sandboxes: 'KeepSandboxes' = ) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "InteractiveProcess", + "provider": "pants.backend.experimental.helm, pants.backend.experimental.terraform, pants.engine.process", + "returned_by_rules": [ + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.terraform.goals.deploy.run_terraform_deploy", + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.export.export", + "pants.core.goals.publish.run_publish", + "pants.core.goals.repl.run_repl", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.process.Process": { + "consumed_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "dependencies": [ + "builtins", + "pants.backend.go.util_rules.sdk", + "pants.backend.helm.util_rules.tool", + "pants.backend.javascript.nodejs_project_environment", + "pants.backend.javascript.subsystems.nodejs", + "pants.backend.javascript.subsystems.nodejs_tool", + "pants.backend.python", + "pants.backend.terraform.dependency_inference", + "pants.backend.terraform.tool", + "pants.engine.env_vars", + "pants.engine.platform", + "pants.jvm.jdk_rules", + "pants.jvm.resolve.coursier_setup" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell" + ], + "documentation": "Process(argv: 'Iterable[str]', *, description: 'str', level: 'LogLevel' = , input_digest: 'Digest' = Digest('e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855', 0), immutable_input_digests: 'Mapping[str, Digest] | None' = None, use_nailgun: 'Iterable[str]' = (), working_directory: 'str | None' = None, env: 'Mapping[str, str] | None' = None, append_only_caches: 'Mapping[str, str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, timeout_seconds: 'int | float | None' = None, jdk_home: 'str | None' = None, execution_slot_variable: 'str | None' = None, concurrency_available: 'int' = 0, cache_scope: 'ProcessCacheScope' = , remote_cache_speculation_delay_millis: 'int' = 0, attempt: 'int' = 0) -> 'None'", + "is_union": false, + "module": "pants.engine.process", + "name": "Process", + "provider": "pants.backend.docker, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.terraform, pants.backend.shell, pants.core, pants.engine.process", + "returned_by_rules": [ + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "pants.backend.helm.util_rules.tool.helm_process", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.python.util_rules.pex.setup_pex_process", + "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.tool.setup_terraform_process", + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "pants.backend.helm.goals.publish.publish_helm_chart", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.backend.shell.dependency_inference.parse_shell_imports", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.engine.process.run_proc_with_retry", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.war.package_war", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.engine.process.ProcessResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process", + "pants.option.global_options" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.yapf", + "pants.backend.shell", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "Result of executing a process which should not fail.\n\nIf the process has a non-zero exit code, this will raise an exception, unlike\nFallibleProcessResult.", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessResult", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.build_files.fmt.black.register.black_fmt", + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.goals.generate.run_go_package_generators", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "pants.backend.go.util_rules.build_pkg.build_go_package", + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "pants.backend.go.util_rules.cgo.cgo_compile_request", + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.goroot.setup_goroot", + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "pants.backend.go.util_rules.link.link_go_binary", + "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "pants.backend.helm.goals.package.run_helm_package", + "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "pants.backend.helm.util_rules.renderer.render_helm_chart", + "pants.backend.helm.util_rules.renderer.run_renderer", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "pants.backend.project_info.count_loc.count_loc", + "pants.backend.python.goals.coverage_py.merge_coverage_data", + "pants.backend.python.goals.export.do_export", + "pants.backend.python.goals.lockfile.generate_lockfile", + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "pants.backend.python.lint.black.rules.black_fmt", + "pants.backend.python.lint.isort.rules.isort_fmt", + "pants.backend.python.lint.yapf.rules.yapf_fmt", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.dists.run_pep517_build", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "pants.backend.python.util_rules.pex.build_pex", + "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "pants.backend.python.util_rules.pex.find_interpreter", + "pants.backend.python.util_rules.pex_venv.pex_venv", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "pants.core.goals.update_build_files.format_build_file_with_black", + "pants.core.goals.update_build_files.format_build_file_with_yapf", + "pants.core.util_rules.adhoc_binaries.download_python_binary", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "pants.core.util_rules.archive.create_archive", + "pants.core.util_rules.archive.maybe_extract_archive", + "pants.core.util_rules.system_binaries.find_binary", + "pants.jvm.classpath.loose_classfiles", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.package.war.package_war", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.run.create_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.engine.process.ProcessResultWithRetries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.python.lint.ruff", + "pants.engine.process" + ], + "dependents": [ + "pants.backend.python" + ], + "documentation": "ProcessResultWithRetries(results: 'Tuple[FallibleProcessResult, ...]')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessResultWithRetries", + "provider": "pants.backend.experimental.helm", + "returned_by_rules": [ + "pants.engine.process.run_proc_with_retry" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.engine.process.ProcessWithRetries": { + "consumed_by_rules": [ + "pants.engine.process.run_proc_with_retry" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ProcessWithRetries(proc: 'Process', attempts: 'int')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProcessWithRetries", + "provider": "pants.engine.process", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.goals.pytest_runner.run_python_tests" + ] + }, + "pants.engine.process.ProductDescription": { + "consumed_by_rules": [ + "pants.engine.process.fallible_to_exec_result_or_raise" + ], + "dependencies": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.terraform", + "pants.backend.shell", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.helm" + ], + "documentation": "ProductDescription(value: 'str')", + "is_union": false, + "module": "pants.engine.process", + "name": "ProductDescription", + "provider": "pants.backend.experimental.helm, pants.engine.process", + "returned_by_rules": [ + "pants.engine.process.get_multi_platform_request_description" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "pants.core.util_rules.adhoc_process_support.run_adhoc_process" + ] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactory": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A wrapper around a callable that constructs WorkunitsCallbacks.\n\nNB: This extra wrapping is because subtyping is not supported in the return position of a\nrule. See #11354 for discussion of that limitation.", + "is_union": false, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactory", + "provider": "pants.backend.experimental.tools.workunit_logger, pants.core", + "returned_by_rules": [ + "pants.backend.tools.workunit_logger.rules.construct_callback", + "pants.goal.stats_aggregator.construct_callback" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.streaming_workunit_handler.WorkunitsCallbackFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.tools.workunit_logger", + "pants.core" + ], + "documentation": "A request for a particular WorkunitsCallbackFactory.", + "is_union": true, + "module": "pants.engine.streaming_workunit_handler", + "name": "WorkunitsCallbackFactoryRequest", + "provider": "pants.engine.streaming_workunit_handler", + "returned_by_rules": [], + "union_members": [ + "StatsAggregatorCallbackFactoryRequest", + "WorkunitLoggerCallbackFactoryRequest" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.AllTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "pants.backend.docker.target_types.all_docker_targets", + "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "pants.backend.helm.target_types.all_helm_artifact_targets", + "pants.backend.helm.target_types.all_helm_chart_targets", + "pants.backend.helm.target_types.all_helm_deployment_targets", + "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "pants.backend.javascript.package_json.all_first_party_node_package_targets", + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions", + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "pants.backend.shell.dependency_inference.find_all_shell_targets", + "pants.backend.terraform.target_types.all_terraform_deployment_targets", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.target_types.find_all_assets", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.shell", + "pants.core" + ], + "documentation": "All targets in the project, but with target generators replaced by their generated targets,\nunlike `AllUnexpandedTargets`.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_all_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints" + ] + }, + "pants.engine.target.AllUnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.rename_conflicting_targets" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.core" + ], + "documentation": "All targets in the project, including generated targets.\n\nThis should generally be avoided because it is relatively expensive to compute and is frequently\ninvalidated, but it can be necessary for things like dependency inference to build a global\nmapping of imports to targets.", + "is_union": false, + "module": "pants.engine.target", + "name": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_all_unexpanded_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.CoarsenedTargets": { + "consumed_by_rules": [ + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "dependencies": [ + "pants.engine.environment" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.python.lint.pylint", + "pants.backend.python.typecheck.mypy" + ], + "documentation": "The CoarsenedTarget roots of a transitive graph walk for some addresses.\n\nTo collect all reachable CoarsenedTarget members, use `def closure`.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.coarsened_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.bsp.rules.bsp_java_resources_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.jvm.classpath.classpath", + "pants.jvm.run.create_run_request" + ] + }, + "pants.engine.target.CoarsenedTargetsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.coarsened_targets" + ], + "dependencies": [ + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A request to get CoarsenedTargets for input roots.", + "is_union": false, + "module": "pants.engine.target", + "name": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.coarsened_targets_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.lint.pylint.rules.partition_pylint", + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions" + ] + }, + "pants.engine.target.DependenciesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "DependenciesRequest(field: 'Dependencies', should_traverse_deps_predicate: 'ShouldTraverseDepsPredicate' = TraverseIfDependenciesField())", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.package_json.find_owning_package", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.dependents.map_addresses_to_dependents", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.jvm.package.war.package_war" + ] + }, + "pants.engine.target.DependenciesRuleApplicationRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to return the applicable dependency rule action for each dependency of a target.", + "is_union": false, + "module": "pants.engine.target", + "name": "DependenciesRuleApplicationRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.project_info.peek.get_target_data" + ] + }, + "pants.engine.target.ExplicitlyProvidedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "The literal addresses from a BUILD file `dependencies` field.\n\nAlmost always, you should use `await Get(Addresses, DependenciesRequest)` instead, which will\nconsider dependency inference and apply ignores. However, this type can be\nuseful particularly within inference rules to see if a user already explicitly\nprovided a dependency.\n\nResolve using `await Get(ExplicitlyProvidedDependencies, DependenciesRequest)`.\n\nNote that the `includes` are not filtered based on the `ignores`: this type preserves exactly\nwhat was in the BUILD file.", + "is_union": false, + "module": "pants.engine.target", + "name": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.ExplicitlyProvidedDependenciesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.determine_explicitly_provided_dependencies" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ExplicitlyProvidedDependenciesRequest(field: 'Dependencies')", + "is_union": false, + "module": "pants.engine.target", + "name": "ExplicitlyProvidedDependenciesRequest", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldDefaultFactoryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.python" + ], + "documentation": "Registers a dynamic default for a Field.\n\nSee `FieldDefaults`.", + "is_union": true, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "JvmResolveFieldDefaultFactoryRequest", + "PythonResolveFieldDefaultFactoryRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.field_defaults" + ] + }, + "pants.engine.target.FieldDefaultFactoryResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A wrapper for a function which computes the default value of a Field.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java, pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.field_defaults" + ] + }, + "pants.engine.target.FieldDefaults": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_dependencies" + ], + "dependencies": [ + "pants.backend.experimental.java", + "pants.backend.python", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala", + "pants.core" + ], + "documentation": "Generic Field default values. To install a default, see `FieldDefaultFactoryRequest`.\n\nTODO: This is to work around the fact that Field value defaulting cannot have arbitrary\nsubsystem requirements, and so e.g. `JvmResolveField` and `PythonResolveField` have methods\nwhich compute the true value of the field given a subsytem argument. Consumers need to\nbe type aware, and `@rules` cannot have dynamic requirements.\n\nAdditionally, `__defaults__` should mean that computed default Field values should become\nmore rare: i.e. `JvmResolveField` and `PythonResolveField` could potentially move to\nhardcoded default values which users override with `__defaults__` if they'd like to change\nthe default resolve names.\n\nSee https://github.com/pantsbuild/pants/issues/12934 about potentially allowing unions\n(including Field registrations) to have `@rule_helper` methods, which would allow the\ncomputation of an AsyncField to directly require a subsystem. Since\nhttps://github.com/pantsbuild/pants/pull/17947 rules may use any methods as rule helpers without\nspecial decoration so this should now be possible to implement.", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldDefaults", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.field_defaults" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.FieldSetsPerTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.shell", + "pants.core" + ], + "documentation": "FieldSetsPerTarget(collection: 'Iterable[Iterable[_FS]]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.FieldSetsPerTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.find_valid_field_sets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "FieldSetsPerTargetRequest(field_set_superclass: 'Type[_FS]', targets: 'Iterable[Target]')", + "is_union": false, + "module": "pants.engine.target", + "name": "FieldSetsPerTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.core.goals.deploy.publish_process_for_target", + "pants.core.goals.package.find_all_packageable_targets", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment" + ] + }, + "pants.engine.target.GenerateSourcesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A request to go from protocol sources -> a particular language.\n\nThis should be subclassed for each distinct codegen implementation. The subclasses must define\nthe class properties `input` and `output`. The subclass must also be registered via\n`UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest)`, for example.\n\nThe rule to actually implement the codegen should take the subclass as input, and it must\nreturn `GeneratedSources`.\n\nThe `exportable` attribute disables the use of this codegen by the `export-codegen` goal when\nset to False.\n\nFor example:\n\n class GenerateFortranFromAvroRequest:\n input = AvroSources\n output = FortranSources\n\n @rule\n def generate_fortran_from_avro(request: GenerateFortranFromAvroRequest) -> GeneratedSources:\n ...\n\n def rules():\n return [\n generate_fortran_from_avro,\n UnionRule(GenerateSourcesRequest, GenerateFortranFromAvroRequest),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateDockerContextFiles", + "GenerateDockerfileRequest", + "GenerateFileSourceRequest", + "GenerateFilesFromAdhocToolRequest", + "GenerateFilesFromShellCommandRequest", + "GenerateGoFromProtobufRequest", + "GenerateJavaFromProtobufRequest", + "GeneratePythonFromProtobufRequest", + "GeneratePythonFromSetuptoolsSCMRequest", + "GeneratePythonFromThriftRequest", + "GenerateResourceSourceRequest", + "GenerateScalaFromProtobufRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "GenerateWrapSourceSourcesRequest", + "RelocateFilesViaCodegenRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.hydrate_sources" + ] + }, + "pants.engine.target.GenerateTargetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.plugin_development", + "pants.backend.python" + ], + "documentation": "GenerateTargetsRequest(generator: '_TargetGenerator', template_address: 'Address', template: 'dict[str, Any]', overrides: 'dict[str, dict[Address, dict[str, Any]]]')", + "is_union": true, + "module": "pants.engine.target", + "name": "GenerateTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GenerateFileTargets", + "GenerateFromPantsRequirementsRequest", + "GenerateFromPipenvRequirementsRequest", + "GenerateFromPoetryRequirementsRequest", + "GenerateFromPythonRequirementsRequest", + "GenerateJvmArtifactForScalaTargets", + "GenerateNodePackageTargets", + "GenerateTargetsFromGoModRequest", + "GenerateTargetsFromPexBinaries" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.GeneratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.engine.env_vars", + "pants.engine.environment", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "GeneratedSources(snapshot: 'Snapshot')", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.adhoc, pants.backend.experimental.codegen.protobuf.go, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell, pants.core", + "returned_by_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "pants.core.target_types.hydrate_file_source", + "pants.core.target_types.hydrate_resource_source", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.hydrate_sources" + ] + }, + "pants.engine.target.GeneratedTargets": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.java", + "pants.backend.shell", + "pants.base.build_root", + "pants.core", + "pants.engine.fs", + "pants.engine.internals.target_adaptor", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A mapping of the address of generated targets to the targets themselves.", + "is_union": false, + "module": "pants.engine.target", + "name": "GeneratedTargets", + "provider": "pants.backend.experimental.go, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.scala, pants.backend.plugin_development, pants.backend.python", + "returned_by_rules": [ + "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "pants.backend.javascript.package_json.generate_node_package_targets", + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "pants.backend.scala.target_types.generate_jvm_artifact_targets", + "pants.engine.internals.graph.generate_file_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_target_parametrizations" + ] + }, + "pants.engine.target.HydrateSourcesRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.hydrate_sources" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "HydrateSourcesRequest(field: 'SourcesField', *, for_sources_types: 'Iterable[type[SourcesField]]' = (,), enable_codegen: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "HydrateSourcesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.HydratedSources": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell", + "pants.core", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.core" + ], + "documentation": "The result of hydrating a SourcesField.\n\nThe `sources_type` will indicate which of the `HydrateSourcesRequest.for_sources_type` the\nresult corresponds to, e.g. if the result comes from `FilesSources` vs. `PythonSources`. If this\nvalue is None, then the input `SourcesField` was not one of the expected types; or, when codegen\nwas enabled in the request, there was no valid code generator to generate the requested language\nfrom the original input. This property allows for switching on the result, e.g. handling\nhydrated files() sources differently than hydrated Python sources.", + "is_union": false, + "module": "pants.engine.target", + "name": "HydratedSources", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.hydrate_sources" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.export_codegen_goal.export_codegen", + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "pants.backend.helm.util_rules.sources.find_chart_source_root", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.source_files.determine_source_files", + "pants.jvm.package.war.render_war_deployment_descriptor" + ] + }, + "pants.engine.target.InferDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A request to infer dependencies by analyzing source files.\n\nTo set up a new inference implementation, subclass this class. Set the class property\n`infer_from` to the FieldSet subclass you are able to infer from. This will cause the FieldSet\nclass, and any subclass, to use your inference implementation.\n\nNote that there cannot be more than one implementation for a particular `FieldSet` class.\n\nRegister this subclass with `UnionRule(InferDependenciesRequest, InferFortranDependencies)`, for example.\n\nThen, create a rule that takes the subclass as a parameter and returns `InferredDependencies`.\n\nFor example:\n\n class InferFortranDependencies(InferDependenciesRequest):\n infer_from = FortranDependenciesInferenceFieldSet\n\n @rule\n def infer_fortran_dependencies(request: InferFortranDependencies) -> InferredDependencies:\n hydrated_sources = await Get(HydratedSources, HydrateSources(request.sources))\n ...\n return InferredDependencies(...)\n\n def rules():\n return [\n infer_fortran_dependencies,\n UnionRule(InferDependenciesRequest, InferFortranDependencies),\n ]", + "is_union": true, + "module": "pants.engine.target", + "name": "InferDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "InferApacheThriftPythonDependencies", + "InferConftestDependencies", + "InferDockerDependencies", + "InferGoBinaryMainDependencyRequest", + "InferGoPackageDependenciesRequest", + "InferGoThirdPartyPackageDependenciesRequest", + "InferHelmChartDependenciesRequest", + "InferHelmDeploymentDependenciesRequest", + "InferHelmUnitTestChartDependencyRequest", + "InferInitDependencies", + "InferJSDependenciesRequest", + "InferJavaSourceDependencies", + "InferKotlinJunitTestDependencyRequest", + "InferKotlinRuntimeDependencyRequest", + "InferKotlinSourceDependencies", + "InferNodePackageDependenciesRequest", + "InferOpenApiDocumentDependenciesRequest", + "InferOpenApiSourceDependenciesRequest", + "InferPexBinaryEntryPointDependency", + "InferProtobufDependencies", + "InferProtobufJavaRuntimeDependencyRequest", + "InferPythonDistributionDependencies", + "InferPythonFaaSHandlerDependency", + "InferPythonImportDependencies", + "InferPythonProtobufDependencies", + "InferScalaLibraryDependencyRequest", + "InferScalaPBRuntimeDependencyRequest", + "InferScalaPluginDependenciesRequest", + "InferScalaSourceDependencies", + "InferShellDependencies", + "InferStevedoreNamespacesDependencies", + "InferTerraformModuleDependenciesRequest", + "InferThriftDependencies" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.InferredDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.helm.util_rules.chart_metadata", + "pants.core", + "pants.engine.addresses", + "pants.engine.fs", + "pants.engine.internals.native_dep_inference" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "InferredDependencies(include: 'Iterable[Address]', *, exclude: 'Iterable[Address]' = ()) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "InferredDependencies", + "provider": "pants.backend.awslambda.python, pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.docker, pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.go, pants.backend.experimental.helm, pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.openapi, pants.backend.experimental.openapi.lint.spectral, pants.backend.experimental.python.framework.stevedore, pants.backend.experimental.scala, pants.backend.experimental.terraform, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.go.target_type_rules.infer_go_dependencies", + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.MovedPluginField": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python" + ], + "documentation": "A plugin field that should be moved into the generated targets.", + "is_union": true, + "module": "pants.engine.target", + "name": "MovedPluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "ProtobufPythonInterpreterConstraintsField", + "ProtobufPythonResolveField", + "PythonSourceRootField" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.PluginField": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": null, + "is_union": true, + "module": "pants.engine.target", + "name": "PluginField", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "SkipGofmtField" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.SourcesPaths": { + "consumed_by_rules": [ + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ], + "dependencies": [ + "pants.engine.fs", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.go", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.shell.lint.shfmt", + "pants.core" + ], + "documentation": "The resolved file names of the `source`/`sources` field.\n\nThis does not consider codegen, and only captures the files from the field.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPaths", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.SourcesPathsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_source_paths" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A request to resolve the file names of the `source`/`sources` field.\n\nUse via `Get(SourcesPaths, SourcesPathRequest(tgt.get(SourcesField))`.\n\nThis is faster than `Get(HydratedSources, HydrateSourcesRequest)` because it does not snapshot\nthe files and it only resolves the file names.\n\nThis does not consider codegen, and only captures the files from the field. Use\n`HydrateSourcesRequest` to use codegen.", + "is_union": false, + "module": "pants.engine.target", + "name": "SourcesPathsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.goals.tailor.determine_all_owned_sources", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest", + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest", + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettings": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "TargetFilesGeneratorSettings(add_dependencies_on_all_siblings: 'bool' = False)", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python, pants.backend.codegen.thrift.apache.python, pants.backend.experimental.scala, pants.backend.python, pants.backend.shell", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.target_types.generator_settings", + "pants.backend.codegen.thrift.target_types.generator_settings", + "pants.backend.python.target_types_rules.python_files_generator_settings", + "pants.backend.scala.target_types.scala_settings_request", + "pants.backend.shell.target_types.generator_settings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.TargetFilesGeneratorSettingsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.scala", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "An optional union to provide dynamic settings for a `TargetFilesGenerator`.\n\nSee `TargetFilesGenerator`.", + "is_union": true, + "module": "pants.engine.target", + "name": "TargetFilesGeneratorSettingsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "GeneratorSettingsRequest", + "GeneratorSettingsRequest", + "PythonFilesGeneratorSettingsRequest", + "ScalaSettingsRequest", + "ShellGeneratorSettingsRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.generate_file_targets" + ] + }, + "pants.engine.target.TargetRootsToFieldSetsRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "TargetRootsToFieldSetsRequest(field_set_superclass: 'Type[_FS]', *, goal_description: 'str', no_applicable_targets_behavior: 'NoApplicableTargetsBehavior', shard: 'int' = 0, num_shards: 'int' = -1) -> 'None'", + "is_union": false, + "module": "pants.engine.target", + "name": "TargetRootsToFieldSetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.core.goals.deploy.run_deploy", + "pants.core.goals.generate_snapshots.generate_snapshots", + "pants.core.goals.package.package_asset", + "pants.core.goals.publish.run_publish", + "pants.core.goals.run.run", + "pants.core.goals.test.run_tests" + ] + }, + "pants.engine.target.TargetTypesToGenerateTargetsRequests": { + "consumed_by_rules": [ + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.engine.target", + "name": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.target_types_to_generate_targets_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.engine.target.Targets": { + "consumed_by_rules": [ + "pants.backend.go.goals.generate.go_generate", + "pants.backend.python.goals.debug_goals.dump_python_source_analysis" + ], + "dependencies": [ + "pants.bsp.util_rules.targets", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.core" + ], + "documentation": "A heterogeneous collection of instances of Target subclasses.\n\nWhile every element will be a subclass of `Target`, there may be many different `Target` types\nin this collection, e.g. some `FileTarget` and some `PythonTestTarget`.\n\nOften, you will want to filter out the relevant targets by looking at what fields they have\nregistered, e.g.:\n\n valid_tgts = [tgt for tgt in tgts if tgt.has_fields([Compatibility, PythonSources])]\n\nYou should not check the Target's actual type because this breaks custom target types;\nfor example, prefer `tgt.has_field(PythonTestsSourcesField)` to\n`isinstance(tgt, PythonTestsTarget)`.", + "is_union": false, + "module": "pants.engine.target", + "name": "Targets", + "provider": "pants.backend.experimental.go, pants.core", + "returned_by_rules": [ + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.engine.internals.graph.resolve_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.go.goals.test.prepare_go_test_binary", + "pants.backend.go.goals.test.run_go_tests", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.helm.goals.deploy.run_helm_deploy", + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.helm.util_rules.chart.get_helm_chart", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.helm.util_rules.sources.get_helm_source_files", + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "pants.backend.javascript.package_json.find_owning_package", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.project_info.paths.paths", + "pants.backend.project_info.peek.get_target_data", + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "pants.backend.terraform.dependencies.init_terraform", + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "pants.bsp.util_rules.compile.compile_bsp_target", + "pants.bsp.util_rules.resources.resources_bsp_target", + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "pants.core.goals.test.build_runtime_package_dependencies", + "pants.core.target_types.package_archive_target", + "pants.core.target_types.relocate_files", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "pants.engine.internals.graph.find_all_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping", + "pants.engine.internals.graph.transitive_targets", + "pants.jvm.package.war.render_war_content", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ] + }, + "pants.engine.target.TransitiveTargets": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core", + "pants.engine.addresses", + "pants.engine.environment", + "pants.engine.target", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.project_info", + "pants.backend.python", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.pylint", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": "A set of Target roots, and their transitive, flattened, de-duped dependencies.\n\nIf a target root is a dependency of another target root, then it will show up both in `roots`\nand in `dependencies`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargets", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.transitive_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.TransitiveTargetsRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.transitive_targets" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "A request to get the transitive dependencies of the input roots.\n\nResolve the transitive targets with `await Get(TransitiveTargets,\nTransitiveTargetsRequest([addr1, addr2])`.", + "is_union": false, + "module": "pants.engine.target", + "name": "TransitiveTargetsRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "pants.backend.helm.test.unittest.setup_helm_unittest", + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "pants.backend.openapi.lint.spectral.rules.run_spectral", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "pants.backend.python.goals.repl.create_ipython_repl_request", + "pants.backend.python.goals.repl.create_python_repl_request", + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "pants.backend.python.util_rules.local_dists.build_local_dists", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.python.util_rules.package_dists.generate_chroot", + "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "pants.backend.python.util_rules.package_dists.get_requirements", + "pants.backend.python.util_rules.package_dists.get_sources", + "pants.backend.python.util_rules.pex.get_req_strings", + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.engine.target.TransitivelyExcludeDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "A request to transitvely exclude dependencies of a \"root\" node.\n\nThis is similar to `InferDependenciesRequest`, except the request is only made for \"root\" nodes\nin the dependency graph.\n\nThis mirrors the public facing \"transitive exclude\" dependency feature (i.e. `!!
`).", + "is_union": true, + "module": "pants.engine.target", + "name": "TransitivelyExcludeDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.transitive_targets" + ] + }, + "pants.engine.target.UnexpandedTargets": { + "consumed_by_rules": [ + "pants.backend.project_info.peek.get_target_data", + "pants.backend.project_info.peek.peek", + "pants.engine.internals.graph.resolve_targets" + ], + "dependencies": [ + "pants.engine.addresses" + ], + "dependents": [ + "pants.backend.experimental.go", + "pants.backend.project_info", + "pants.backend.python", + "pants.core" + ], + "documentation": "Like `Targets`, but will not replace target generators with their generated targets (e.g.\nreplace `python_sources` \"BUILD targets\" with generated `python_source` \"file targets\").", + "is_union": false, + "module": "pants.engine.target", + "name": "UnexpandedTargets", + "provider": "pants.backend.experimental.go, pants.engine.target", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_unexpanded_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.go.goals.tailor.find_putative_go_targets", + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "pants.backend.project_info.dependencies.dependencies", + "pants.backend.project_info.filedeps.file_deps", + "pants.backend.project_info.list_targets.list_targets", + "pants.backend.project_info.peek.peek", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.core.goals.tailor.restrict_conflicting_sources", + "pants.engine.internals.graph.find_all_unexpanded_targets", + "pants.engine.internals.graph.find_owners", + "pants.engine.internals.graph.transitive_dependency_mapping" + ] + }, + "pants.engine.target.ValidateDependenciesRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": "A request to validate dependencies after they have been computed.\n\nAn implementing rule should raise an exception if dependencies are invalid.", + "is_union": true, + "module": "pants.engine.target", + "name": "ValidateDependenciesRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [ + "PythonValidateDependenciesRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.ValidatedDependencies": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "ValidatedDependencies()", + "is_union": false, + "module": "pants.engine.target", + "name": "ValidatedDependencies", + "provider": "pants.backend.python", + "returned_by_rules": [ + "pants.backend.python.target_types_rules.validate_python_dependencies" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.engine.internals.graph.resolve_dependencies" + ] + }, + "pants.engine.target.WrappedTarget": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.environment", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.scala", + "pants.backend.experimental.terraform", + "pants.backend.python", + "pants.backend.shell" + ], + "documentation": "A light wrapper to encapsulate all the distinct `Target` subclasses into a single type.\n\nThis is necessary when using a single target in a rule because the engine expects exact types\nand does not work with subtypes.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTarget", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.resolve_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.resolve.resolve_for_package", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.engine.target.WrappedTargetRequest": { + "consumed_by_rules": [ + "pants.engine.internals.graph.resolve_target", + "pants.engine.internals.graph.resolve_target_for_bootstrapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "Used with `WrappedTarget` to get the Target corresponding to an address.\n\n`description_of_origin` is used for error messages when the address does not actually exist. If\nyou are confident this cannot happen, set the string to something like ``.", + "is_union": false, + "module": "pants.engine.target", + "name": "WrappedTargetRequest", + "provider": "pants.engine.target", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.docker.goals.run_image.docker_image_run_request", + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.javascript.resolve.resolve_for_package", + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "pants.backend.python.target_types_rules.validate_python_dependencies", + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.shell.goals.test.test_shell_command", + "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "pants.backend.terraform.dependencies.init_terraform", + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_dependencies", + "pants.engine.internals.graph.resolve_unexpanded_targets", + "pants.engine.internals.graph.resolve_unparsed_address_inputs" + ] + }, + "pants.goal.anonymous_telemetry.AnonymousTelemetry": { + "consumed_by_rules": [], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.goal.anonymous_telemetry", + "name": "AnonymousTelemetry", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_anonymous_telemetry" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorCallbackFactoryRequest": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependencies": [ + "pants.engine.streaming_workunit_handler" + ], + "dependents": [ + "pants.core" + ], + "documentation": "A unique request type that is installed to trigger construction of the WorkunitsCallback.", + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorCallbackFactoryRequest", + "provider": "pants.core", + "returned_by_rules": [], + "union_members": [], + "union_type": "WorkunitsCallbackFactoryRequest", + "used_in_rules": [] + }, + "pants.goal.stats_aggregator.StatsAggregatorSubsystem": { + "consumed_by_rules": [ + "pants.goal.stats_aggregator.construct_callback" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.goal.stats_aggregator", + "name": "StatsAggregatorSubsystem", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_stats" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.bsp.compile.BSPClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.bsp.compile.notify_for_classpath_entry" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A wrapper around a `ClasspathEntryRequest` which notifies the BSP client on completion.\n\nTODO: Because this struct contains a `task_id`, messages will re-render in every run, even\nthough the underlying computation does not re-run. See #15426 for an alternative.", + "is_union": false, + "module": "pants.jvm.bsp.compile", + "name": "BSPClasspathEntryRequest", + "provider": "pants.jvm.bsp.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.classpath.Classpath": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.go", + "pants.backend.experimental.scala", + "pants.engine.target", + "pants.jvm.compile", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A transitive classpath which is sufficient to launch the target(s) it was generated for.\n\nThere are two primary ways to consume a Classpath:\n 1. Using the `(root_)immutable_inputs` methods, which produce the argument to\n `Process.immutable_input_digests` and adapted CLI args for use with that argument.\n 2. Using the `digests` and `(root_)args` methods, which can be merged to produce the\n argument to `Process.input_digest` and CLI args for use with a digest.\nThe first approach should be preferred, because it allows for symlinking of inputs. If\npossible, the latter method should be removed when consumers have migrated.\n\nThis classpath is guaranteed to contain only JAR files.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "Classpath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.classpath" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war", + "pants.jvm.run.create_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.classpath.LooseClassfiles": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.scala", + "pants.core", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "The contents of a classpath entry as loose classfiles.\n\nNote that `ClasspathEntry` and `Classpath` both guarantee that they contain JAR files, and so\ncreating loose classfiles from them involves extracting their entry.", + "is_union": false, + "module": "pants.jvm.classpath", + "name": "LooseClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request" + ] + }, + "pants.jvm.compile.ClasspathDependenciesRequest": { + "consumed_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ClasspathDependenciesRequest(request: 'ClasspathEntryRequest', ignore_generated: 'bool' = False)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathDependenciesRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.ClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.classpath.loose_classfiles" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.kotlin", + "pants.backend.scala.compile.scalac", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "A JVM classpath entry represented as a series of JAR files, and their dependencies.\n\nThis is a series of JAR files in order to account for \"exported\" dependencies, when a node\nand some of its dependencies are indistinguishable (such as for aliases, or potentially\nexplicitly declared or inferred `exported=` lists in the future).\n\nThis class additionally keeps filenames in order to preserve classpath ordering for the\n`classpath_arg` method: although Digests encode filenames, they are stored sorted.\n\nIf `[jvm].reproducible_jars`, then all JARs in a classpath entry must have had timestamps\nstripped -- either natively, or via the `pants.jvm.strip_jar` rules.\n\nTODO: Move to `classpath.py`.\nTODO: Generalize via https://github.com/pantsbuild/pants/issues/13112.\n\nNote: Non-jar artifacts (e.g., executables with \"exe\" packaging) may end up on the classpath if\nthey are dependencies.\nTODO: Does there need to be a filtering mechanism to exclude non-jar artifacts in the default case?", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.scala, pants.jvm.compile", + "returned_by_rules": [ + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.jvm.compile.required_classfiles", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.classpath.classpath", + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.compile.ClasspathEntryRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "A request for a ClasspathEntry for the given CoarsenedTarget and resolve.\n\nTODO: Move to `classpath.py`.", + "is_union": true, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequest", + "provider": "pants.jvm.compile", + "returned_by_rules": [], + "union_members": [ + "CompileJavaSourceRequest", + "CompileKotlinSourceRequest", + "CompileScalaSourceRequest", + "CoursierFetchRequest", + "DeployJarClasspathEntryRequest", + "JvmResourcesRequest", + "ScalaArtifactClasspathEntryRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.compile.ClasspathEntryRequestFactory": { + "consumed_by_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.compile.classpath_dependency_requests" + ], + "dependencies": [ + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "ClasspathEntryRequestFactory(impls: 'tuple[type[ClasspathEntryRequest], ...]', generator_sources: 'FrozenDict[type[ClasspathEntryRequest], frozenset[type[SourcesField]]]')", + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.calculate_jvm_request_types" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.compile.ClasspathEntryRequests": { + "consumed_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java, pants.jvm.compile", + "returned_by_rules": [ + "pants.jvm.compile.classpath_dependency_requests" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.compile.compile_classpath_entries" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resources.assemble_resources_jar" + ] + }, + "pants.jvm.compile.FallibleClasspathEntry": { + "consumed_by_rules": [ + "pants.jvm.compile.required_classfiles" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.bsp.compile", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "FallibleClasspathEntry(description: 'str', result: 'CompileResult', output: 'ClasspathEntry | None', exit_code: 'int', stdout: 'str | None' = None, stderr: 'str | None' = None)", + "is_union": false, + "module": "pants.jvm.compile", + "name": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resources.assemble_resources_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.bsp.compile.notify_for_classpath_entry", + "pants.jvm.compile.compile_classpath_entries" + ] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmArtifactTargets": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AllJvmTypeProvidingTargets": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": [ + "pants.backend.experimental.go" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.AvailableThirdPartyArtifacts": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Maps coordinates and resolve names to target `Address`es and declared packages.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.artifact_mapper.ThirdPartySymbolMapping": { + "consumed_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "The third party symbols provided by all `jvm_artifact` targets.", + "is_union": false, + "module": "pants.jvm.dependency_inference.artifact_mapper", + "name": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.dependency_inference.symbol_mapper.FirstPartyMappingRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "An entry point for a specific implementation of mapping JVM package names to owning targets.\n\nAll implementations will be merged together.\n\nThe addresses should all be file addresses, rather than BUILD addresses.", + "is_union": true, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "FirstPartyMappingRequest", + "provider": "pants.jvm.dependency_inference.symbol_mapper", + "returned_by_rules": [], + "union_members": [ + "FirstPartyJavaTargetsMappingRequest", + "FirstPartyKotlinTargetsMappingRequest", + "FirstPartyScalaTargetsMappingRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMap": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "The first party symbols provided by a single inference implementation.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMap", + "provider": "pants.backend.experimental.java, pants.backend.experimental.kotlin, pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ] + }, + "pants.jvm.dependency_inference.symbol_mapper.SymbolMapping": { + "consumed_by_rules": [ + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis" + ], + "dependencies": [ + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala", + "pants.engine.unions" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "The merged first and third party symbols provided by all inference implementations.", + "is_union": false, + "module": "pants.jvm.dependency_inference.symbol_mapper", + "name": "SymbolMapping", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.GenerateJvmLockfile": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request" + ], + "dependencies": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.unions", + "pants.jvm.goals.lockfile", + "pants.jvm.resolve.common" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "GenerateJvmLockfile(resolve_name: 'str', lockfile_dest: 'str', diff: 'bool', artifacts: 'ArtifactRequirements')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "union_members": [], + "union_type": "GenerateLockfile", + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.goals.lockfile.KnownJVMUserResolveNamesRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.determine_jvm_user_resolves" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "KnownJVMUserResolveNamesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "KnownUserResolveNamesRequest", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.RequestedJVMUserResolveNames": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "RequestedJVMUserResolveNames", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RequestedUserResolveNames", + "used_in_rules": [] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveRequest": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.scala" + ], + "documentation": "Hook for backends to validate the artifact requirements requested for a resolve.\n\nThe main user is the Scala backend which will ensure scala-library is present in the resolve.", + "is_union": true, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [ + "ValidateResolveHasScalaRuntimeRequest" + ], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile.ValidateJvmArtifactsForResolveResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.java" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Sentinel type that represents that a backend is satisfied with the artifacts for a JVM\nresolve.", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala", + "returned_by_rules": [ + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ] + }, + "pants.jvm.goals.lockfile._ValidateJvmArtifactsRequest": { + "consumed_by_rules": [ + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "_ValidateJvmArtifactsRequest(artifacts: 'ArtifactRequirements', resolve_name: 'str')", + "is_union": false, + "module": "pants.jvm.goals.lockfile", + "name": "_ValidateJvmArtifactsRequest", + "provider": "pants.jvm.goals.lockfile", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.goals.lockfile.setup_user_lockfile_requests" + ] + }, + "pants.jvm.jar_tool.jar_tool.JarToolCompiledClassfiles": { + "consumed_by_rules": [ + "pants.jvm.jar_tool.jar_tool.run_jar_tool" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JarToolCompiledClassfiles(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jar_tool.jar_tool.build_jar_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jar_tool.jar_tool.JarToolGenerateLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolGenerateLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool" + ] + }, + "pants.jvm.jar_tool.jar_tool.JarToolRequest": { + "consumed_by_rules": [ + "pants.jvm.jar_tool.jar_tool.run_jar_tool" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JarToolRequest(*, jar_name: 'str', digest: 'Digest', main_class: 'str | None' = None, classpath_entries: 'Iterable[str] | None' = None, manifest: 'str | None' = None, jars: 'Iterable[str] | None' = None, file_mappings: 'Mapping[str, str] | None' = None, default_action: 'JarDuplicateAction | None' = None, policies: 'Iterable[tuple[str, str | JarDuplicateAction]] | None' = None, skip: 'Iterable[str] | None' = None, compress: 'bool' = False, update: 'bool' = False) -> 'None'", + "is_union": false, + "module": "pants.jvm.jar_tool.jar_tool", + "name": "JarToolRequest", + "provider": "pants.jvm.jar_tool.jar_tool", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar" + ] + }, + "pants.jvm.jdk_rules.InternalJdk": { + "consumed_by_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "The JDK configured for internal Pants usage, rather than for matching source compatibility.\n\nThe InternalJdk should only be used in situations where no classfiles are required for a user's\nfirstparty or thirdparty code (such as for codegen, or analysis of source files).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "InternalJdk", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.internal_jdk" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.jdk_rules.JdkEnvironment": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.python.lint.ruff", + "pants.core", + "pants.engine.process", + "pants.jvm.jdk_rules" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "JdkEnvironment(_digest: 'Digest', nailgun_jar: 'str', coursier: 'Coursier', jre_major_version: 'int', global_jvm_options: 'tuple[str, ...]', java_home_command: 'str')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkEnvironment", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JdkRequest": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Request for a JDK with a specific major version, or a default (`--jvm-jdk` or System).", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JdkRequest", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.jdk_rules.JvmProcess": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.jvm_process" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JvmProcess(jdk: 'JdkEnvironment', argv: 'Iterable[str]', classpath_entries: 'Iterable[str]', input_digest: 'Digest', description: 'str', level: 'LogLevel' = , extra_jvm_options: 'Iterable[str] | None' = None, extra_nailgun_keys: 'Iterable[str] | None' = None, output_files: 'Iterable[str] | None' = None, output_directories: 'Iterable[str] | None' = None, extra_immutable_input_digests: 'Mapping[str, Digest] | None' = None, extra_env: 'Mapping[str, str] | None' = None, timeout_seconds: 'int | float | None' = None, cache_scope: 'ProcessCacheScope | None' = None, use_nailgun: 'bool' = True, remote_cache_speculation_delay: 'int | None' = None)", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "JvmProcess", + "provider": "pants.jvm.jdk_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "pants.backend.scala.test.scalatest.run_scalatest_test", + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.run.create_run_request", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.jdk_rules.Nailgun": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment" + ], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Nailgun(classpath_entry: 'ClasspathEntry')", + "is_union": false, + "module": "pants.jvm.jdk_rules", + "name": "Nailgun", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarClasspathEntryRequest": { + "consumed_by_rules": [ + "pants.jvm.package.deploy_jar.deploy_jar_classpath" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarClasspathEntryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.package.deploy_jar.DeployJarFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DeployJarFieldSet", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "DeployJarFieldSet(address: 'Address', main_class: pants.jvm.target_types.JvmMainClassNameField, output_path: pants.core.goals.package.OutputPathField, dependencies: pants.jvm.target_types.JvmDependenciesField, jdk_version: pants.jvm.target_types.JvmJdkField, duplicate_policy: pants.jvm.target_types.DeployJarDuplicatePolicyField, shading_rules: pants.jvm.target_types.DeployJarShadingRulesField, exclude_files: pants.jvm.target_types.DeployJarExcludeFilesField)", + "is_union": false, + "module": "pants.jvm.package.deploy_jar", + "name": "DeployJarFieldSet", + "provider": "pants.backend.experimental.java, pants.jvm.package.deploy_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [ + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request" + ] + }, + "pants.jvm.package.war.PackageWarFileFieldSet": { + "consumed_by_rules": [ + "pants.jvm.package.war.package_war" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "PackageWarFileFieldSet(address: 'Address', output_path: 'OutputPathField', dependencies: 'JvmWarDependenciesField', descriptor: 'JvmWarDescriptorAddressField', content: 'JvmWarContentField', shading_rules: 'JvmWarShadingRulesField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "PackageWarFileFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PackageFieldSet", + "used_in_rules": [] + }, + "pants.jvm.package.war.RenderWarContentRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderWarContentRequest(content: 'JvmWarContentField')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarContentRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderWarDeploymentDescriptorRequest": { + "consumed_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderWarDeploymentDescriptorRequest(descriptor: 'JvmWarDescriptorAddressField', owning_address: 'Address')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderWarDeploymentDescriptorRequest", + "provider": "pants.jvm.package.war", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarContent": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.addresses", + "pants.jvm.package.war" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderedWarContent(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarContent", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_content" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.package.war.RenderedWarDeploymentDescriptor": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.package.war" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "RenderedWarDeploymentDescriptor(digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.package.war", + "name": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.package.war.render_war_deployment_descriptor" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.resolve.common.ArtifactRequirements": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java" + ], + "documentation": "An ordered list of Coordinates used as requirements.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "ArtifactRequirements", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.common", + "returned_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.common.GatherJvmCoordinatesRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A request to turn strings of coordinates (`group:artifact:version`) and/or addresses to\n`jvm_artifact` targets into `ArtifactRequirements`.", + "is_union": false, + "module": "pants.jvm.resolve.common", + "name": "GatherJvmCoordinatesRequest", + "provider": "pants.jvm.resolve.common", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierFetchRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierFetchRequest", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [ + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "pants.backend.scala.compile.scalac_plugins.fetch_plugins" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierLockfileEntry": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A single artifact entry from a Coursier-resolved lockfile.\n\nThese fields are nearly identical to the JSON objects from the\n\"dependencies\" entries in Coursier's --json-output-file format.\nBut unlike Coursier's JSON report, a CoursierLockfileEntry\nincludes the content-address of the artifact fetched by Coursier\nand ingested by Pants.\n\nFor example, a Coursier JSON report dependency entry might look like this:\n\n```\n{\n \"coord\": \"com.chuusai:shapeless_2.13:2.3.3\",\n \"file\": \"/home/USER/.cache/coursier/v1/https/repo1.maven.org/maven2/com/chuusai/shapeless_2.13/2.3.3/shapeless_2.13-2.3.3.jar\",\n \"directDependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ],\n \"dependencies\": [\n \"org.scala-lang:scala-library:2.13.0\"\n ]\n}\n```\n\nThe equivalent CoursierLockfileEntry would look like this:\n\n```\nCoursierLockfileEntry(\n coord=\"com.chuusai:shapeless_2.13:2.3.3\", # identical\n file_name=\"shapeless_2.13-2.3.3.jar\" # PurePath(entry[\"file\"].name)\n direct_dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n dependencies=(Coordinate.from_coord_str(\"org.scala-lang:scala-library:2.13.0\"),),\n file_digest=FileDigest(fingerprint=, ...),\n)\n```\n\nThe fields `remote_url` and `pants_address` are set by Pants if the `coord` field matches a\n`jvm_artifact` that had either the `url` or `jar` fields set.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierLockfileEntry", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.jdk_rules.fetch_nailgun", + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolveInfo": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.jvm.resolve.common" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "CoursierResolveInfo(coord_arg_strings: 'FrozenSet[str]', extra_args: 'tuple[str, ...]', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_fetch.CoursierResolvedLockfile": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.fs", + "pants.jvm.resolve.common", + "pants.jvm.resolve.key" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.scala" + ], + "documentation": "An in-memory representation of Pants' Coursier lockfile format.\n\nAll coordinates in the resolved lockfile will be compatible, so we do not need to do version\ntesting when looking up coordinates.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ResolvedClasspathEntries": { + "consumed_by_rules": [], + "dependencies": [ + "pants.backend.experimental.scala", + "pants.jvm.compile", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A collection of resolved classpath entries.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspath": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.jvm.resolve.common", + "pants.jvm.resolve.coursier_fetch" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "A fully fetched and merged classpath for running a JVM tool.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspath", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_fetch.ToolClasspathRequest": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "A request to set up the classpath for a JVM tool by fetching artifacts and merging the\nclasspath.\n\n:param prefix: if set, should be a relative directory that will\n be prepended to every classpath element. This is useful for\n keeping all classpath elements isolated under a single directory\n in a process invocation, where other inputs on the process's\n root directory might interfere with un-prefixed classpath\n entries (or vice versa).", + "is_union": false, + "module": "pants.jvm.resolve.coursier_fetch", + "name": "ToolClasspathRequest", + "provider": "pants.jvm.resolve.coursier_fetch", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac.fetch_scala_library", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.goals.repl.create_scala_repl_request", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.coursier_setup.Coursier": { + "consumed_by_rules": [ + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.platform" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "The Coursier tool and various utilities, prepared for use via `immutable_input_digests`.", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "Coursier", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.coursier_setup.CoursierFetchProcess": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "CoursierFetchProcess(args: 'Tuple[str, ...]', input_digest: 'Digest', output_directories: 'Tuple[str, ...]', output_files: 'Tuple[str, ...]', description: 'str')", + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierFetchProcess", + "provider": "pants.jvm.resolve.coursier_setup", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.jvm.resolve.coursier_setup.CoursierSubsystem": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_setup.setup_coursier" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resolve.coursier_setup", + "name": "CoursierSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_coursier" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.resolve.jvm_tool.GenerateJvmLockfileFromTool": { + "consumed_by_rules": [ + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool" + ], + "dependencies": [ + "pants.backend.codegen.protobuf.java.rules", + "pants.backend.codegen.protobuf.scala.rules", + "pants.backend.java.dependency_inference.java_parser", + "pants.backend.java.lint.google_java_format.rules", + "pants.backend.kotlin.dependency_inference.kotlin_parser", + "pants.backend.kotlin.lint.ktlint.rules", + "pants.backend.scala.dependency_inference.scala_parser", + "pants.backend.scala.lint.scalafmt.rules", + "pants.backend.scala.test.scalatest", + "pants.jvm.jar_tool.jar_tool", + "pants.jvm.shading.jarjar", + "pants.jvm.strip_jar.strip_jar", + "pants.jvm.test.junit" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt" + ], + "documentation": "Create a `GenerateJvmLockfile` request for a JVM tool.\n\nWe allow tools to either use coordinates or addresses to `jvm_artifact` targets for the artifact\ninputs. This is a convenience to parse those artifact inputs to create a standardized\n`GenerateJvmLockfile`.", + "is_union": false, + "module": "pants.jvm.resolve.jvm_tool", + "name": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java, pants.backend.experimental.codegen.protobuf.scala, pants.backend.experimental.java, pants.backend.experimental.java.lint.google_java_format, pants.backend.experimental.kotlin, pants.backend.experimental.kotlin.lint.ktlint, pants.backend.experimental.scala, pants.backend.experimental.scala.lint.scalafmt", + "returned_by_rules": [ + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "pants.backend.java.dependency_inference.java_parser.build_processors", + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "pants.jvm.shading.rules.shade_jar", + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar", + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.resolve.key.CoursierResolveKey": { + "consumed_by_rules": [ + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.core", + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": "CoursierResolveKey(name: 'str', path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.resolve.key", + "name": "CoursierResolveKey", + "provider": "pants.backend.experimental.java, pants.jvm.resolve.key", + "returned_by_rules": [ + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.bsp.rules.bsp_java_compile_request", + "pants.backend.java.goals.check.javac_check", + "pants.backend.kotlin.goals.check.kotlinc_check", + "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "pants.backend.scala.goals.check.scalac_check", + "pants.jvm.classpath.classpath", + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool" + ] + }, + "pants.jvm.resources.JvmResourcesRequest": { + "consumed_by_rules": [ + "pants.jvm.resources.assemble_resources_jar" + ], + "dependencies": [ + "pants.jvm.compile" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.resources", + "name": "JvmResourcesRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "ClasspathEntryRequest", + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJar": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "pants.jvm.shading.rules.shade_jar" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_jarjar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.shading.jarjar.JarJarGeneratorLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.shading.jarjar", + "name": "JarJarGeneratorLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.shading.jarjar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.shading.rules.shade_jar" + ] + }, + "pants.jvm.shading.rules.ShadeJarRequest": { + "consumed_by_rules": [ + "pants.jvm.shading.rules.shade_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ShadeJarRequest(*, path: 'str | PurePath', digest: 'Digest', rules: 'Iterable[JvmShadingRule] | None' = None, skip_manifest: 'bool | None' = None, misplaced_class_strategy: 'MisplacedClassStrategy | None' = None) -> 'None'", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadeJarRequest", + "provider": "pants.jvm.shading.rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.shading.rules.ShadedJar": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.jvm.shading.rules" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ShadedJar(path: 'str', digest: 'Digest')", + "is_union": false, + "module": "pants.jvm.shading.rules", + "name": "ShadedJar", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.shading.rules.shade_jar" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.package.war.package_war" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarCompiledClassfiles": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "StripJarCompiledClassfiles(digest: Digest)", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.strip_jar.strip_jar.StripJarRequest": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.strip_jar" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "StripJarRequest(digest: Digest, filenames: Tuple[str, ...])", + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarRequest", + "provider": "pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.jvm.package.deploy_jar.package_deploy_jar" + ] + }, + "pants.jvm.strip_jar.strip_jar.StripJarToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.strip_jar.strip_jar", + "name": "StripJarToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.strip_jar.strip_jar", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.strip_jar.strip_jar.build_processors", + "pants.jvm.strip_jar.strip_jar.strip_jar" + ] + }, + "pants.jvm.subsystems.JvmSubsystem": { + "consumed_by_rules": [ + "construct_env_aware_scope_jvm", + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "pants.backend.java.compile.javac.compile_java_source", + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "pants.backend.scala.compile.scalac.compile_scala_source", + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "pants.backend.scala.target_types.generate_jvm_artifact_targets", + "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "pants.jvm.jdk_rules.internal_jdk", + "pants.jvm.jdk_rules.jvm_process", + "pants.jvm.jdk_rules.prepare_jdk_environment", + "pants.jvm.package.deploy_jar.package_deploy_jar", + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "pants.jvm.resources.assemble_resources_jar", + "pants.jvm.target_types.jvm_resolve_field_default_factory", + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.java", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.scala" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.subsystems", + "name": "JvmSubsystem", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "construct_scope_jvm" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.jvm.target_types.GenericJvmRunRequest": { + "consumed_by_rules": [ + "pants.jvm.run.create_run_request" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "Allows the use of a generic rule to return a `RunRequest` based on the field set.", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "GenericJvmRunRequest", + "provider": "pants.jvm.target_types", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet" + ] + }, + "pants.jvm.target_types.JvmArtifactFieldSet": { + "consumed_by_rules": [ + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JvmArtifactFieldSet", + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "JvmArtifactFieldSet(address: 'Address', jdk_version: 'JvmJdkField', main_class: 'JvmMainClassNameField', group: 'JvmArtifactGroupField', artifact: 'JvmArtifactArtifactField', version: 'JvmArtifactVersionField', packages: 'JvmArtifactPackagesField', url: 'JvmArtifactUrlField')", + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmArtifactFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "RunFieldSet", + "used_in_rules": [] + }, + "pants.jvm.target_types.JvmResolveFieldDefaultFactoryRequest": { + "consumed_by_rules": [ + "pants.jvm.target_types.jvm_resolve_field_default_factory" + ], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "JvmResolveFieldDefaultFactoryRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "FieldDefaultFactoryRequest", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmJdkField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmJdkField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.target_types.PrefixedJvmResolveField": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.target" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.target_types", + "name": "PrefixedJvmResolveField", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "PluginField", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestFieldSet": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": "JunitTestFieldSet(address: 'Address', sources: 'JunitTestSourceField', timeout: 'JunitTestTimeoutField', jdk_version: 'JvmJdkField', dependencies: 'JvmDependenciesField', extra_env_vars: 'TestExtraEnvVarsField')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestFieldSet", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestFieldSet", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitTestRequest": { + "consumed_by_rules": [], + "dependencies": [ + "pants.core" + ], + "dependents": [], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitTestRequest", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [], + "union_members": [], + "union_type": "TestRequest", + "used_in_rules": [] + }, + "pants.jvm.test.junit.JunitToolLockfileSentinel": { + "consumed_by_rules": [ + "pants.jvm.test.junit.generate_junit_lockfile_request" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": null, + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "JunitToolLockfileSentinel", + "provider": "pants.backend.experimental.java, pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": "GenerateToolLockfileSentinel", + "used_in_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ] + }, + "pants.jvm.test.junit.TestSetup": { + "consumed_by_rules": [], + "dependencies": [ + "builtins", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.core", + "pants.engine.env_vars", + "pants.jvm.test.junit" + ], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "TestSetup(process: 'JvmProcess', reports_dir_prefix: 'str')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetup", + "provider": "pants.backend.experimental.java", + "returned_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.test.junit.TestSetupRequest": { + "consumed_by_rules": [ + "pants.jvm.test.junit.setup_junit_for_target" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "TestSetupRequest(field_set: 'JunitTestFieldSet', is_debug: 'bool')", + "is_union": false, + "module": "pants.jvm.test.junit", + "name": "TestSetupRequest", + "provider": "pants.jvm.test.junit", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.test.junit.run_junit_test", + "pants.jvm.test.junit.setup_junit_debug_request" + ] + }, + "pants.jvm.util_rules.ExtractFileDigest": { + "consumed_by_rules": [ + "pants.jvm.util_rules.digest_to_file_digest" + ], + "dependencies": [], + "dependents": [ + "pants.backend.experimental.java" + ], + "documentation": "ExtractFileDigest(digest: 'Digest', file_path: 'str')", + "is_union": false, + "module": "pants.jvm.util_rules", + "name": "ExtractFileDigest", + "provider": "pants.jvm.util_rules", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile" + ] + }, + "pants.option.global_options.GlobalOptions": { + "consumed_by_rules": [ + "pants.backend.docker.goals.package_image.build_docker_image", + "pants.backend.python.goals.publish.twine_upload", + "pants.backend.python.goals.pytest_runner.run_python_tests", + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "pants.backend.tools.semgrep.rules.lint", + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "pants.core.goals.run.run", + "pants.core.util_rules.distdir.get_distdir", + "pants.engine.internals.graph.extract_subproject_roots", + "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "pants.jvm.jdk_rules.jvm_process" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.backend.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.python", + "pants.backend.experimental.tools.semgrep", + "pants.backend.python", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.option.global_options", + "name": "GlobalOptions", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.global_options.UnmatchedBuildFileGlobs": { + "consumed_by_rules": [ + "pants.engine.internals.graph.hydrate_sources", + "pants.engine.internals.graph.resolve_generator_target_requests", + "pants.engine.internals.graph.resolve_source_paths" + ], + "dependencies": [ + "pants.core" + ], + "dependents": [ + "pants.backend.experimental.go" + ], + "documentation": "What to do when globs do not match in BUILD files.", + "is_union": false, + "module": "pants.option.global_options", + "name": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go", + "returned_by_rules": [ + "pants.engine.internals.graph.extract_unmatched_build_file_globs" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.option.scope.Scope": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [], + "documentation": "An options scope.", + "is_union": false, + "module": "pants.option.scope", + "name": "Scope", + "provider": "pants.option.scope", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "construct_scope_", + "construct_scope_add_trailing_comma", + "construct_scope_anonymous_telemetry", + "construct_scope_apache_thrift", + "construct_scope_autoflake", + "construct_scope_bandit", + "construct_scope_black", + "construct_scope_buf", + "construct_scope_build_deprecations_fixer", + "construct_scope_buildifier", + "construct_scope_check", + "construct_scope_count_loc", + "construct_scope_coursier", + "construct_scope_coverage_py", + "construct_scope_debug_adapter", + "construct_scope_debugpy", + "construct_scope_dependencies", + "construct_scope_dependents", + "construct_scope_docformatter", + "construct_scope_docker", + "construct_scope_dockerfile_parser", + "construct_scope_download_terraform", + "construct_scope_experimental_bsp", + "construct_scope_experimental_deploy", + "construct_scope_export", + "construct_scope_export_codegen", + "construct_scope_filedeps", + "construct_scope_filter", + "construct_scope_fix", + "construct_scope_flake8", + "construct_scope_fmt", + "construct_scope_generate_lockfiles", + "construct_scope_generate_snapshots", + "construct_scope_go_generate", + "construct_scope_go_test", + "construct_scope_gofmt", + "construct_scope_golang", + "construct_scope_google_java_format", + "construct_scope_grpc_python_plugin", + "construct_scope_hadolint", + "construct_scope_helm", + "construct_scope_helm_k8s_parser", + "construct_scope_helm_post_renderer", + "construct_scope_helm_unittest", + "construct_scope_ipython", + "construct_scope_isort", + "construct_scope_jarjar", + "construct_scope_java_infer", + "construct_scope_javac", + "construct_scope_junit", + "construct_scope_jvm", + "construct_scope_kotlin", + "construct_scope_kotlin_infer", + "construct_scope_kotlinc", + "construct_scope_ktlint", + "construct_scope_lint", + "construct_scope_list", + "construct_scope_mypy", + "construct_scope_mypy_protobuf", + "construct_scope_nodejs", + "construct_scope_nodejs_infer", + "construct_scope_openapi", + "construct_scope_openapi_format", + "construct_scope_package", + "construct_scope_paths", + "construct_scope_peek", + "construct_scope_pex", + "construct_scope_pex_binary_defaults", + "construct_scope_pex_cli", + "construct_scope_preamble", + "construct_scope_protobuf_java_grpc", + "construct_scope_protoc", + "construct_scope_publish", + "construct_scope_py_constraints", + "construct_scope_pydocstyle", + "construct_scope_pylint", + "construct_scope_pyoxidizer", + "construct_scope_pytest", + "construct_scope_python", + "construct_scope_python_bootstrap", + "construct_scope_python_dump_source_analysis", + "construct_scope_python_infer", + "construct_scope_python_native_code", + "construct_scope_python_protobuf", + "construct_scope_python_repos", + "construct_scope_python_thrift", + "construct_scope_pytype", + "construct_scope_pyupgrade", + "construct_scope_regex_lint", + "construct_scope_repl", + "construct_scope_roots", + "construct_scope_ruff", + "construct_scope_run", + "construct_scope_scala", + "construct_scope_scala_infer", + "construct_scope_scalac", + "construct_scope_scalafmt", + "construct_scope_scalapb", + "construct_scope_scalatest", + "construct_scope_scc", + "construct_scope_semgrep", + "construct_scope_setup_py_generation", + "construct_scope_setuptools", + "construct_scope_setuptools_scm", + "construct_scope_shell_setup", + "construct_scope_shell_test", + "construct_scope_shellcheck", + "construct_scope_shfmt", + "construct_scope_shunit2", + "construct_scope_source", + "construct_scope_spectral", + "construct_scope_stats", + "construct_scope_subprocess_environment", + "construct_scope_system_binaries", + "construct_scope_tailor", + "construct_scope_terraform_fmt", + "construct_scope_terraform_hcl2_parser", + "construct_scope_terraform_validate", + "construct_scope_test", + "construct_scope_thrift", + "construct_scope_twine", + "construct_scope_update_build_files", + "construct_scope_workunit_logger", + "construct_scope_yamllint", + "construct_scope_yapf" + ] + }, + "pants.option.subsystem.PluginOption": { + "consumed_by_rules": [], + "dependencies": [], + "dependents": [ + "pants.backend.python" + ], + "documentation": null, + "is_union": true, + "module": "pants.option.subsystem", + "name": "PluginOption", + "provider": "pants.option.subsystem", + "returned_by_rules": [], + "union_members": [ + "ExportPluginOptions" + ], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.AllSourceRoots": { + "consumed_by_rules": [ + "pants.backend.project_info.list_roots.list_roots", + "pants.backend.python.goals.coverage_py.merge_coverage_data" + ], + "dependencies": [ + "pants.engine.fs" + ], + "dependents": [ + "pants.backend.project_info", + "pants.backend.python" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "AllSourceRoots", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.all_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.OptionalSourceRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.engine.fs", + "pants.source.source_root" + ], + "dependents": [ + "pants.core" + ], + "documentation": "OptionalSourceRoot(source_root: 'SourceRoot | None')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.OptionalSourceRootsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.source.source_root" + ], + "dependents": [ + "pants.core" + ], + "documentation": "OptionalSourceRootsResult(path_to_optional_root: 'FrozenDict[PurePath, OptionalSourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "OptionalSourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_optional_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRoot": { + "consumed_by_rules": [], + "dependencies": [ + "pants.source.source_root" + ], + "dependents": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRoot(path: 'str')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRoot", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_root" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths" + ] + }, + "pants.source.source_root.SourceRootConfig": { + "consumed_by_rules": [ + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root" + ], + "dependencies": [ + "pants.option.scope" + ], + "dependents": [ + "pants.core" + ], + "documentation": null, + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootConfig", + "provider": "pants.core", + "returned_by_rules": [ + "construct_scope_source" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [] + }, + "pants.source.source_root.SourceRootRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_source_root" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Find the source root for the given path.\n\nIf you have multiple paths, particularly if many of them share parent directories, you'll get\nbetter performance with a `SourceRootsRequest` (see above) instead.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "pants.core.util_rules.stripped_source_files.strip_file_name", + "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "pants.source.source_root.all_roots", + "pants.source.source_root.get_optional_source_root", + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_root" + ] + }, + "pants.source.source_root.SourceRootsRequest": { + "consumed_by_rules": [ + "pants.source.source_root.get_optional_source_roots", + "pants.source.source_root.get_source_roots" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "Find the source roots for the given files and/or dirs.", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsRequest", + "provider": "pants.source.source_root", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots", + "pants.source.source_root.get_source_roots" + ] + }, + "pants.source.source_root.SourceRootsResult": { + "consumed_by_rules": [], + "dependencies": [ + "pants.source.source_root" + ], + "dependents": [ + "pants.backend.codegen.thrift.apache.python", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.python", + "pants.core" + ], + "documentation": "SourceRootsResult(path_to_root: 'FrozenDict[PurePath, SourceRoot]')", + "is_union": false, + "module": "pants.source.source_root", + "name": "SourceRootsResult", + "provider": "pants.core", + "returned_by_rules": [ + "pants.source.source_root.get_source_roots" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "pants.backend.python.goals.package_dists.package_python_dist", + "pants.backend.python.goals.tailor.find_putative_targets", + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "pants.core.util_rules.stripped_source_files.strip_source_roots" + ] + }, + "pants.vcs.git.GitWorktreeRequest": { + "consumed_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "dependencies": [], + "dependents": [ + "pants.core" + ], + "documentation": "GitWorktreeRequest(gitdir: 'PathLike[str] | None' = None, subdir: 'PathLike[str] | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "GitWorktreeRequest", + "provider": "pants.vcs.git", + "returned_by_rules": [], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + }, + "pants.vcs.git.MaybeGitWorktree": { + "consumed_by_rules": [], + "dependencies": [ + "pants.vcs.git" + ], + "dependents": [ + "pants.backend.experimental.python" + ], + "documentation": "MaybeGitWorktree(git_worktree: 'GitWorktree | None' = None)", + "is_union": false, + "module": "pants.vcs.git", + "name": "MaybeGitWorktree", + "provider": "pants.core", + "returned_by_rules": [ + "pants.vcs.git.get_git_worktree" + ], + "union_members": [], + "union_type": null, + "used_in_rules": [ + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm" + ] + } + }, + "name_to_backend_help_info": { + "pants.backend.awslambda.python": { + "description": "Create AWS Lambdas from Python code.\n\nSee https://www.pantsbuild.org/docs/awslambda-python.", + "enabled": true, + "name": "pants.backend.awslambda.python", + "provider": "pants" + }, + "pants.backend.build_files.fix.deprecations": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fix.deprecations", + "provider": "pants" + }, + "pants.backend.build_files.fmt.black": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.black", + "provider": "pants" + }, + "pants.backend.build_files.fmt.buildifier": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.buildifier", + "provider": "pants" + }, + "pants.backend.build_files.fmt.yapf": { + "description": "", + "enabled": true, + "name": "pants.backend.build_files.fmt.yapf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.lint.buf": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.protobuf.lint.buf", + "provider": "pants" + }, + "pants.backend.codegen.protobuf.python": { + "description": "Generate Python sources from Protocol Buffers (Protobufs).\n\nSee https://www.pantsbuild.org/docs/protobuf.", + "enabled": true, + "name": "pants.backend.codegen.protobuf.python", + "provider": "pants" + }, + "pants.backend.codegen.thrift.apache.python": { + "description": "", + "enabled": true, + "name": "pants.backend.codegen.thrift.apache.python", + "provider": "pants" + }, + "pants.backend.docker": { + "description": "", + "enabled": true, + "name": "pants.backend.docker", + "provider": "pants" + }, + "pants.backend.docker.lint.hadolint": { + "description": "", + "enabled": true, + "name": "pants.backend.docker.lint.hadolint", + "provider": "pants" + }, + "pants.backend.experimental.adhoc": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.adhoc", + "provider": "pants" + }, + "pants.backend.experimental.cc": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cc", + "provider": "pants" + }, + "pants.backend.experimental.cc.lint.clangformat": { + "description": "A formatter for C/C++ (and several other languages).\n\nSee https://clang.llvm.org/docs/ClangFormat.html for details.", + "enabled": false, + "name": "pants.backend.experimental.cc.lint.clangformat", + "provider": "pants" + }, + "pants.backend.experimental.codegen.avro.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.avro.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.go", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.protobuf.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.codegen.protobuf.scala", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.apache.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.apache.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.java", + "provider": "pants" + }, + "pants.backend.experimental.codegen.thrift.scrooge.scala": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.codegen.thrift.scrooge.scala", + "provider": "pants" + }, + "pants.backend.experimental.cue": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.cue", + "provider": "pants" + }, + "pants.backend.experimental.debian": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.debian", + "provider": "pants" + }, + "pants.backend.experimental.go": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.go", + "provider": "pants" + }, + "pants.backend.experimental.go.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.golangci_lint": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.golangci_lint", + "provider": "pants" + }, + "pants.backend.experimental.go.lint.vet": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.go.lint.vet", + "provider": "pants" + }, + "pants.backend.experimental.helm": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.helm", + "provider": "pants" + }, + "pants.backend.experimental.helm.check.kubeconform": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.helm.check.kubeconform", + "provider": "pants" + }, + "pants.backend.experimental.java": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java", + "provider": "pants" + }, + "pants.backend.experimental.java.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.java.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.java.lint.google_java_format": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.java.lint.google_java_format", + "provider": "pants" + }, + "pants.backend.experimental.javascript": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.javascript", + "provider": "pants" + }, + "pants.backend.experimental.javascript.lint.prettier": { + "description": "A formatter for JS/TS (and several other languages).\n\nSee https://prettier.io/ for details.", + "enabled": false, + "name": "pants.backend.experimental.javascript.lint.prettier", + "provider": "pants" + }, + "pants.backend.experimental.kotlin": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.kotlin.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.kotlin.lint.ktlint": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.kotlin.lint.ktlint", + "provider": "pants" + }, + "pants.backend.experimental.openapi": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi", + "provider": "pants" + }, + "pants.backend.experimental.openapi.codegen.java": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.openapi.codegen.java", + "provider": "pants" + }, + "pants.backend.experimental.openapi.lint.openapi_format": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi.lint.openapi_format", + "provider": "pants" + }, + "pants.backend.experimental.openapi.lint.spectral": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.openapi.lint.spectral", + "provider": "pants" + }, + "pants.backend.experimental.python": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.django": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.framework.django", + "provider": "pants" + }, + "pants.backend.experimental.python.framework.stevedore": { + "description": "A python \"framework\" for apps to dynamically load plugins.\n\nSee https://github.com/openstack/stevedore for details.", + "enabled": true, + "name": "pants.backend.experimental.python.framework.stevedore", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.add_trailing_comma": { + "description": "Autoformatter to automatically add trailing commas to calls and literals.\n\nSee https://github.com/asottile/add-trailing-comma for details.", + "enabled": true, + "name": "pants.backend.experimental.python.lint.add_trailing_comma", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.autoflake": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.pyupgrade": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.experimental.python.lint.ruff": { + "description": "Linter & formatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://github.com/charliermarsh/ruff", + "enabled": true, + "name": "pants.backend.experimental.python.lint.ruff", + "provider": "pants" + }, + "pants.backend.experimental.python.packaging.pyoxidizer": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python.packaging.pyoxidizer", + "provider": "pants" + }, + "pants.backend.experimental.python.typecheck.pyright": { + "description": "Static type checker for Python, running on NodeJS.\n\nSee https://github.com/Microsoft/pyright for details.", + "enabled": false, + "name": "pants.backend.experimental.python.typecheck.pyright", + "provider": "pants" + }, + "pants.backend.experimental.python.typecheck.pytype": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.python.typecheck.pytype", + "provider": "pants" + }, + "pants.backend.experimental.rust": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.rust", + "provider": "pants" + }, + "pants.backend.experimental.scala": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala", + "provider": "pants" + }, + "pants.backend.experimental.scala.debug_goals": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.scala.debug_goals", + "provider": "pants" + }, + "pants.backend.experimental.scala.lint.scalafmt": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.scala.lint.scalafmt", + "provider": "pants" + }, + "pants.backend.experimental.swift": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.swift", + "provider": "pants" + }, + "pants.backend.experimental.terraform": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.terraform", + "provider": "pants" + }, + "pants.backend.experimental.terraform.lint.tfsec": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.terraform.lint.tfsec", + "provider": "pants" + }, + "pants.backend.experimental.tools.semgrep": { + "description": "Lightweight static analysis for many languages. Find bug variants with patterns that look like\nsource code.\n\nSee https://semgrep.dev/ for details.", + "enabled": true, + "name": "pants.backend.experimental.tools.semgrep", + "provider": "pants" + }, + "pants.backend.experimental.tools.workunit_logger": { + "description": "", + "enabled": true, + "name": "pants.backend.experimental.tools.workunit_logger", + "provider": "pants" + }, + "pants.backend.experimental.tools.yamllint": { + "description": "A configurable linter for YAML files.\n\nSee https://yamllint.readthedocs.io/ for details.", + "enabled": true, + "name": "pants.backend.experimental.tools.yamllint", + "provider": "pants" + }, + "pants.backend.experimental.visibility": { + "description": "", + "enabled": false, + "name": "pants.backend.experimental.visibility", + "provider": "pants" + }, + "pants.backend.google_cloud_function.python": { + "description": "Create Google Cloud Functions from Python code.\n\nSee https://www.pantsbuild.org/docs/google-cloud-function-python.", + "enabled": true, + "name": "pants.backend.google_cloud_function.python", + "provider": "pants" + }, + "pants.backend.plugin_development": { + "description": "", + "enabled": true, + "name": "pants.backend.plugin_development", + "provider": "pants" + }, + "pants.backend.project_info": { + "description": "Information on your project, such as listing the targets in your project.", + "enabled": true, + "name": "pants.backend.project_info", + "provider": "pants" + }, + "pants.backend.python": { + "description": "Support for Python.\n\nSee https://www.pantsbuild.org/docs/python-backend.", + "enabled": true, + "name": "pants.backend.python", + "provider": "pants" + }, + "pants.backend.python.lint.autoflake": { + "description": "Autoformatter for removing unused Python imports.\n\nSee https://github.com/myint/autoflake for details.", + "enabled": true, + "name": "pants.backend.python.lint.autoflake", + "provider": "pants" + }, + "pants.backend.python.lint.bandit": { + "description": "Security linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://bandit.readthedocs.io/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.bandit", + "provider": "pants" + }, + "pants.backend.python.lint.black": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://black.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.black", + "provider": "pants" + }, + "pants.backend.python.lint.docformatter": { + "description": "Python autoformatter for PEP257 docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/myint/docformatter.", + "enabled": true, + "name": "pants.backend.python.lint.docformatter", + "provider": "pants" + }, + "pants.backend.python.lint.flake8": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://flake8.pycqa.org/en/latest/.", + "enabled": true, + "name": "pants.backend.python.lint.flake8", + "provider": "pants" + }, + "pants.backend.python.lint.isort": { + "description": "Autoformatter for Python import statements.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://pycqa.github.io/isort/.", + "enabled": true, + "name": "pants.backend.python.lint.isort", + "provider": "pants" + }, + "pants.backend.python.lint.pydocstyle": { + "description": "Static analysis tool for checking compliance with Python docstring conventions.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttp://www.pydocstyle.org/en/stable/.", + "enabled": true, + "name": "pants.backend.python.lint.pydocstyle", + "provider": "pants" + }, + "pants.backend.python.lint.pylint": { + "description": "Linter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and https://www.pylint.org.", + "enabled": true, + "name": "pants.backend.python.lint.pylint", + "provider": "pants" + }, + "pants.backend.python.lint.pyupgrade": { + "description": "https://github.com/asottile/pyupgrade.\n\nA tool to automatically upgrade syntax for newer versions of the language.", + "enabled": true, + "name": "pants.backend.python.lint.pyupgrade", + "provider": "pants" + }, + "pants.backend.python.lint.yapf": { + "description": "Autoformatter for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://github.com/google/yapf .", + "enabled": true, + "name": "pants.backend.python.lint.yapf", + "provider": "pants" + }, + "pants.backend.python.mixed_interpreter_constraints": { + "description": "", + "enabled": true, + "name": "pants.backend.python.mixed_interpreter_constraints", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv", + "provider": "pants" + }, + "pants.backend.python.providers.experimental.pyenv.custom_install": { + "description": "", + "enabled": false, + "name": "pants.backend.python.providers.experimental.pyenv.custom_install", + "provider": "pants" + }, + "pants.backend.python.typecheck.mypy": { + "description": "Type checker for Python.\n\nSee https://www.pantsbuild.org/docs/python-linters-and-formatters and\nhttps://mypy.readthedocs.io/en/stable/.", + "enabled": true, + "name": "pants.backend.python.typecheck.mypy", + "provider": "pants" + }, + "pants.backend.shell": { + "description": "", + "enabled": true, + "name": "pants.backend.shell", + "provider": "pants" + }, + "pants.backend.shell.lint.shellcheck": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shellcheck", + "provider": "pants" + }, + "pants.backend.shell.lint.shfmt": { + "description": "", + "enabled": true, + "name": "pants.backend.shell.lint.shfmt", + "provider": "pants" + }, + "pants.backend.tools.preamble": { + "description": "", + "enabled": true, + "name": "pants.backend.tools.preamble", + "provider": "pants" + }, + "pants.backend.tools.taplo": { + "description": "", + "enabled": false, + "name": "pants.backend.tools.taplo", + "provider": "pants" + }, + "pants.backend.url_handlers.s3": { + "description": "", + "enabled": false, + "name": "pants.backend.url_handlers.s3", + "provider": "pants" + }, + "pants.core": { + "description": "Core rules for Pants to operate correctly.\n\nThese are always activated and cannot be disabled.", + "enabled": true, + "name": "pants.core", + "provider": "pants" + } + }, + "name_to_build_file_info": { + "PANTS_VERSION": { + "documentation": null, + "is_target": false, + "name": "PANTS_VERSION", + "signature": null + }, + "__defaults__": { + "documentation": "Provide default field values.\n\nLearn more https://www.pantsbuild.org/v2.19/docs/targets#field-default-values", + "is_target": false, + "name": "__defaults__", + "signature": "(*args: 'SetDefaultsT', ignore_unknown_fields: 'bool' = False, ignore_unknown_targets: 'bool' = False, **kwargs) -> 'None'" + }, + "__dependencies_rules__": { + "documentation": "Declare dependencies rules.", + "is_target": false, + "name": "__dependencies_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "__dependents_rules__": { + "documentation": "Declare dependents rules.", + "is_target": false, + "name": "__dependents_rules__", + "signature": "(*args, **kwargs) -> 'None'" + }, + "_generator_sources_helper": { + "documentation": null, + "is_target": true, + "name": "_generator_sources_helper", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfile": { + "documentation": null, + "is_target": true, + "name": "_lockfile", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "_lockfiles": { + "documentation": null, + "is_target": true, + "name": "_lockfiles", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "adhoc_tool": { + "documentation": null, + "is_target": true, + "name": "adhoc_tool", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "archive": { + "documentation": null, + "is_target": true, + "name": "archive", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "build_file_dir": { + "documentation": "Returns the path to the directory of the current BUILD file.\n\nThe returned value is an instance of `PurePath` to make path name manipulations easy.\n\nSee: https://docs.python.org/3/library/pathlib.html#pathlib.PurePath", + "is_target": false, + "name": "build_file_dir", + "signature": "() -> 'PurePath'" + }, + "deploy_jar": { + "documentation": null, + "is_target": true, + "name": "deploy_jar", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_environment": { + "documentation": null, + "is_target": true, + "name": "docker_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "docker_image": { + "documentation": null, + "is_target": true, + "name": "docker_image", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "duplicate_rule": { + "documentation": "DeployJarDuplicateRule(pattern: 'str', action: 'str')", + "is_target": false, + "name": "duplicate_rule", + "signature": "(pattern: 'str', action: 'str') -> None" + }, + "env": { + "documentation": "Reference environment variable.", + "is_target": false, + "name": "env", + "signature": "(name: 'str', *args, **kwargs) -> 'Any'" + }, + "experimental_test_shell_command": { + "documentation": null, + "is_target": true, + "name": "experimental_test_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_go_package_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_go_package_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_java_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_python_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_resources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "experimental_wrap_as_scala_sources": { + "documentation": null, + "is_target": true, + "name": "experimental_wrap_as_scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "file": { + "documentation": null, + "is_target": true, + "name": "file", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "files": { + "documentation": null, + "is_target": true, + "name": "files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_binary": { + "documentation": null, + "is_target": true, + "name": "go_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_mod": { + "documentation": null, + "is_target": true, + "name": "go_mod", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_package": { + "documentation": null, + "is_target": true, + "name": "go_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "go_third_party_package": { + "documentation": null, + "is_target": true, + "name": "go_third_party_package", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_artifact": { + "documentation": null, + "is_target": true, + "name": "helm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_chart": { + "documentation": null, + "is_target": true, + "name": "helm_chart", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_deployment": { + "documentation": null, + "is_target": true, + "name": "helm_deployment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_test": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "helm_unittest_tests": { + "documentation": null, + "is_target": true, + "name": "helm_unittest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "http_source": { + "documentation": "http_source(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')", + "is_target": false, + "name": "http_source", + "signature": "(url: 'str', *, len: 'int', sha256: 'str', filename: 'str' = '')" + }, + "java_source": { + "documentation": null, + "is_target": true, + "name": "java_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "java_sources": { + "documentation": null, + "is_target": true, + "name": "java_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_test": { + "documentation": null, + "is_target": true, + "name": "junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "junit_tests": { + "documentation": null, + "is_target": true, + "name": "junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_artifact": { + "documentation": null, + "is_target": true, + "name": "jvm_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "jvm_exclude": { + "documentation": "JvmArtifactExclusion(group: 'str', artifact: 'str | None' = None)", + "is_target": false, + "name": "jvm_exclude", + "signature": "(group: 'str', artifact: 'str | None' = None) -> None" + }, + "jvm_war": { + "documentation": null, + "is_target": true, + "name": "jvm_war", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_test": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_junit_tests": { + "documentation": null, + "is_target": true, + "name": "kotlin_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_source": { + "documentation": null, + "is_target": true, + "name": "kotlin_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlin_sources": { + "documentation": null, + "is_target": true, + "name": "kotlin_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "kotlinc_plugin": { + "documentation": null, + "is_target": true, + "name": "kotlinc_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "local_environment": { + "documentation": null, + "is_target": true, + "name": "local_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_document": { + "documentation": null, + "is_target": true, + "name": "openapi_document", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_documents": { + "documentation": null, + "is_target": true, + "name": "openapi_documents", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_source": { + "documentation": null, + "is_target": true, + "name": "openapi_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "openapi_sources": { + "documentation": null, + "is_target": true, + "name": "openapi_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pants_requirements": { + "documentation": null, + "is_target": true, + "name": "pants_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "parametrize": { + "documentation": "A builtin function/dataclass that can be used to parametrize Targets.\n\nParametrization is applied between TargetAdaptor construction and Target instantiation, which\nmeans that individual Field instances need not be aware of it.", + "is_target": false, + "name": "parametrize", + "signature": "(*args: 'str', **kwargs: 'Any') -> 'None'" + }, + "per_platform": { + "documentation": "An object containing differing homogeneous platform-dependent values.\n\nThe values should be evaluated for the execution environment, and not the host environment\n(I.e. it should be evaluated in a `rule` which requests `Platform`).\n\nExpected usage is roughly:\n\n```python\nclass MyFieldType(...):\n value = str | per_platform[str]\n\n @classmethod\n def compute_value( # type: ignore[override]\n cls,\n raw_value: Optional[Union[str, per_platform[str]]],\n address: Address,\n ) -> Optional[Union[str, per_platform[str]]]:\n if isinstance(raw_value, per_platform):\n # NOTE: Ensure the values are homogenous\n raw_value.check_types(str)\n\n return raw_value\n\n...\n\n@rule\nasync def my_rule(..., platform: Platform) -> ...:\n field_value = target[MyFieldType].value\n\n if isinstance(field_value, per_platform):\n field_value = field_value.get_value_for_platform(platform)\n\n ...\n```\n\nNOTE: Support for this object should be heavily weighed, as it would be innaproriate to use in\ncertain contexts (such as the `source` field in a `foo_source` target, where the intent is to\nsupport differing source files based on platform. The result would be that dependency inference\n(and therefore the dependencies field) wouldn't be knowable on the host, which is not something\nthe engine can support yet).", + "is_target": false, + "name": "per_platform", + "signature": "(linux_arm64: '_T | None' = None, linux_x86_64: '_T | None' = None, macos_arm64: '_T | None' = None, macos_x86_64: '_T | None' = None) -> None" + }, + "pex_binaries": { + "documentation": null, + "is_target": true, + "name": "pex_binaries", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pex_binary": { + "documentation": null, + "is_target": true, + "name": "pex_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pipenv_requirements": { + "documentation": null, + "is_target": true, + "name": "pipenv_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "poetry_requirements": { + "documentation": null, + "is_target": true, + "name": "poetry_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_source": { + "documentation": null, + "is_target": true, + "name": "protobuf_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "protobuf_sources": { + "documentation": null, + "is_target": true, + "name": "protobuf_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "pyoxidizer_binary": { + "documentation": null, + "is_target": true, + "name": "pyoxidizer_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_artifact": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "python_artifact", + "signature": "(**kwargs) -> None" + }, + "python_aws_lambda_function": { + "documentation": null, + "is_target": true, + "name": "python_aws_lambda_function", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_aws_lambda_layer": { + "documentation": null, + "is_target": true, + "name": "python_aws_lambda_layer", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_awslambda": { + "documentation": null, + "is_target": true, + "name": "python_awslambda", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_distribution": { + "documentation": null, + "is_target": true, + "name": "python_distribution", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_google_cloud_function": { + "documentation": null, + "is_target": true, + "name": "python_google_cloud_function", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirement": { + "documentation": null, + "is_target": true, + "name": "python_requirement", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_requirements": { + "documentation": null, + "is_target": true, + "name": "python_requirements", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_source": { + "documentation": null, + "is_target": true, + "name": "python_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_sources": { + "documentation": null, + "is_target": true, + "name": "python_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test": { + "documentation": null, + "is_target": true, + "name": "python_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_test_utils": { + "documentation": null, + "is_target": true, + "name": "python_test_utils", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "python_tests": { + "documentation": null, + "is_target": true, + "name": "python_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "relocated_files": { + "documentation": null, + "is_target": true, + "name": "relocated_files", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "remote_environment": { + "documentation": null, + "is_target": true, + "name": "remote_environment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resource": { + "documentation": null, + "is_target": true, + "name": "resource", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "resources": { + "documentation": null, + "is_target": true, + "name": "resources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "run_shell_command": { + "documentation": null, + "is_target": true, + "name": "run_shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_artifact": { + "documentation": null, + "is_target": true, + "name": "scala_artifact", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_exclude": { + "documentation": "ScalaArtifactExclusion(group: 'str', artifact: 'str | None' = None, crossversion: 'str' = 'partial')", + "is_target": false, + "name": "scala_exclude", + "signature": "(group: 'str', artifact: 'str | None' = None, crossversion: 'str' = 'partial') -> None" + }, + "scala_junit_test": { + "documentation": null, + "is_target": true, + "name": "scala_junit_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_junit_tests": { + "documentation": null, + "is_target": true, + "name": "scala_junit_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_source": { + "documentation": null, + "is_target": true, + "name": "scala_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scala_sources": { + "documentation": null, + "is_target": true, + "name": "scala_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalac_plugin": { + "documentation": null, + "is_target": true, + "name": "scalac_plugin", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_test": { + "documentation": null, + "is_target": true, + "name": "scalatest_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "scalatest_tests": { + "documentation": null, + "is_target": true, + "name": "scalatest_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "setup_py": { + "documentation": "Represents a Python setup.py-based project.", + "is_target": false, + "name": "setup_py", + "signature": "(**kwargs) -> None" + }, + "shading_keep": { + "documentation": "JvmShadingKeepRule(pattern: 'str')", + "is_target": false, + "name": "shading_keep", + "signature": "(pattern: 'str') -> None" + }, + "shading_relocate": { + "documentation": "JvmShadingRelocateRule(package: 'str', into: 'str | None' = None)", + "is_target": false, + "name": "shading_relocate", + "signature": "(package: 'str', into: 'str | None' = None) -> None" + }, + "shading_rename": { + "documentation": "JvmShadingRenameRule(pattern: 'str', replacement: 'str')", + "is_target": false, + "name": "shading_rename", + "signature": "(pattern: 'str', replacement: 'str') -> None" + }, + "shading_zap": { + "documentation": "JvmShadingZapRule(pattern: 'str')", + "is_target": false, + "name": "shading_zap", + "signature": "(pattern: 'str') -> None" + }, + "shell_command": { + "documentation": null, + "is_target": true, + "name": "shell_command", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_source": { + "documentation": null, + "is_target": true, + "name": "shell_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shell_sources": { + "documentation": null, + "is_target": true, + "name": "shell_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_test": { + "documentation": null, + "is_target": true, + "name": "shunit2_test", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "shunit2_tests": { + "documentation": null, + "is_target": true, + "name": "shunit2_tests", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "stevedore_namespace": { + "documentation": "str(object='') -> str\nstr(bytes_or_buffer[, encoding[, errors]]) -> str\n\nCreate a new string object from the given object. If encoding or\nerrors is specified, then the object must expose a data buffer\nthat will be decoded using the given encoding and error handler.\nOtherwise, returns the result of object.__str__() (if defined)\nor repr(object).\nencoding defaults to sys.getdefaultencoding().\nerrors defaults to 'strict'.", + "is_target": false, + "name": "stevedore_namespace", + "signature": null + }, + "system_binary": { + "documentation": null, + "is_target": true, + "name": "system_binary", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "target": { + "documentation": null, + "is_target": true, + "name": "target", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "terraform_deployment": { + "documentation": null, + "is_target": true, + "name": "terraform_deployment", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "terraform_module": { + "documentation": null, + "is_target": true, + "name": "terraform_module", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_source": { + "documentation": null, + "is_target": true, + "name": "thrift_source", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "thrift_sources": { + "documentation": null, + "is_target": true, + "name": "thrift_sources", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + }, + "vcs_version": { + "documentation": null, + "is_target": true, + "name": "vcs_version", + "signature": "(**kwargs: 'Any') -> 'TargetAdaptor'" + } + }, + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "", + "check", + "environments-preview", + "filter" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check", + "provider": "pants.core" + }, + "count-loc": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "python-bootstrap", + "scc", + "system-binaries" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc", + "provider": "pants.backend.project_info" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependents", + "environments-preview", + "filter" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "environments-preview", + "filter" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies", + "provider": "pants.backend.project_info" + }, + "dependents": { + "consumed_scopes": [ + "", + "dependents", + "environments-preview", + "filter" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependents", + "provider": "pants.backend.project_info" + }, + "experimental-bsp": { + "consumed_scopes": [], + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_implemented": true, + "name": "experimental-bsp", + "provider": "pants.core" + }, + "experimental-deploy": { + "consumed_scopes": [ + "", + "environments-preview", + "experimental-deploy", + "filter" + ], + "description": "Perform a deployment process.", + "is_implemented": true, + "name": "experimental-deploy", + "provider": "pants.core" + }, + "experimental-explorer": { + "consumed_scopes": [], + "description": "Run the Pants Explorer Web UI server.", + "is_implemented": true, + "name": "experimental-explorer", + "provider": "pants.goal" + }, + "export": { + "consumed_scopes": [ + "", + "environments-preview", + "export", + "filter" + ], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export", + "provider": "pants.core" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "environments-preview", + "filter" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen", + "provider": "pants.core" + }, + "filedeps": { + "consumed_scopes": [ + "", + "environments-preview", + "filedeps", + "filter" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps", + "provider": "pants.backend.project_info" + }, + "fix": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "fix" + ], + "description": "Autofix source code.", + "is_implemented": true, + "name": "fix", + "provider": "pants.core" + }, + "fmt": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt", + "provider": "pants.core" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "", + "environments-preview", + "generate-lockfiles" + ], + "description": "Generate lockfiles for third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles", + "provider": "pants.core" + }, + "generate-snapshots": { + "consumed_scopes": [ + "", + "environments-preview", + "filter" + ], + "description": "Generate test snapshots.", + "is_implemented": true, + "name": "generate-snapshots", + "provider": "pants.core" + }, + "go-generate": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "go-generate", + "go-test", + "golang", + "system-binaries" + ], + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the `//go:generate` directives.\n\nSee https://go.dev/blog/generate for details.", + "is_implemented": true, + "name": "go-generate", + "provider": "pants.backend.experimental.go" + }, + "help": { + "consumed_scopes": [], + "description": "Display usage message.", + "is_implemented": true, + "name": "help", + "provider": "pants.goal" + }, + "help-advanced": { + "consumed_scopes": [], + "description": "Help for advanced options.", + "is_implemented": true, + "name": "help-advanced", + "provider": "pants.goal" + }, + "help-all": { + "consumed_scopes": [], + "description": "Print a JSON object containing all help info.", + "is_implemented": true, + "name": "help-all", + "provider": "pants.goal" + }, + "lint": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "lint" + ], + "description": "Run linters/formatters/fixers in check mode.", + "is_implemented": true, + "name": "lint", + "provider": "pants.core" + }, + "list": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list", + "provider": "pants.backend.project_info" + }, + "package": { + "consumed_scopes": [ + "", + "environments-preview", + "filter" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package", + "provider": "pants.core" + }, + "paths": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "paths" + ], + "description": "List the paths between two addresses. Either address may represent a group of targets, e.g. `--from=src/app/main.py --to=src/library::`.", + "is_implemented": true, + "name": "paths", + "provider": "pants.backend.project_info" + }, + "peek": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek", + "provider": "pants.backend.project_info" + }, + "publish": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish", + "provider": "pants.core" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "python-dump-source-analysis": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "python", + "python-dump-source-analysis", + "python-infer", + "source" + ], + "description": "Dump source analysis for python_source targets.", + "is_implemented": true, + "name": "python-dump-source-analysis", + "provider": "pants.backend.experimental.python" + }, + "repl": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl", + "provider": "pants.core" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots", + "provider": "pants.backend.project_info" + }, + "run": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run", + "provider": "pants.core" + }, + "tailor": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_implemented": true, + "name": "tailor", + "provider": "pants.core" + }, + "test": { + "consumed_scopes": [ + "", + "debug-adapter", + "environments-preview", + "filter", + "system-binaries", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test", + "provider": "pants.core" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "environments-preview", + "filter", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.19/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files", + "provider": "pants.core" + }, + "version": { + "consumed_scopes": [], + "description": "Display Pants version.", + "is_implemented": true, + "name": "version", + "provider": "pants.goal" + } + }, + "name_to_rule_info": { + "construct_env_aware_scope_apache_thrift": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_apache_thrift", + "output_type": "EnvironmentAware", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_env_aware_scope_docker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "DockerOptions", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_docker", + "output_type": "EnvironmentAware", + "provider": "pants.backend.docker" + }, + "construct_env_aware_scope_go_generate": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GoGenerateGoalSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_go_generate", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_golang": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GolangSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_golang", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.go" + }, + "construct_env_aware_scope_jvm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "JvmSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_jvm", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.java" + }, + "construct_env_aware_scope_nodejs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "NodeJS", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_nodejs", + "output_type": "EnvironmentAware", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_env_aware_scope_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PexSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_pex", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PythonBootstrapSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_python_bootstrap", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_python_native_code": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PythonNativeCodeSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_python_native_code", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_shell_setup": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "ShellSetup", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_shell_setup", + "output_type": "EnvironmentAware", + "provider": "pants.backend.shell" + }, + "construct_env_aware_scope_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "SubprocessEnvironment", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_subprocess_environment", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_system_binaries": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "SystemBinariesSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_system_binaries", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_env_aware_scope_test": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSubsystem", + "EnvironmentTarget" + ], + "name": "construct_env_aware_scope_test", + "output_type": "EnvironmentAware", + "provider": "pants.core" + }, + "construct_scope_": { + "description": null, + "documentation": "Options to control the overall behavior of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_", + "output_type": "GlobalOptions", + "provider": "pants.core" + }, + "construct_scope_add_trailing_comma": { + "description": null, + "documentation": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_add_trailing_comma", + "output_type": "AddTrailingComma", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "construct_scope_anonymous_telemetry": { + "description": null, + "documentation": "Options related to sending anonymous stats to the Pants project, to aid development.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_anonymous_telemetry", + "output_type": "AnonymousTelemetry", + "provider": "pants.core" + }, + "construct_scope_apache_thrift": { + "description": null, + "documentation": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_apache_thrift", + "output_type": "ApacheThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_autoflake": { + "description": null, + "documentation": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_autoflake", + "output_type": "Autoflake", + "provider": "pants.backend.python.lint.autoflake" + }, + "construct_scope_bandit": { + "description": null, + "documentation": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_bandit", + "output_type": "Bandit", + "provider": "pants.backend.python.lint.bandit" + }, + "construct_scope_black": { + "description": null, + "documentation": "The Black Python code formatter (https://black.readthedocs.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_black", + "output_type": "Black", + "provider": "pants.core" + }, + "construct_scope_buf": { + "description": null, + "documentation": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buf", + "output_type": "BufSubsystem", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "construct_scope_build_deprecations_fixer": { + "description": null, + "documentation": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for:\n\n - Renamed targets\n - Renamed fields", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_build_deprecations_fixer", + "output_type": "BUILDDeprecationsFixer", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "construct_scope_buildifier": { + "description": null, + "documentation": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_buildifier", + "output_type": "Buildifier", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "construct_scope_check": { + "description": null, + "documentation": "Run type checking or the lightest variant of compilation available for a language.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_check", + "output_type": "CheckSubsystem", + "provider": "pants.core" + }, + "construct_scope_count_loc": { + "description": null, + "documentation": "Count lines of code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_count_loc", + "output_type": "CountLinesOfCodeSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_coursier": { + "description": null, + "documentation": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coursier", + "output_type": "CoursierSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_coverage_py": { + "description": null, + "documentation": "Configuration for Python test coverage measurement.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_coverage_py", + "output_type": "CoverageSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_debug_adapter": { + "description": null, + "documentation": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debug_adapter", + "output_type": "DebugAdapterSubsystem", + "provider": "pants.core" + }, + "construct_scope_debugpy": { + "description": null, + "documentation": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_debugpy", + "output_type": "DebugPy", + "provider": "pants.backend.python" + }, + "construct_scope_dependencies": { + "description": null, + "documentation": "List the dependencies of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependencies", + "output_type": "DependenciesSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_dependents": { + "description": null, + "documentation": "List all targets that depend on any of the input files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dependents", + "output_type": "DependentsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_docformatter": { + "description": null, + "documentation": "The Python docformatter tool (https://github.com/myint/docformatter).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docformatter", + "output_type": "Docformatter", + "provider": "pants.backend.python.lint.docformatter" + }, + "construct_scope_docker": { + "description": null, + "documentation": "Options for interacting with Docker.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_docker", + "output_type": "DockerOptions", + "provider": "pants.backend.docker" + }, + "construct_scope_dockerfile_parser": { + "description": null, + "documentation": "Used to parse Dockerfile build specs to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_dockerfile_parser", + "output_type": "DockerfileParser", + "provider": "pants.backend.docker" + }, + "construct_scope_download_terraform": { + "description": null, + "documentation": "Terraform (https://terraform.io)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_download_terraform", + "output_type": "TerraformTool", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_experimental_bsp": { + "description": null, + "documentation": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_bsp", + "output_type": "BSPGoal", + "provider": "pants.core" + }, + "construct_scope_experimental_deploy": { + "description": null, + "documentation": "Perform a deployment process.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_experimental_deploy", + "output_type": "DeploySubsystem", + "provider": "pants.core" + }, + "construct_scope_export": { + "description": null, + "documentation": "Export Pants data for use in other tools, such as IDEs.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export", + "output_type": "ExportSubsystem", + "provider": "pants.core" + }, + "construct_scope_export_codegen": { + "description": null, + "documentation": "Write generated files to `dist/codegen` for use outside of Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_export_codegen", + "output_type": "ExportCodegenSubsystem", + "provider": "pants.core" + }, + "construct_scope_filedeps": { + "description": null, + "documentation": "List all source and BUILD files a target depends on.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filedeps", + "output_type": "FiledepsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_filter": { + "description": null, + "documentation": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_filter", + "output_type": "FilterSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_fix": { + "description": null, + "documentation": "Autofix source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fix", + "output_type": "FixSubsystem", + "provider": "pants.core" + }, + "construct_scope_flake8": { + "description": null, + "documentation": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_flake8", + "output_type": "Flake8", + "provider": "pants.backend.python.lint.flake8" + }, + "construct_scope_fmt": { + "description": null, + "documentation": "Autoformat source code.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_fmt", + "output_type": "FmtSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_lockfiles": { + "description": null, + "documentation": "Generate lockfiles for third-party dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_lockfiles", + "output_type": "GenerateLockfilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_generate_snapshots": { + "description": null, + "documentation": "Generate test snapshots.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_generate_snapshots", + "output_type": "GenerateSnapshotsSubsystem", + "provider": "pants.core" + }, + "construct_scope_go_generate": { + "description": null, + "documentation": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the `//go:generate` directives.\n\nSee https://go.dev/blog/generate for details.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_generate", + "output_type": "GoGenerateGoalSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_go_test": { + "description": null, + "documentation": "Options for Go tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_go_test", + "output_type": "GoTestSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_gofmt": { + "description": null, + "documentation": "Gofmt-specific options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_gofmt", + "output_type": "GofmtSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_golang": { + "description": null, + "documentation": "Options for Golang support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_golang", + "output_type": "GolangSubsystem", + "provider": "pants.backend.experimental.go" + }, + "construct_scope_google_java_format": { + "description": null, + "documentation": "Google Java Format (https://github.com/google/google-java-format)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_google_java_format", + "output_type": "GoogleJavaFormatSubsystem", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "construct_scope_grpc_python_plugin": { + "description": null, + "documentation": "The gRPC Protobuf plugin for Python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_grpc_python_plugin", + "output_type": "GrpcPythonPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_hadolint": { + "description": null, + "documentation": "A linter for Dockerfiles.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_hadolint", + "output_type": "Hadolint", + "provider": "pants.backend.docker.lint.hadolint" + }, + "construct_scope_helm": { + "description": null, + "documentation": "The Helm command line (https://helm.sh)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm", + "output_type": "HelmSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_k8s_parser": { + "description": null, + "documentation": "Analyses K8S manifests rendered by Helm.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_k8s_parser", + "output_type": "HelmKubeParserSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_post_renderer": { + "description": null, + "documentation": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_post_renderer", + "output_type": "HelmPostRendererSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_helm_unittest": { + "description": null, + "documentation": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/helm-unittest)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_helm_unittest", + "output_type": "HelmUnitTestSubsystem", + "provider": "pants.backend.experimental.helm" + }, + "construct_scope_ipython": { + "description": null, + "documentation": "The IPython enhanced REPL (https://ipython.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ipython", + "output_type": "IPython", + "provider": "pants.backend.python" + }, + "construct_scope_isort": { + "description": null, + "documentation": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_isort", + "output_type": "Isort", + "provider": "pants.backend.python.lint.isort" + }, + "construct_scope_jarjar": { + "description": null, + "documentation": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jarjar", + "output_type": "JarJar", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_java_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Java targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_java_infer", + "output_type": "JavaInferSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_javac": { + "description": null, + "documentation": "The javac Java source compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_javac", + "output_type": "JavacSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_junit": { + "description": null, + "documentation": "The JUnit test framework (https://junit.org)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_junit", + "output_type": "JUnit", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_jvm": { + "description": null, + "documentation": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_jvm", + "output_type": "JvmSubsystem", + "provider": "pants.backend.experimental.java" + }, + "construct_scope_kotlin": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin", + "output_type": "KotlinSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlin_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Kotlin targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlin_infer", + "output_type": "KotlinInferSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_kotlinc": { + "description": null, + "documentation": "The Kotlin programming language (https://kotlinlang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_kotlinc", + "output_type": "KotlincSubsystem", + "provider": "pants.backend.experimental.kotlin" + }, + "construct_scope_ktlint": { + "description": null, + "documentation": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ktlint", + "output_type": "KtlintSubsystem", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "construct_scope_lint": { + "description": null, + "documentation": "Run linters/formatters/fixers in check mode.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_lint", + "output_type": "LintSubsystem", + "provider": "pants.core" + }, + "construct_scope_list": { + "description": null, + "documentation": "Lists all targets matching the file or target arguments.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_list", + "output_type": "ListSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_mypy": { + "description": null, + "documentation": "The MyPy Python type checker (http://mypy-lang.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy", + "output_type": "MyPy", + "provider": "pants.backend.python.typecheck.mypy" + }, + "construct_scope_mypy_protobuf": { + "description": null, + "documentation": "Configuration of the mypy-protobuf type stub generation plugin.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_mypy_protobuf", + "output_type": "PythonProtobufMypyPlugin", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_nodejs": { + "description": null, + "documentation": "The Node.js Javascript runtime (including Corepack).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_nodejs", + "output_type": "NodeJS", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_nodejs_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for javascript targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_nodejs_infer", + "output_type": "NodeJSInfer", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_openapi": { + "description": null, + "documentation": "The OpenAPI Specification (https://swagger.io/specification/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_openapi", + "output_type": "OpenApiSubsystem", + "provider": "pants.backend.experimental.openapi" + }, + "construct_scope_openapi_format": { + "description": null, + "documentation": "Format an OpenAPI document by ordering, formatting and filtering fields (https://github.com/thim81/openapi-format).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_openapi_format", + "output_type": "OpenApiFormatSubsystem", + "provider": "pants.backend.experimental.openapi.lint.openapi_format" + }, + "construct_scope_package": { + "description": null, + "documentation": "Create a distributable package.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_package", + "output_type": "PackageSubsystem", + "provider": "pants.core" + }, + "construct_scope_paths": { + "description": null, + "documentation": "List the paths between two addresses. Either address may represent a group of targets, e.g. `--from=src/app/main.py --to=src/library::`.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_paths", + "output_type": "PathsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_peek": { + "description": null, + "documentation": "Display BUILD target info", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_peek", + "output_type": "PeekSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_pex": { + "description": null, + "documentation": "How Pants uses Pex to run Python subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex", + "output_type": "PexSubsystem", + "provider": "pants.core" + }, + "construct_scope_pex_binary_defaults": { + "description": null, + "documentation": "Default settings for creating PEX executables.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_binary_defaults", + "output_type": "PexBinaryDefaults", + "provider": "pants.backend.python" + }, + "construct_scope_pex_cli": { + "description": null, + "documentation": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pex_cli", + "output_type": "PexCli", + "provider": "pants.core" + }, + "construct_scope_preamble": { + "description": null, + "documentation": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's `string.Template` substitutions): - $year: The current year (only used when actually writing the year to the file).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_preamble", + "output_type": "PreambleSubsystem", + "provider": "pants.backend.tools.preamble" + }, + "construct_scope_protobuf_java_grpc": { + "description": null, + "documentation": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protobuf_java_grpc", + "output_type": "JavaProtobufGrpcSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "construct_scope_protoc": { + "description": null, + "documentation": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_protoc", + "output_type": "Protoc", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_publish": { + "description": null, + "documentation": "Publish deliverables (assets, distributions, images, etc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_publish", + "output_type": "PublishSubsystem", + "provider": "pants.core" + }, + "construct_scope_py_constraints": { + "description": null, + "documentation": "Determine what Python interpreter constraints are used by files/targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_py_constraints", + "output_type": "PyConstraintsSubsystem", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "construct_scope_pydocstyle": { + "description": null, + "documentation": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pydocstyle", + "output_type": "Pydocstyle", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "construct_scope_pylint": { + "description": null, + "documentation": "The Pylint linter for Python code (https://www.pylint.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pylint", + "output_type": "Pylint", + "provider": "pants.backend.python.lint.pylint" + }, + "construct_scope_pyoxidizer": { + "description": null, + "documentation": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyoxidizer", + "output_type": "PyOxidizer", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "construct_scope_pytest": { + "description": null, + "documentation": "The pytest Python test framework (https://docs.pytest.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pytest", + "output_type": "PyTest", + "provider": "pants.backend.python" + }, + "construct_scope_python": { + "description": null, + "documentation": "Options for Pants's Python backend.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python", + "output_type": "PythonSetup", + "provider": "pants.core" + }, + "construct_scope_python_bootstrap": { + "description": null, + "documentation": "Options used to locate Python interpreters.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_bootstrap", + "output_type": "PythonBootstrapSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_dump_source_analysis": { + "description": null, + "documentation": "Dump source analysis for python_source targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_dump_source_analysis", + "output_type": "DumpPythonSourceAnalysisSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_python_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Python targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_infer", + "output_type": "PythonInferSubsystem", + "provider": "pants.backend.python" + }, + "construct_scope_python_native_code": { + "description": null, + "documentation": "Options for building native code using Python, e.g. when resolving distributions.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_native_code", + "output_type": "PythonNativeCodeSubsystem", + "provider": "pants.core" + }, + "construct_scope_python_protobuf": { + "description": null, + "documentation": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.19/docs/protobuf-python.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_protobuf", + "output_type": "PythonProtobufSubsystem", + "provider": "pants.backend.codegen.protobuf.python" + }, + "construct_scope_python_repos": { + "description": null, + "documentation": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_repos", + "output_type": "PythonRepos", + "provider": "pants.core" + }, + "construct_scope_python_thrift": { + "description": null, + "documentation": "Options specific to generating Python from Thrift using Apache Thrift", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_python_thrift", + "output_type": "ThriftPythonSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_pytype": { + "description": null, + "documentation": "The Pytype utility for typechecking Python code (https://github.com/google/pytype).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pytype", + "output_type": "Pytype", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "construct_scope_pyupgrade": { + "description": null, + "documentation": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_pyupgrade", + "output_type": "PyUpgrade", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "construct_scope_regex_lint": { + "description": null, + "documentation": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_regex_lint", + "output_type": "RegexLintSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_repl": { + "description": null, + "documentation": "Open a REPL with the specified code loadable.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_repl", + "output_type": "ReplSubsystem", + "provider": "pants.core" + }, + "construct_scope_roots": { + "description": null, + "documentation": "List the repo's registered source roots.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_roots", + "output_type": "RootsSubsystem", + "provider": "pants.backend.project_info" + }, + "construct_scope_ruff": { + "description": null, + "documentation": "The Ruff Python formatter (https://github.com/charliermarsh/ruff).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_ruff", + "output_type": "Ruff", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "construct_scope_run": { + "description": null, + "documentation": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_run", + "output_type": "RunSubsystem", + "provider": "pants.core" + }, + "construct_scope_scala": { + "description": null, + "documentation": "Scala programming language", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala", + "output_type": "ScalaSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scala_infer": { + "description": null, + "documentation": "Options controlling which dependencies will be inferred for Scala targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scala_infer", + "output_type": "ScalaInferSubsystem", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalac": { + "description": null, + "documentation": "The Scala compiler.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalac", + "output_type": "Scalac", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scalafmt": { + "description": null, + "documentation": "scalafmt (https://scalameta.org/scalafmt/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalafmt", + "output_type": "ScalafmtSubsystem", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "construct_scope_scalapb": { + "description": null, + "documentation": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalapb", + "output_type": "ScalaPBSubsystem", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "construct_scope_scalatest": { + "description": null, + "documentation": "The Scalatest test framework (https://www.scalatest.org/)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scalatest", + "output_type": "Scalatest", + "provider": "pants.backend.experimental.scala" + }, + "construct_scope_scc": { + "description": null, + "documentation": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_scc", + "output_type": "SuccinctCodeCounter", + "provider": "pants.backend.project_info" + }, + "construct_scope_semgrep": { + "description": null, + "documentation": "Lightweight static analysis for many languages. Find bug variants with patterns that look like source code. (https://semgrep.dev/)\n\nPants automatically finds config files (`.semgrep.yml`, `.semgrep.yaml`, and `.yml` or `.yaml` files within `.semgrep/` directories), and runs semgrep against all _targets_ known to Pants.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_semgrep", + "output_type": "SemgrepSubsystem", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "construct_scope_setup_py_generation": { + "description": null, + "documentation": "Options to control how setup.py is generated from a `python_distribution` target.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setup_py_generation", + "output_type": "SetupPyGeneration", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools": { + "description": null, + "documentation": "Python setuptools, used to package `python_distribution` targets.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools", + "output_type": "Setuptools", + "provider": "pants.backend.python" + }, + "construct_scope_setuptools_scm": { + "description": null, + "documentation": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_setuptools_scm", + "output_type": "SetuptoolsSCM", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_shell_setup": { + "description": null, + "documentation": "Options for Pants's Shell support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_setup", + "output_type": "ShellSetup", + "provider": "pants.backend.shell" + }, + "construct_scope_shell_test": { + "description": null, + "documentation": "Options for Pants' Shell test support.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shell_test", + "output_type": "ShellTestSubsystem", + "provider": "pants.backend.shell" + }, + "construct_scope_shellcheck": { + "description": null, + "documentation": "A linter for shell scripts.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shellcheck", + "output_type": "Shellcheck", + "provider": "pants.backend.shell" + }, + "construct_scope_shfmt": { + "description": null, + "documentation": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shfmt", + "output_type": "Shfmt", + "provider": "pants.backend.shell.lint.shfmt" + }, + "construct_scope_shunit2": { + "description": null, + "documentation": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_shunit2", + "output_type": "Shunit2", + "provider": "pants.backend.shell" + }, + "construct_scope_source": { + "description": null, + "documentation": "Configuration for roots of source trees.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_source", + "output_type": "SourceRootConfig", + "provider": "pants.core" + }, + "construct_scope_spectral": { + "description": null, + "documentation": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_spectral", + "output_type": "SpectralSubsystem", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "construct_scope_stats": { + "description": null, + "documentation": "An aggregator for Pants stats, such as cache metrics.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_stats", + "output_type": "StatsAggregatorSubsystem", + "provider": "pants.core" + }, + "construct_scope_subprocess_environment": { + "description": null, + "documentation": "Environment settings for forked subprocesses.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_subprocess_environment", + "output_type": "SubprocessEnvironment", + "provider": "pants.core" + }, + "construct_scope_system_binaries": { + "description": null, + "documentation": "System binaries related settings.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_system_binaries", + "output_type": "SystemBinariesSubsystem", + "provider": "pants.core" + }, + "construct_scope_tailor": { + "description": null, + "documentation": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_tailor", + "output_type": "TailorSubsystem", + "provider": "pants.core" + }, + "construct_scope_terraform_fmt": { + "description": null, + "documentation": "Terraform fmt options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_fmt", + "output_type": "TfFmtSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_hcl2_parser": { + "description": null, + "documentation": "Used to parse Terraform modules to infer their dependencies.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_hcl2_parser", + "output_type": "TerraformHcl2Parser", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_terraform_validate": { + "description": null, + "documentation": "Terraform validate options.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_terraform_validate", + "output_type": "TerraformValidateSubsystem", + "provider": "pants.backend.experimental.terraform" + }, + "construct_scope_test": { + "description": null, + "documentation": "Run tests.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_test", + "output_type": "TestSubsystem", + "provider": "pants.core" + }, + "construct_scope_thrift": { + "description": null, + "documentation": "General Thrift IDL settings (https://thrift.apache.org/).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_thrift", + "output_type": "ThriftSubsystem", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "construct_scope_twine": { + "description": null, + "documentation": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_twine", + "output_type": "TwineSubsystem", + "provider": "pants.backend.experimental.python" + }, + "construct_scope_update_build_files": { + "description": null, + "documentation": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.19/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_update_build_files", + "output_type": "UpdateBuildFilesSubsystem", + "provider": "pants.core" + }, + "construct_scope_workunit_logger": { + "description": null, + "documentation": "Workunit Logger subsystem. Useful for debugging pants itself.", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_workunit_logger", + "output_type": "WorkunitLogger", + "provider": "pants.backend.experimental.tools.workunit_logger" + }, + "construct_scope_yamllint": { + "description": null, + "documentation": "A linter for YAML files (https://yamllint.readthedocs.io)", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yamllint", + "output_type": "Yamllint", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "construct_scope_yapf": { + "description": null, + "documentation": "A formatter for Python files (https://github.com/google/yapf).", + "input_gets": [ + "Get(ScopedOptions, Scope, ..)" + ], + "input_types": [], + "name": "construct_scope_yapf", + "output_type": "Yapf", + "provider": "pants.core" + }, + "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request": { + "description": "Running run_in_sandbox target", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunInSandboxRequest, {EnvironmentName: .., RunFieldSet: ..})", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., AdhocProcessRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateFilesFromAdhocToolRequest" + ], + "name": "pants.backend.adhoc.adhoc_tool.run_in_sandbox_request", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.adhoc.run_system_binary.create_system_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "SystemBinaryFieldSet", + "EnvironmentAware" + ], + "name": "pants.backend.adhoc.run_system_binary.create_system_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.backend.awslambda.python.rules.package_python_aws_lambda_function": { + "description": "Create Python AWS Lambda Function", + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, BuildPythonFaaSRequest, ..)" + ], + "input_types": [ + "PythonAwsLambdaFieldSet" + ], + "name": "pants.backend.awslambda.python.rules.package_python_aws_lambda_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer": { + "description": "Create Python AWS Lambda Layer", + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, BuildPythonFaaSRequest, ..)" + ], + "input_types": [ + "PythonAwsLambdaLayerFieldSet" + ], + "name": "pants.backend.awslambda.python.rules.package_python_aws_lambda_layer", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.determine_renamed_field_types", + "output_type": "RenamedFieldTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix": { + "description": "Fix deprecated field names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameFieldsInFileRequest", + "RenamedFieldTypes" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_fields_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RegisteredTargetTypes" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.determine_renamed_target_types", + "output_type": "RenamedTargetTypes", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix": { + "description": "Fix deprecated target type names", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix", + "output_type": "FixResult", + "provider": "pants.core" + }, + "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RenameTargetsInFileRequest", + "RenamedTargetTypes" + ], + "name": "pants.backend.build_files.fix.deprecations.renamed_targets_rules.fix_single", + "output_type": "FixedBUILDFile", + "provider": "pants.core" + }, + "pants.backend.build_files.fmt.black.register.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Black" + ], + "name": "pants.backend.build_files.fmt.black.register.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.black" + }, + "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt": { + "description": "Format with Buildifier", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Buildifier", + "Platform" + ], + "name": "pants.backend.build_files.fmt.buildifier.rules.buildfier_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "pants.backend.build_files.fmt.yapf.register.yapf_fmt": { + "description": "Format with Yapf", + "documentation": null, + "input_gets": [ + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Yapf" + ], + "name": "pants.backend.build_files.fmt.yapf.register.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BlackRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Black", + "BuildFileOptions" + ], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BlackRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.black" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BuildifierRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Buildifier", + "BuildFileOptions" + ], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_BuildifierRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.buildifier" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameFieldsInFilesRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BUILDDeprecationsFixer", + "BuildFileOptions" + ], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameFieldsInFilesRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameTargetsInFilesRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BUILDDeprecationsFixer", + "BuildFileOptions" + ], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_RenameTargetsInFilesRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fix.deprecations" + }, + "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_YapfRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Yapf", + "BuildFileOptions" + ], + "name": "pants.backend.build_files.utils._get_build_file_partitioner_rules.partition_build_files_YapfRequest", + "output_type": "Partitions", + "provider": "pants.backend.build_files.fmt.yapf" + }, + "pants.backend.codegen.export_codegen_goal.export_codegen": { + "description": "`export-codegen` goal", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "FilteredTargets", + "UnionMembership", + "Workspace", + "DistDir", + "RegisteredTargetTypes" + ], + "name": "pants.backend.codegen.export_codegen_goal.export_codegen", + "output_type": "ExportCodegen", + "provider": "pants.core" + }, + "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf": { + "description": "Generate Go source files from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateGoFromProtobufRequest", + "Protoc", + "_SetupGoProtocPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.generate_go_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets": { + "description": "Map import paths for all Go Protobuf targets.", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "ProtobufGoModuleImportPathsMappingsHook", + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.go.rules.map_import_paths_of_all_go_protobuf_targets", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(FallibleBuildGoPackageRequest, _SetupGoProtobufPackageBuildRequest, ..)" + ], + "input_types": [ + "GoCodegenBuildProtobufRequest" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_build_go_package_request_for_protobuf", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(BuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "_SetupGoProtobufPackageBuildRequest", + "Protoc", + "_SetupGoProtocPlugin", + "PackageAnalyzerSetup", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.go.rules.setup_full_package_build_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [], + "name": "pants.backend.codegen.protobuf.go.rules.setup_go_protoc_plugin", + "output_type": "_SetupGoProtocPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.go" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProtobufJavaRuntimeForResolve, ProtobufJavaRuntimeForResolveRequest, ..)", + "Get(ProtobufJavaGrpcRuntimeForResolve, ProtobufJavaGrpcRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferProtobufJavaRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.infer_protobuf_java_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaGrpcRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_grpc_runtime_for_resolve", + "output_type": "ProtobufJavaGrpcRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem", + "ProtobufJavaRuntimeForResolveRequest" + ], + "name": "pants.backend.codegen.protobuf.java.dependency_inference.resolve_protobuf_java_runtime_for_resolve", + "output_type": "ProtobufJavaRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GrpcJavaToolLockfileSentinel", + "JavaProtobufGrpcSubsystem" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_grpc_java_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf": { + "description": "Generate Java from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateJavaFromProtobufRequest", + "Protoc", + "ProtobufJavaGrpcPlugin", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.java.rules.generate_java_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GrpcJavaToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "Platform" + ], + "name": "pants.backend.codegen.protobuf.java.rules.resolve_protobuf_java_grpc_plugin", + "output_type": "ProtobufJavaGrpcPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.java" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format": { + "description": "Format with buf format", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "BufSubsystem", + "DiffBinary", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.format_rules.run_buf_format", + "output_type": "FixResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "BufSubsystem" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.partition_buf", + "output_type": "Partitions", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf": { + "description": "Lint with buf lint", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "BufSubsystem", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.lint.buf.lint_rules.run_buf", + "output_type": "LintResult", + "provider": "pants.backend.codegen.protobuf.lint.buf" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies": { + "description": "Inferring Protobuf dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "InferProtobufDependencies", + "ProtobufMapping", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.infer_protobuf_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files": { + "description": "Creating map of Protobuf file names to Protobuf targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets" + ], + "name": "pants.backend.codegen.protobuf.protobuf_dependency_inference.map_protobuf_files", + "output_type": "ProtobufMapping", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules": { + "description": "Creating map of Protobuf targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllProtobufTargets", + "PythonSetup", + "PythonProtobufMappingMarker" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_module_mapper.map_protobuf_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonProtobufDependencies", + "PythonProtobufSubsystem", + "PythonSetup", + "PythonInferSubsystem" + ], + "name": "pants.backend.codegen.protobuf.python.python_protobuf_subsystem.infer_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf": { + "description": "Generate Python from Protobuf", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromProtobufRequest", + "Protoc", + "GrpcPythonPlugin", + "PythonProtobufSubsystem", + "PythonProtobufMypyPlugin", + "PexEnvironment", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.python.rules.generate_python_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaPBRuntimeForResolve, ScalaPBRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferScalaPBRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.infer_scalapb_runtime_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPBRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.dependency_inference.resolve_scalapb_runtime_for_resolve", + "output_type": "ScalaPBRuntimeForResolve", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf": { + "description": "Generate Scala from Protobuf", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(MaterializedJvmPlugins, MaterializeJvmPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateScalaFromProtobufRequest", + "Protoc", + "ScalaPBSubsystem", + "ScalaPBShimCompiledClassfiles", + "InternalJdk", + "Platform" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scala_from_protobuf", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalapbcToolLockfileSentinel", + "ScalaPBSubsystem" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.generate_scalapbc_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "MaterializeJvmPluginRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugin", + "output_type": "MaterializedJvmPlugin", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializedJvmPlugin, MaterializeJvmPluginRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "MaterializeJvmPluginsRequest" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.materialize_jvm_plugins", + "output_type": "MaterializedJvmPlugins", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalapbcToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ScalaPBSubsystem", + "InternalJdk" + ], + "name": "pants.backend.codegen.protobuf.scala.rules.setup_scalapb_shim_classfiles", + "output_type": "ScalaPBShimCompiledClassfiles", + "provider": "pants.backend.experimental.codegen.protobuf.scala" + }, + "pants.backend.codegen.protobuf.tailor.find_putative_targets": { + "description": "Determine candidate Protobuf targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeProtobufTargetsRequest", + "AllOwnedSources", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets": { + "description": "Find all Protobuf targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.protobuf.target_types.find_all_protobuf_targets", + "output_type": "AllProtobufTargets", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.protobuf.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "Protoc" + ], + "name": "pants.backend.codegen.protobuf.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.protobuf.python" + }, + "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules": { + "description": "Creating map of Thrift targets to generated Python modules", + "documentation": null, + "input_gets": [ + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "AllThriftTargets", + "PythonSetup", + "PythonThriftMappingMarker" + ], + "name": "pants.backend.codegen.thrift.apache.python.python_thrift_module_mapper.map_thrift_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferApacheThriftPythonDependencies", + "ThriftPythonSubsystem", + "PythonSetup", + "PythonInferSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.find_apache_thrift_python_requirement", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift": { + "description": "Generate Python from Thrift", + "documentation": null, + "input_gets": [ + "Get(GeneratedThriftSources, GenerateThriftSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GeneratePythonFromThriftRequest", + "ThriftPythonSubsystem" + ], + "name": "pants.backend.codegen.thrift.apache.python.rules.generate_python_from_thrift", + "output_type": "GeneratedSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "GenerateThriftSourcesRequest", + "ApacheThriftSetup" + ], + "name": "pants.backend.codegen.thrift.apache.rules.generate_apache_thrift_sources", + "output_type": "GeneratedThriftSources", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ApacheThriftSubsystem", + "EnvironmentAware", + "EnvironmentTarget" + ], + "name": "pants.backend.codegen.thrift.apache.rules.setup_thrift_tool", + "output_type": "ApacheThriftSetup", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies": { + "description": "Inferring Thrift dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ParsedThrift, ParsedThriftRequest, ..)" + ], + "input_types": [ + "InferThriftDependencies", + "ThriftMapping", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.infer_thrift_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.dependency_inference.map_thrift_files": { + "description": "Creating map of Thrift file names to Thrift targets", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllThriftTargets" + ], + "name": "pants.backend.codegen.thrift.dependency_inference.map_thrift_files", + "output_type": "ThriftMapping", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets": { + "description": "Determine candidate Thrift targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeThriftTargetsRequest", + "AllOwnedSources", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.tailor.find_putative_thrift_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.find_all_thrift_targets": { + "description": "Find all Thrift targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.codegen.thrift.target_types.find_all_thrift_targets", + "output_type": "AllThriftTargets", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratorSettingsRequest", + "ThriftSubsystem" + ], + "name": "pants.backend.codegen.thrift.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParsedThriftRequest" + ], + "name": "pants.backend.codegen.thrift.thrift_parser.parse_thrift_file", + "output_type": "ParsedThrift", + "provider": "pants.backend.codegen.thrift.apache.python" + }, + "pants.backend.docker.goals.package_image.build_docker_image": { + "description": null, + "documentation": "Build a Docker image using `docker build`.", + "input_gets": [ + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "DockerPackageFieldSet", + "DockerOptions", + "GlobalOptions", + "DockerBinary", + "KeepSandboxes", + "UnionMembership" + ], + "name": "pants.backend.docker.goals.package_image.build_docker_image", + "output_type": "BuiltPackage", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.publish.push_docker_images": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "PublishDockerImageRequest", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.publish.push_docker_images", + "output_type": "PublishProcesses", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.run_image.docker_image_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "DockerRunFieldSet", + "DockerBinary", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.goals.run_image.docker_image_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.goals.tailor.find_putative_targets": { + "description": "Determine candidate Docker targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeDockerTargetsRequest", + "AllOwnedSources", + "DockerOptions" + ], + "name": "pants.backend.docker.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.lint.hadolint.rules.run_hadolint": { + "description": "Lint with Hadolint", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "Hadolint", + "Platform" + ], + "name": "pants.backend.docker.lint.hadolint.rules.run_hadolint", + "output_type": "LintResult", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, DockerfileParseRequest, ..)" + ], + "input_types": [ + "DockerfileInfoRequest" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.parse_dockerfile", + "output_type": "DockerfileInfo", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "DockerfileParser" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "DockerfileParseRequest", + "ParserSetup" + ], + "name": "pants.backend.docker.subsystems.dockerfile_parser.setup_process_for_parse_dockerfile", + "output_type": "Process", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.target_types.all_docker_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.docker.target_types.all_docker_targets", + "output_type": "AllDockerImageTargets", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies": { + "description": null, + "documentation": "Inspects the Dockerfile for references to known packagable targets.", + "input_gets": [ + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "InferDockerDependencies", + "AllPackageableTargets" + ], + "name": "pants.backend.docker.util_rules.dependencies.infer_docker_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_binary.get_docker": { + "description": "Finding the `docker` binary and related tooling", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)" + ], + "input_types": [ + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.util_rules.docker_binary.get_docker", + "output_type": "DockerBinary", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_args.docker_build_args": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerBuildArgsRequest", + "DockerOptions" + ], + "name": "pants.backend.docker.util_rules.docker_build_args.docker_build_args", + "output_type": "DockerBuildArgs", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(DockerfileInfo, DockerfileInfoRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(DockerBuildEnvironment, DockerBuildEnvironmentRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "DockerBuildContextRequest" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.create_docker_build_context", + "output_type": "DockerBuildContext", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateDockerContextFiles" + ], + "name": "pants.backend.docker.util_rules.docker_build_context.hydrate_input_sources", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DockerBuildArgs, DockerBuildArgsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "DockerBuildEnvironmentRequest", + "DockerOptions", + "EnvironmentAware" + ], + "name": "pants.backend.docker.util_rules.docker_build_env.docker_build_environment_vars", + "output_type": "DockerBuildEnvironment", + "provider": "pants.backend.docker" + }, + "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateDockerfileRequest" + ], + "name": "pants.backend.docker.util_rules.dockerfile.hydrate_dockerfile", + "output_type": "GeneratedSources", + "provider": "pants.backend.docker" + }, + "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)" + ], + "input_types": [ + "NaiveBuildGoPackageRequestForStdlibPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.go_sources.load_go_binary.naive_build_go_package_request_for_stdlib", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.go_sources.load_go_binary.setup_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(BuildGoPackageRequest, NaiveBuildGoPackageRequestForStdlibPackageRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "LoadedGoBinaryRequest", + "GoRoot" + ], + "name": "pants.backend.go.go_sources.load_go_binary.setup_go_binary", + "output_type": "LoadedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.check.check_go": { + "description": "Check Go compilation", + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)" + ], + "input_types": [ + "GoCheckRequest" + ], + "name": "pants.backend.go.goals.check.check_go", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.go_generate": { + "description": "`go-generate` goal", + "documentation": null, + "input_gets": [ + "Get(RunPackageGeneratorsResult, RunPackageGeneratorsRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Targets", + "Workspace" + ], + "name": "pants.backend.go.goals.generate.go_generate", + "output_type": "GoGenerateGoal", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.merge_digests_with_overwrite": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "OverwriteMergeDigests" + ], + "name": "pants.backend.go.goals.generate.merge_digests_with_overwrite", + "output_type": "Digest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.generate.run_go_package_generators": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, OverwriteMergeDigests, ..)" + ], + "input_types": [ + "RunPackageGeneratorsRequest", + "GoRoot", + "EnvironmentAware" + ], + "name": "pants.backend.go.goals.generate.run_go_package_generators", + "output_type": "RunPackageGeneratorsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.package_binary.package_go_binary": { + "description": "Package Go binary", + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageTargetRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.package_binary.package_go_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.run_binary.create_go_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.backend.go.goals.run_binary.create_go_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_package_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "FindPutativeGoPackageTargetRequest", + "AllOwnedSources" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_package_target", + "output_type": "FindPutativeGoPackageTargetResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.tailor.find_putative_go_targets": { + "description": "Determine candidate Go targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FindPutativeGoPackageTargetResult, FindPutativeGoPackageTargetRequest, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "PutativeGoTargetsRequest", + "AllOwnedSources", + "GolangSubsystem" + ], + "name": "pants.backend.go.goals.tailor.find_putative_go_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.prepare_go_test_binary": { + "description": "Prepare Go test binary", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(GeneratedTestMain, GenerateTestMainRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)", + "Get(BuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(GenerateCoverageSetupCodeResult, GenerateCoverageSetupCodeRequest, ..)", + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(LinkedGoBinary, LinkGoBinaryRequest, ..)" + ], + "input_types": [ + "PrepareGoTestBinaryRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.goals.test.prepare_go_test_binary", + "output_type": "FalliblePrepareGoTestBinaryResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.goals.test.run_go_tests": { + "description": "Test with Go", + "documentation": null, + "input_gets": [ + "Get(FalliblePrepareGoTestBinaryResult, PrepareGoTestBinaryRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "GoTestSubsystem", + "TestExtraEnv", + "GoRoot" + ], + "name": "pants.backend.go.goals.test.run_go_tests", + "output_type": "TestResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.lint.gofmt.rules.gofmt_fmt": { + "description": "Format with gofmt", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "GofmtSubsystem", + "GoRoot" + ], + "name": "pants.backend.go.lint.gofmt.rules.gofmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.generate_targets_from_go_mod": { + "description": "Generate `go_third_party_package` targets from `go_mod` target", + "documentation": null, + "input_gets": [ + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "GenerateTargetsFromGoModRequest", + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.generate_targets_from_go_mod", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_map_import_paths_by_module": { + "description": "Analyze and map Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)" + ], + "input_types": [ + "FirstPartyGoModuleImportPathsMappingsHook", + "AllTargets" + ], + "name": "pants.backend.go.target_type_rules.go_map_import_paths_by_module", + "output_type": "GoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.go_merge_import_paths_analysis": { + "description": "Analyze Go import paths for all modules.", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMappings, GoModuleImportPathsMappingsHook, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.go.target_type_rules.go_merge_import_paths_analysis", + "output_type": "AllGoModuleImportPathsMappings", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_dependencies": { + "description": "Infer dependencies for first-party Go packages", + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": [ + "InferGoPackageDependenciesRequest" + ], + "name": "pants.backend.go.target_type_rules.infer_go_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies": { + "description": "Infer dependencies for third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(GoBuildOptions, GoBuildOptionsFromTargetRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)" + ], + "input_types": [ + "InferGoThirdPartyPackageDependenciesRequest" + ], + "name": "pants.backend.go.target_type_rules.infer_go_third_party_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.target_type_rules.map_import_paths_to_packages": { + "description": "Map Go targets owned by module to import paths", + "documentation": null, + "input_gets": [], + "input_types": [ + "GoImportPathMappingRequest", + "AllGoModuleImportPathsMappings" + ], + "name": "pants.backend.go.target_type_rules.map_import_paths_to_packages", + "output_type": "GoModuleImportPathsMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.assemble_go_assembly_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "AssembleGoAssemblyFilesRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.assemble_go_assembly_files", + "output_type": "FallibleAssembleGoAssemblyFilesResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GenerateAssemblySymabisRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.assembly.generate_go_assembly_symabisfile", + "output_type": "FallibleGenerateAssemblySymabisResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary": { + "description": "Determine first-party package used by `go_binary` target", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "GoBinaryMainPackageRequest" + ], + "name": "pants.backend.go.util_rules.binary.determine_main_pkg_for_go_binary", + "output_type": "GoBinaryMainPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)" + ], + "input_types": [ + "InferGoBinaryMainDependencyRequest" + ], + "name": "pants.backend.go.util_rules.binary.infer_go_binary_main_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)" + ], + "input_types": [ + "GoBuildOptionsFromTargetRequest", + "GoRoot", + "GolangSubsystem", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.build_opts.go_extract_build_options_from_target", + "output_type": "GoBuildOptions", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.build_go_package": { + "description": "Compile with Go", + "documentation": null, + "input_gets": [ + "Get(FallibleBuiltGoPackage, BuildGoPackageRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(RenderedEmbedConfig, RenderEmbedConfigRequest, ..)", + "Get(GoCompileActionIdResult, GoCompileActionIdRequest, ..)", + "Get(ApplyCodeCoverageResult, ApplyCodeCoverageRequest, ..)", + "Get(CheckForGolangAssemblyResult, CheckForGolangAssemblyRequest, ..)", + "Get(CGoCompileResult, CGoCompileRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(FallibleGenerateAssemblySymabisResult, GenerateAssemblySymabisRequest, ..)", + "Get(FallibleProcessResult, GoSdkProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(FallibleAssembleGoAssemblyFilesResult, AssembleGoAssemblyFilesRequest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "BuildGoPackageRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.build_go_package", + "output_type": "FallibleBuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly": { + "description": null, + "documentation": "Return true if any of the given `s_files` look like it could be a Golang-format assembly\nlanguage file.\n\nThis is used by the cgo rules as a heuristic to determine if the user is passing Golang assembly\nformat instead of gcc assembly format.", + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CheckForGolangAssemblyRequest", + "SetupAsmCheckBinary" + ], + "name": "pants.backend.go.util_rules.build_pkg.check_for_golang_assembly", + "output_type": "CheckForGolangAssemblyResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.compute_compile_action_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)" + ], + "input_types": [ + "GoCompileActionIdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg.compute_compile_action_id", + "output_type": "GoCompileActionIdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.render_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg.render_embed_config", + "output_type": "RenderedEmbedConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.required_built_go_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuiltGoPackage" + ], + "name": "pants.backend.go.util_rules.build_pkg.required_built_go_package", + "output_type": "BuiltGoPackage", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.build_pkg.setup_golang_asm_check_binary", + "output_type": "SetupAsmCheckBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleBuildGoPackageRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.required_build_go_package_request", + "output_type": "BuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "_ResolveStdlibEmbedConfigRequest" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.resolve_go_stdlib_embed_config", + "output_type": "_ResolveStdlibEmbedConfigResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request": { + "description": "Set up Go compilation request", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleBuildGoPackageRequest, GoCodegenBuildRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(FallibleFirstPartyPkgDigest, FirstPartyPkgDigestRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(ThirdPartyPkgAnalysis, ThirdPartyPkgAnalysisRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModuleImportPathsMapping, GoImportPathMappingRequest, ..)", + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageTargetRequest, ..)" + ], + "input_types": [ + "BuildGoPackageTargetRequest", + "UnionMembership", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoStdLibPackages, GoStdLibPackagesRequest, ..)", + "Get(FallibleBuildGoPackageRequest, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(_ResolveStdlibEmbedConfigResult, _ResolveStdlibEmbedConfigRequest, ..)" + ], + "input_types": [ + "BuildGoPackageRequestForStdlibRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.build_pkg_target.setup_build_go_package_target_request_for_stdlib", + "output_type": "FallibleBuildGoPackageRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.cgo_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(CGoPkgConfigFlagsResult, CGoPkgConfigFlagsRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(BashBinary)", + "Get(CGoCompilerWrapperScript)", + "Get(SetupCompilerCmdResult, SetupCompilerCmdRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "CGoCompileRequest", + "GoRoot", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.cgo.cgo_compile_request", + "output_type": "CGoCompileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.check_compiler_supports_flag": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "CheckCompilerSupportsFlagRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.cgo.check_compiler_supports_flag", + "output_type": "CheckCompilerSupportsOptionResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.go.util_rules.cgo.make_cgo_compile_wrapper_script", + "output_type": "CGoCompilerWrapperScript", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo.setup_compiler_cmd": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CheckCompilerSupportsOptionResult, CheckCompilerSupportsFlagRequest, ..)" + ], + "input_types": [ + "SetupCompilerCmdRequest", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.cgo.setup_compiler_cmd", + "output_type": "SetupCompilerCmdResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "CGoBinaryPathRequest", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.cgo_binaries.find_cgo_binary_path", + "output_type": "BinaryPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CGoPkgConfigFlagsRequest" + ], + "name": "pants.backend.go.util_rules.cgo_pkgconfig.resolve_cgo_pkg_config_args", + "output_type": "CGoPkgConfigFlagsResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateCoverageSetupCodeRequest" + ], + "name": "pants.backend.go.util_rules.coverage.generate_go_coverage_setup_code", + "output_type": "GenerateCoverageSetupCodeResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(ApplyCodeCoverageToFileResult, ApplyCodeCoverageToFileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ApplyCodeCoverageRequest" + ], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage", + "output_type": "ApplyCodeCoverageResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ApplyCodeCoverageToFileRequest" + ], + "name": "pants.backend.go.util_rules.coverage.go_apply_code_coverage_to_file", + "output_type": "ApplyCodeCoverageToFileResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "RenderGoCoverageProfileToHtmlRequest" + ], + "name": "pants.backend.go.util_rules.coverage_html.render_go_coverage_profile_to_html", + "output_type": "RenderGoCoverageProfileToHtmlResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports": { + "description": "Merge Go coverage data", + "documentation": null, + "input_gets": [ + "Get(RenderGoCoverageReportResult, RenderGoCoverageReportRequest, ..)" + ], + "input_types": [ + "GoCoverageDataCollection" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_gather_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.coverage_output.go_render_coverage_report": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(RenderGoCoverageProfileToHtmlResult, RenderGoCoverageProfileToHtmlRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "RenderGoCoverageReportRequest", + "DistDir", + "GoTestSubsystem" + ], + "name": "pants.backend.go.util_rules.coverage_output.go_render_coverage_report", + "output_type": "RenderGoCoverageReportResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FirstPartyPkgImportPath, FirstPartyPkgImportPathRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgAnalysisRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.analyze_first_party_package", + "output_type": "FallibleFirstPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(GoModInfo, GoModInfoRequest, ..)" + ], + "input_types": [ + "FirstPartyPkgImportPathRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.compute_first_party_package_import_path", + "output_type": "FirstPartyPkgImportPath", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(FallibleFirstPartyPkgAnalysis, FirstPartyPkgAnalysisRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "FirstPartyPkgDigestRequest" + ], + "name": "pants.backend.go.util_rules.first_party_pkg.setup_first_party_pkg_digest", + "output_type": "FallibleFirstPartyPkgDigest", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(PathEnvironmentVariable)" + ], + "input_types": [ + "GolangSubsystem", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.go_bootstrap.resolve_go_bootstrap", + "output_type": "GoBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.determine_go_mod_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoModInfoRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.determine_go_mod_info", + "output_type": "GoModInfo", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets": { + "description": "Find all `go_mod` targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.go.util_rules.go_mod.find_all_go_mod_targets", + "output_type": "AllGoModTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, RawSpecs, ..)" + ], + "input_types": [ + "NearestAncestorGoModRequest" + ], + "name": "pants.backend.go.util_rules.go_mod.find_nearest_ancestor_go_mod", + "output_type": "NearestAncestorGoModResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.go_mod.find_owning_go_mod": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(NearestAncestorGoModResult, NearestAncestorGoModRequest, ..)", + "Get(GoBinaryMainPackage, GoBinaryMainPackageRequest, ..)", + "Get(OwningGoMod, OwningGoModRequest, ..)", + "Get(Address, AddressInput, ..)" + ], + "input_types": [ + "OwningGoModRequest", + "AllGoModTargets" + ], + "name": "pants.backend.go.util_rules.go_mod.find_owning_go_mod", + "output_type": "OwningGoMod", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.goroot.setup_goroot": { + "description": "Find Go binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "GolangSubsystem", + "GoBootstrap", + "EnvironmentTarget" + ], + "name": "pants.backend.go.util_rules.goroot.setup_goroot", + "output_type": "GoRoot", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltGoPackage, BuildGoPackageRequestForStdlibRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SdkImplicitLinkerDependenciesHook" + ], + "name": "pants.backend.go.util_rules.implicit_linker_deps.provide_sdk_implicit_linker_dependencies", + "output_type": "ImplicitLinkerDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages": { + "description": "Analyze Go standard library packages.", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoStdLibPackagesRequest" + ], + "name": "pants.backend.go.util_rules.import_analysis.analyze_go_stdlib_packages", + "output_type": "GoStdLibPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.import_config.generate_import_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ImportConfigRequest" + ], + "name": "pants.backend.go.util_rules.import_config.generate_import_config", + "output_type": "ImportConfig", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.link_go_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ImplicitLinkerDependencies, ImplicitLinkerDependenciesHook, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(GoSdkToolIDResult, GoSdkToolIDRequest, ..)", + "Get(ImportConfig, ImportConfigRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "LinkGoBinaryRequest", + "LinkerSetup", + "UnionMembership" + ], + "name": "pants.backend.go.util_rules.link.link_go_binary", + "output_type": "LinkedGoBinary", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.link.setup_go_linker": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryPath, CGoBinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "BashBinary", + "EnvironmentAware" + ], + "name": "pants.backend.go.util_rules.link.setup_go_linker", + "output_type": "LinkerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.pkg_analyzer.setup_go_package_analyzer", + "output_type": "PackageAnalyzerSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.compute_go_tool_id": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "GoSdkToolIDRequest" + ], + "name": "pants.backend.go.util_rules.sdk.compute_go_tool_id", + "output_type": "GoSdkToolIDResult", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.go_sdk_invoke_setup", + "output_type": "GoSdkRunSetup", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.sdk.setup_go_sdk_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "GoSdkProcess", + "GoSdkRunSetup", + "BashBinary", + "EnvironmentAware", + "GoRoot" + ], + "name": "pants.backend.go.util_rules.sdk.setup_go_sdk_process", + "output_type": "Process", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.tests_analysis.generate_testmain": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "GenerateTestMainRequest" + ], + "name": "pants.backend.go.util_rules.tests_analysis.generate_testmain", + "output_type": "GeneratedTestMain", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleThirdPartyPkgAnalysis, AnalyzeThirdPartyPackageRequest, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyModuleRequest", + "PackageAnalyzerSetup" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_module", + "output_type": "AnalyzedThirdPartyModule", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(LoadedGoBinary, LoadedGoBinaryRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "AnalyzeThirdPartyPackageRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_go_third_party_package", + "output_type": "FallibleThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, GoSdkProcess, ..)" + ], + "input_types": [ + "ModuleDescriptorsRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.analyze_module_dependencies", + "output_type": "ModuleDescriptors", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages": { + "description": "Download and analyze all third-party Go packages", + "documentation": null, + "input_gets": [ + "Get(ModuleDescriptors, ModuleDescriptorsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(AnalyzedThirdPartyModule, AnalyzeThirdPartyModuleRequest, ..)" + ], + "input_types": [ + "AllThirdPartyPackagesRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.download_and_analyze_third_party_packages", + "output_type": "AllThirdPartyPackages", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.go.util_rules.third_party_pkg.extract_package_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AllThirdPartyPackages, AllThirdPartyPackagesRequest, ..)" + ], + "input_types": [ + "ThirdPartyPkgAnalysisRequest" + ], + "name": "pants.backend.go.util_rules.third_party_pkg.extract_package_info", + "output_type": "ThirdPartyPkgAnalysis", + "provider": "pants.backend.experimental.go" + }, + "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function": { + "description": "Create Python Google Cloud Function", + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, BuildPythonFaaSRequest, ..)" + ], + "input_types": [ + "PythonGoogleCloudFunctionFieldSet" + ], + "name": "pants.backend.google_cloud_function.python.rules.package_python_google_cloud_function", + "output_type": "BuiltPackage", + "provider": "pants.backend.google_cloud_function.python" + }, + "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "AllHelmChartTargets" + ], + "name": "pants.backend.helm.dependency_inference.chart.first_party_helm_chart_mapping", + "output_type": "FirstPartyHelmChartMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata": { + "description": "Inferring Helm chart dependencies", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)" + ], + "input_types": [ + "InferHelmChartDependenciesRequest", + "FirstPartyHelmChartMapping", + "ThirdPartyHelmArtifactMapping", + "HelmSubsystem" + ], + "name": "pants.backend.helm.dependency_inference.chart.infer_chart_dependencies_via_metadata", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.analyse_deployment": { + "description": "Analyse Helm deployment", + "documentation": null, + "input_gets": [ + "Get(RenderedHelmFiles, HelmDeploymentRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ParsedKubeManifest, ParseKubeManifestRequest, ..)" + ], + "input_types": [ + "AnalyseHelmDeploymentRequest" + ], + "name": "pants.backend.helm.dependency_inference.deployment.analyse_deployment", + "output_type": "HelmDeploymentReport", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmDeploymentReport, AnalyseHelmDeploymentRequest, ..)", + "Get(MaybeAddress, AddressInput, ..)" + ], + "input_types": [ + "FirstPartyHelmDeploymentMappingRequest", + "AllDockerImageTargets" + ], + "name": "pants.backend.helm.dependency_inference.deployment.first_party_helm_deployment_mapping", + "output_type": "FirstPartyHelmDeploymentMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies": { + "description": "Find the dependencies needed by a Helm deployment", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)" + ], + "input_types": [ + "InferHelmDeploymentDependenciesRequest" + ], + "name": "pants.backend.helm.dependency_inference.deployment.inject_deployment_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)" + ], + "input_types": [ + "InferHelmUnitTestChartDependencyRequest", + "AllHelmChartTargets", + "AllAssetTargetsByPath" + ], + "name": "pants.backend.helm.dependency_inference.unittest.infer_chart_dependency_into_unittests", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.deploy.run_helm_deploy": { + "description": "Run Helm deploy process", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmPostRenderer, HelmDeploymentPostRendererRequest, ..)", + "Get(InteractiveProcess, HelmDeploymentRequest, ..)" + ], + "input_types": [ + "DeployHelmDeploymentFieldSet", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.deploy.run_helm_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.partition_helm_lint": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)" + ], + "input_types": [ + "PartitionRequest" + ], + "name": "pants.backend.helm.goals.lint.partition_helm_lint", + "output_type": "Partitions", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.lint.run_helm_lint": { + "description": "Lint Helm charts", + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, HelmProcess, ..)" + ], + "input_types": [ + "Batch", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.lint.run_helm_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.package.run_helm_package": { + "description": "Package Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmPackageFieldSet" + ], + "name": "pants.backend.helm.goals.package.run_helm_package", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.publish.publish_helm_chart": { + "description": "Push Helm chart to OCI registries", + "documentation": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)" + ], + "input_types": [ + "PublishHelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.publish.publish_helm_chart", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.goals.tailor.find_putative_helm_targets": { + "description": "Determine candidate Helm chart targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeHelmTargetsRequest", + "AllOwnedSources", + "HelmSubsystem" + ], + "name": "pants.backend.helm.goals.tailor.find_putative_helm_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.resolved_helm_artifact": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmArtifact", + "HelmSubsystem" + ], + "name": "pants.backend.helm.resolve.artifacts.resolved_helm_artifact", + "output_type": "ResolvedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedHelmArtifact, HelmArtifact, ..)" + ], + "input_types": [ + "AllHelmArtifactTargets" + ], + "name": "pants.backend.helm.resolve.artifacts.third_party_helm_artifact_mapping", + "output_type": "ThirdPartyHelmArtifactMapping", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.resolve.fetch.fetch_helm_artifact": { + "description": "Fetch Helm artifact", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ResolvedHelmArtifact, HelmArtifact, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "FetchHelmArtifactRequest" + ], + "name": "pants.backend.helm.resolve.fetch.fetch_helm_artifact", + "output_type": "FetchedHelmArtifact", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "HelmKubeParserSubsystem" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.build_k8s_parser_tool", + "output_type": "_HelmKubeParserTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest": { + "description": "Parse Kubernetes resource manifest", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseKubeManifestRequest", + "_HelmKubeParserTool" + ], + "name": "pants.backend.helm.subsystems.k8s_parser.parse_kube_manifest", + "output_type": "ParsedKubeManifest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher": { + "description": "Configure Helm post-renderer", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "SetupHelmPostRenderer", + "_HelmPostRendererTool", + "CatBinary" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_launcher", + "output_type": "HelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool": { + "description": "Setup Helm post renderer binaries", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "HelmPostRendererSubsystem" + ], + "name": "pants.backend.helm.subsystems.post_renderer.setup_post_renderer_tool", + "output_type": "_HelmPostRendererTool", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HelmUnitTestPluginBinding", + "HelmUnitTestSubsystem", + "Platform" + ], + "name": "pants.backend.helm.subsystems.unittest.download_unittest_plugin_request", + "output_type": "ExternalHelmPluginRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_artifact_targets", + "output_type": "AllHelmArtifactTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_chart_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_chart_targets", + "output_type": "AllHelmChartTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_deployment_targets", + "output_type": "AllHelmDeploymentTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.target_types.all_helm_unittest_test_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.helm.target_types.all_helm_unittest_test_targets", + "output_type": "AllHelmUnitTestTestTargets", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmUnitTestSetup, HelmUnitTestSetupRequest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "HelmUnitTestFieldSet" + ], + "name": "pants.backend.helm.test.unittest.generate_helm_unittest_snapshots", + "output_type": "GenerateSnapshotsResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.run_helm_unittest": { + "description": "Run Helm Unittest", + "documentation": null, + "input_gets": [ + "Get(HelmUnitTestSetup, HelmUnitTestSetupRequest, ..)", + "Get(FallibleProcessResult, HelmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.test.unittest.run_helm_unittest", + "output_type": "TestResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.test.unittest.setup_helm_unittest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "HelmUnitTestSetupRequest", + "HelmUnitTestSubsystem" + ], + "name": "pants.backend.helm.test.unittest.setup_helm_unittest", + "output_type": "HelmUnitTestSetup", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.create_chart_from_artifact": { + "description": "Compile third parth Helm chart", + "documentation": null, + "input_gets": [ + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "FetchedHelmArtifact" + ], + "name": "pants.backend.helm.util_rules.chart.create_chart_from_artifact", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.find_chart_for_deployment": { + "description": "Find Helm deployment's chart", + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)" + ], + "input_types": [ + "FindHelmDeploymentChart" + ], + "name": "pants.backend.helm.util_rules.chart.find_chart_for_deployment", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart.get_helm_chart": { + "description": "Compile Helm chart", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HelmChartSourceFiles, HelmChartSourceFilesRequest, ..)", + "Get(HelmChartMetadata, HelmChartMetaSourceField, ..)", + "Get(HelmChart, HelmChartRequest, ..)", + "Get(HelmChart, FetchHelmArtifactRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, HelmChartMetadata, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartRequest", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.chart.get_helm_chart", + "output_type": "HelmChart", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParseHelmChartMetadataDigest" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_digest", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(HelmChartMetadata, ParseHelmChartMetadataDigest, ..)" + ], + "input_types": [ + "HelmChartMetaSourceField" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.parse_chart_metadata_from_field", + "output_type": "HelmChartMetadata", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "HelmChartMetadata" + ], + "name": "pants.backend.helm.util_rules.chart_metadata.render_chart_metadata", + "output_type": "Digest", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment": { + "description": "Prepare Helm deployment post-renderer", + "documentation": null, + "input_gets": [ + "Get(FirstPartyHelmDeploymentMapping, FirstPartyHelmDeploymentMappingRequest, ..)", + "Get(DockerBuildContext, DockerBuildContextRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(DockerImageTags, DockerImageTagsRequest, ..)" + ], + "input_types": [ + "HelmDeploymentPostRendererRequest", + "UnionMembership", + "DockerOptions" + ], + "name": "pants.backend.helm.util_rules.post_renderer.prepare_post_renderer_for_helm_deployment", + "output_type": "SetupHelmPostRenderer", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, HelmProcess, ..)" + ], + "input_types": [ + "_HelmDeploymentProcessWrapper" + ], + "name": "pants.backend.helm.util_rules.renderer.materialize_deployment_process_wrapper_into_interactive_process", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.render_helm_chart": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChart, HelmChartRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "RenderHelmChartRequest" + ], + "name": "pants.backend.helm.util_rules.renderer.render_helm_chart", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.run_renderer": { + "description": "Render Helm deployment", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, HelmProcess, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "_HelmDeploymentProcessWrapper" + ], + "name": "pants.backend.helm.util_rules.renderer.run_renderer", + "output_type": "RenderedHelmFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process": { + "description": "Prepare Helm deployment renderer", + "documentation": null, + "input_gets": [ + "Get(HelmChart, FindHelmDeploymentChart, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "HelmDeploymentRequest" + ], + "name": "pants.backend.helm.util_rules.renderer.setup_render_helm_deployment_process", + "output_type": "_HelmDeploymentProcessWrapper", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.find_chart_source_root": { + "description": "Detect Helm chart source root", + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "HelmChartRootRequest" + ], + "name": "pants.backend.helm.util_rules.sources.find_chart_source_root", + "output_type": "HelmChartRoot", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.sources.get_helm_source_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmChartRoot, HelmChartRootRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "HelmChartSourceFilesRequest" + ], + "name": "pants.backend.helm.util_rules.sources.get_helm_source_files", + "output_type": "HelmChartSourceFiles", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.all_helm_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HelmPlugin, ExternalHelmPluginBinding, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.helm.util_rules.tool.all_helm_plugins", + "output_type": "HelmPlugins", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.download_external_helm_plugin": { + "description": "Download external Helm plugin", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "ExternalHelmPluginRequest" + ], + "name": "pants.backend.helm.util_rules.tool.download_external_helm_plugin", + "output_type": "HelmPlugin", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.helm_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "HelmProcess", + "HelmBinary", + "HelmSubsystem" + ], + "name": "pants.backend.helm.util_rules.tool.helm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.helm.util_rules.tool.setup_helm": { + "description": "Download and configure Helm", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "HelmSubsystem", + "HelmPlugins", + "Platform" + ], + "name": "pants.backend.helm.util_rules.tool.setup_helm", + "output_type": "HelmBinary", + "provider": "pants.backend.experimental.helm" + }, + "pants.backend.java.bsp.rules.bsp_java_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_java_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "JavaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.bsp_java_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_javac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleJavacOptionsResult, HandleJavacOptionsRequest, ..)" + ], + "input_types": [ + "JavacOptionsParams" + ], + "name": "pants.backend.java.bsp.rules.bsp_javac_options_request", + "output_type": "JavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.bsp_resolve_java_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaBSPBuildTargetsMetadataRequest" + ], + "name": "pants.backend.java.bsp.rules.bsp_resolve_java_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.bsp.rules.handle_bsp_java_options_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "HandleJavacOptionsRequest", + "BuildRoot" + ], + "name": "pants.backend.java.bsp.rules.handle_bsp_java_options_request", + "output_type": "HandleJavacOptionsResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.compile.javac.compile_java_source": { + "description": "Compile with javac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "BashBinary", + "JavacSubsystem", + "ZipBinary", + "JvmSubsystem", + "CompileJavaSourceRequest" + ], + "name": "pants.backend.java.compile.javac.compile_java_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "JavaParserCompiledClassfiles", + "InternalJdk", + "JavaSourceDependencyAnalysisRequest" + ], + "name": "pants.backend.java.dependency_inference.java_parser.analyze_java_source_dependencies", + "output_type": "FallibleJavaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JavaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.java.dependency_inference.java_parser.build_processors", + "output_type": "JavaParserCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaParserToolLockfileSentinel" + ], + "name": "pants.backend.java.dependency_inference.java_parser.generate_java_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SourceFiles" + ], + "name": "pants.backend.java.dependency_inference.java_parser.make_analysis_request_from_source_files", + "output_type": "JavaSourceDependencyAnalysisRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleJavaSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.java.dependency_inference.java_parser.resolve_fallible_result_to_analysis", + "output_type": "JavaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis": { + "description": "Inferring Java dependencies and exports by source analysis", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(JavaSourceDependencyAnalysis, JavaSourceDependencyAnalysisRequest, ..)" + ], + "input_types": [ + "JavaInferredDependenciesAndExportsRequest", + "JavaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_and_exports_via_source_analysis", + "output_type": "JavaInferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis": { + "description": "Inferring Java dependencies by source analysis", + "documentation": null, + "input_gets": [ + "Get(JavaInferredDependencies, JavaInferredDependenciesAndExportsRequest, ..)" + ], + "input_types": [ + "InferJavaSourceDependencies" + ], + "name": "pants.backend.java.dependency_inference.rules.infer_java_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets": { + "description": "Find all Java targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.find_all_java_targets", + "output_type": "AllJavaTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols": { + "description": "Map all first party Java targets to their packages", + "documentation": null, + "input_gets": [ + "Get(JavaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyJavaTargetsMappingRequest", + "AllJavaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.java.dependency_inference.symbol_mapper.map_first_party_java_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.check.javac_check": { + "description": "Check javac compilation", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "JavacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.java.goals.check.javac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.goals.tailor.find_putative_targets": { + "description": "Determine candidate Java targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeJavaTargetsRequest", + "AllOwnedSources", + "JavacSubsystem" + ], + "name": "pants.backend.java.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoogleJavaFormatToolLockfileSentinel", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.backend.java.lint.google_java_format.rules.generate_google_java_format_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt": { + "description": "Format with Google Java Format", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, GoogleJavaFormatToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "GoogleJavaFormatSubsystem", + "InternalJdk" + ], + "name": "pants.backend.java.lint.google_java_format.rules.google_java_format_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OwningNodePackage, OwningNodePackageRequest, ..)", + "Get(InferenceMetadata, PackageJsonSourceField, ..)", + "Get(NativeParsedJavascriptDependencies, NativeDependenciesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(NodePackageCandidateMap, RequestNodePackagesCandidateMap, ..)" + ], + "input_types": [ + "InferJSDependenciesRequest", + "NodeJSInfer" + ], + "name": "pants.backend.javascript.dependency_inference.rules.infer_js_source_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PackageJsonEntryPoints, PackageJsonSourceField, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferNodePackageDependenciesRequest", + "NodeJSInfer" + ], + "name": "pants.backend.javascript.dependency_inference.rules.infer_node_package_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwningNodePackage, OwningNodePackageRequest, ..)" + ], + "input_types": [ + "RequestNodePackagesCandidateMap", + "FirstPartyNodePackageTargets" + ], + "name": "pants.backend.javascript.dependency_inference.rules.map_candidate_node_packages", + "output_type": "NodePackageCandidateMap", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PackageJsonImports" + ], + "name": "pants.backend.javascript.dependency_inference.rules.prepare_inference_metadata", + "output_type": "InferenceMetadata", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InstalledNodePackage, InstalledNodePackageRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "InstalledNodePackageRequest" + ], + "name": "pants.backend.javascript.install_node_package.add_sources_to_installed_node_package", + "output_type": "InstalledNodePackageWithSource", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.install_node_package.install_node_packages_for_address": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(NodeJsProjectEnvironment, NodeJSProjectEnvironmentRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InstalledNodePackageWithSource, InstalledNodePackageRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, NodeJsProjectEnvironmentProcess, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "InstalledNodePackageRequest", + "UnionMembership" + ], + "name": "pants.backend.javascript.install_node_package.install_node_packages_for_address", + "output_type": "InstalledNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.nodejs_project.find_node_js_projects": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllPackageJson", + "PnpmWorkspaces", + "NodeJS", + "UserChosenNodeJSResolveAliases" + ], + "name": "pants.backend.javascript.nodejs_project.find_node_js_projects", + "output_type": "AllNodeJSProjects", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment": { + "description": "Assembling nodejs project environment", + "documentation": null, + "input_gets": [ + "Get(ChosenNodeResolve, RequestNodeResolve, ..)", + "Get(OwningNodePackage, OwningNodePackageRequest, ..)" + ], + "input_types": [ + "NodeJSProjectEnvironmentRequest" + ], + "name": "pants.backend.javascript.nodejs_project_environment.get_nodejs_environment", + "output_type": "NodeJsProjectEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, NodeJSToolProcess, ..)" + ], + "input_types": [ + "NodeJsProjectEnvironmentProcess" + ], + "name": "pants.backend.javascript.nodejs_project_environment.setup_nodejs_project_environment_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.all_first_party_node_package_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.javascript.package_json.all_first_party_node_package_targets", + "output_type": "FirstPartyNodePackageTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.all_package_json": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedTargetGeneratorRequests, ResolveAllTargetGeneratorRequests, ..)", + "Get(PackageJsonForGlobs, PathGlobs, ..)" + ], + "input_types": [], + "name": "pants.backend.javascript.package_json.all_package_json", + "output_type": "AllPackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.all_package_json_names": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllPackageJson" + ], + "name": "pants.backend.javascript.package_json.all_package_json_names", + "output_type": "AllPackageJsonNames", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.find_owning_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "OwningNodePackageRequest" + ], + "name": "pants.backend.javascript.package_json.find_owning_package", + "output_type": "OwningNodePackage", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.generate_node_package_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PackageJson, PackageJsonSourceField, ..)" + ], + "input_types": [ + "GenerateNodePackageTargets", + "UnionMembership", + "AllPackageJsonNames" + ], + "name": "pants.backend.javascript.package_json.generate_node_package_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.package_json_for_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PackageJsonForGlobs, PathGlobs, ..)" + ], + "input_types": [ + "PackageJsonSourceField" + ], + "name": "pants.backend.javascript.package_json.package_json_for_source", + "output_type": "PackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.parse_package_json": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "FileContent" + ], + "name": "pants.backend.javascript.package_json.parse_package_json", + "output_type": "PackageJson", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.pnpm_workspace_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "AllPackageJson" + ], + "name": "pants.backend.javascript.package_json.pnpm_workspace_files", + "output_type": "PnpmWorkspaces", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.read_package_jsons": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(PackageJson, FileContent, ..)" + ], + "input_types": [ + "PathGlobs" + ], + "name": "pants.backend.javascript.package_json.read_package_jsons", + "output_type": "PackageJsonForGlobs", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.script_entrypoints_for_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PackageJson, PackageJsonSourceField, ..)" + ], + "input_types": [ + "PackageJsonSourceField" + ], + "name": "pants.backend.javascript.package_json.script_entrypoints_for_source", + "output_type": "PackageJsonEntryPoints", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.package_json.subpath_imports_for_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PackageJson, PackageJsonSourceField, ..)" + ], + "input_types": [ + "PackageJsonSourceField" + ], + "name": "pants.backend.javascript.package_json.subpath_imports_for_source", + "output_type": "PackageJsonImports", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.resolve.resolve_for_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(OwningNodePackage, OwningNodePackageRequest, ..)" + ], + "input_types": [ + "RequestNodeResolve", + "AllNodeJSProjects" + ], + "name": "pants.backend.javascript.resolve.resolve_for_package", + "output_type": "ChosenNodeResolve", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.resolve.resolve_to_first_party_node_package": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "NodeJSProjectResolves", + "FirstPartyNodePackageTargets" + ], + "name": "pants.backend.javascript.resolve.resolve_to_first_party_node_package", + "output_type": "FirstPartyNodePackageResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.resolve.resolve_to_projects": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllNodeJSProjects", + "UserChosenNodeJSResolveAliases" + ], + "name": "pants.backend.javascript.resolve.resolve_to_projects", + "output_type": "NodeJSProjectResolves", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries": { + "description": "Finding Node.js distribution binaries.", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "NodeJS", + "Platform", + "_BinaryPathsPerVersion" + ], + "name": "pants.backend.javascript.subsystems.nodejs.determine_nodejs_binaries", + "output_type": "NodeJSBinaries", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version": { + "description": "Testing for Node.js binaries.", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "NodeJSBootstrap" + ], + "name": "pants.backend.javascript.subsystems.nodejs.get_valid_nodejs_paths_by_version", + "output_type": "_BinaryPathsPerVersion", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.node_process_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "NodeJSBinaries", + "EnvironmentAware" + ], + "name": "pants.backend.javascript.subsystems.nodejs.node_process_environment", + "output_type": "NodeJSProcessEnvironment", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(VersionManagerSearchPaths, VersionManagerSearchPathsRequest, ..)", + "Get(PathEnvironmentVariable)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.backend.javascript.subsystems.nodejs.nodejs_bootstrap", + "output_type": "NodeJSBootstrap", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool": { + "description": "Preparing Corepack managed tool.", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CorepackToolRequest", + "NodeJSProcessEnvironment", + "NodeJS" + ], + "name": "pants.backend.javascript.subsystems.nodejs.prepare_corepack_tool", + "output_type": "CorepackToolDigest", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CorepackToolDigest, CorepackToolRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "NodeJSToolProcess", + "NodeJSProcessEnvironment" + ], + "name": "pants.backend.javascript.subsystems.nodejs.setup_node_tool_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "NodeJS" + ], + "name": "pants.backend.javascript.subsystems.nodejs.user_chosen_resolve_aliases", + "output_type": "UserChosenNodeJSResolveAliases", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(NodeJS)", + "Get(Process, NodeJSToolProcess, ..)", + "Get(NodeJSProjectResolves)", + "Get(FirstPartyNodePackageResolves)", + "Get(InstalledNodePackage, InstalledNodePackageRequest, ..)", + "Get(Process, NodeJsProjectEnvironmentProcess, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "NodeJSToolRequest" + ], + "name": "pants.backend.javascript.subsystems.nodejs_tool.prepare_tool_process", + "output_type": "Process", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source": { + "description": "Compile with kotlinc", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(KotlincPluginTargetsForTarget, KotlincPluginsForTargetRequest, ..)", + "Get(KotlincPlugins, KotlincPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinSubsystem", + "KotlincSubsystem", + "CompileKotlinSourceRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc.compile_kotlin_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlincPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.add_resolve_name_to_plugin_request", + "output_type": "KotlincPluginsForTargetRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.all_kotlinc_plugin_targets", + "output_type": "AllKotlincPluginTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "KotlincPluginsRequest" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.fetch_kotlinc_plugins", + "output_type": "KotlincPlugins", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "KotlincPluginsForTargetRequest", + "AllKotlincPluginTargets", + "JvmSubsystem", + "KotlincSubsystem" + ], + "name": "pants.backend.kotlin.compile.kotlinc_plugins.resolve_kotlinc_plugins_for_target", + "output_type": "KotlincPluginTargetsForTarget", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "KotlinParserCompiledClassfiles", + "SourceFiles" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.analyze_kotlin_source_dependencies", + "output_type": "FallibleKotlinSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinParserToolLockfileSentinel" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.generate_kotlin_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleKotlinSourceDependencyAnalysisResult", + "KeepSandboxes" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.resolve_fallible_result_to_analysis", + "output_type": "KotlinSourceDependencyAnalysis", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KotlinParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.kotlin.dependency_inference.kotlin_parser.setup_kotlin_parser_classfiles", + "output_type": "KotlinParserCompiledClassfiles", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis": { + "description": "Inferring Kotlin dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferKotlinSourceDependencies", + "KotlinInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency": { + "description": "Infer dependency on Kotlin runtime artifacts for Kotlin targets.", + "documentation": null, + "input_gets": [ + "Get(KotlinRuntimeForResolve, KotlinRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferKotlinRuntimeDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.infer_kotlin_stdlib_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.rules.resolve_kotlin_runtime_for_resolve", + "output_type": "KotlinRuntimeForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets": { + "description": "Find all Kotlin targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.find_all_kotlin_targets", + "output_type": "AllKotlinTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols": { + "description": "Map all first party Kotlin targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(KotlinSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyKotlinTargetsMappingRequest", + "AllKotlinTargets", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.dependency_inference.symbol_mapper.map_first_party_kotlin_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.check.kotlinc_check": { + "description": "Check compilation for Kotlin", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "KotlincCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.kotlin.goals.check.kotlinc_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.goals.tailor.find_putative_targets": { + "description": "Determine candidate Kotlin targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeKotlinTargetsRequest", + "AllOwnedSources", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KtlintToolLockfileSentinel", + "KtlintSubsystem" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.generate_ktlint_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt": { + "description": "Format with Ktlint", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, KtlintToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "KtlintSubsystem", + "InternalJdk" + ], + "name": "pants.backend.kotlin.lint.ktlint.rules.ktlint_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency": { + "description": "Infer dependency on Kotlin Junit support artifact.", + "documentation": null, + "input_gets": [ + "Get(KotlinJunitLibrariesForResolve, KotlinJunitLibrariesForResolveRequest, ..)" + ], + "input_types": [ + "InferKotlinJunitTestDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.infer_kotlin_junit_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinJunitLibrariesForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "KotlinSubsystem" + ], + "name": "pants.backend.kotlin.test.junit.resolve_kotlin_junit_libraries_for_resolve", + "output_type": "KotlinJunitLibrariesForResolve", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferOpenApiDocumentDependenciesRequest" + ], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_document_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferOpenApiSourceDependenciesRequest" + ], + "name": "pants.backend.openapi.dependency_inference.infer_openapi_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.dependency_inference.parse_openapi_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "ParseOpenApiSources" + ], + "name": "pants.backend.openapi.dependency_inference.parse_openapi_sources", + "output_type": "OpenApiDependencies", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.goals.tailor.find_putative_targets": { + "description": "Determine candidate OpenAPI targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(OpenApiDependencies, ParseOpenApiSources, ..)" + ], + "input_types": [ + "PutativeOpenApiTargetsRequest", + "AllOwnedSources", + "OpenApiSubsystem" + ], + "name": "pants.backend.openapi.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.openapi" + }, + "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format": { + "description": "Format with openapi-format", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, NodeJSToolRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "OpenApiFormatSubsystem" + ], + "name": "pants.backend.openapi.lint.openapi_format.rules.run_openapi_format", + "output_type": "FixResult", + "provider": "pants.backend.experimental.openapi.lint.openapi_format" + }, + "pants.backend.openapi.lint.spectral.rules.run_spectral": { + "description": "Lint with Spectral", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, NodeJSToolRequest, ..)" + ], + "input_types": [ + "Batch", + "SpectralSubsystem" + ], + "name": "pants.backend.openapi.lint.spectral.rules.run_spectral", + "output_type": "LintResult", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateFromPantsRequirementsRequest", + "UnionMembership" + ], + "name": "pants.backend.plugin_development.pants_requirements.generate_from_pants_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.plugin_development" + }, + "pants.backend.project_info.count_loc.count_loc": { + "description": "`count-loc` goal", + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "Console", + "SuccinctCodeCounter", + "SpecsPaths", + "Platform" + ], + "name": "pants.backend.project_info.count_loc.count_loc", + "output_type": "CountLinesOfCode", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependencies.dependencies": { + "description": "`dependencies` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "Console", + "Addresses", + "DependenciesSubsystem" + ], + "name": "pants.backend.project_info.dependencies.dependencies", + "output_type": "Dependencies", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.dependents_goal": { + "description": "`dependents` goal", + "documentation": null, + "input_gets": [ + "Get(Dependents, DependentsRequest, ..)" + ], + "input_types": [ + "Addresses", + "DependentsSubsystem", + "Console" + ], + "name": "pants.backend.project_info.dependents.dependents_goal", + "output_type": "DependentsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.find_dependents": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependentsRequest", + "AddressToDependents" + ], + "name": "pants.backend.project_info.dependents.find_dependents", + "output_type": "Dependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.dependents.map_addresses_to_dependents": { + "description": "Map all targets to their dependents", + "documentation": null, + "input_gets": [ + "Get(Addresses, DependenciesRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.backend.project_info.dependents.map_addresses_to_dependents", + "output_type": "AddressToDependents", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filedeps.file_deps": { + "description": "`filedeps` goal", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(UnexpandedTargets, Addresses, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)" + ], + "input_types": [ + "Console", + "FiledepsSubsystem", + "BuildRoot", + "Addresses" + ], + "name": "pants.backend.project_info.filedeps.file_deps", + "output_type": "Filedeps", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.filter_targets.filter_targets": { + "description": "`filter` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Addresses", + "FilterSubsystem", + "Console" + ], + "name": "pants.backend.project_info.filter_targets.filter_targets", + "output_type": "FilterGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_roots.list_roots": { + "description": "`roots` goal", + "documentation": null, + "input_gets": [], + "input_types": [ + "Console", + "RootsSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.project_info.list_roots.list_roots", + "output_type": "Roots", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.list_targets.list_targets": { + "description": "`list` goal", + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)" + ], + "input_types": [ + "Addresses", + "ListSubsystem", + "Console" + ], + "name": "pants.backend.project_info.list_targets.list_targets", + "output_type": "List", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.get_paths_between_root_and_destination": { + "description": "Get paths between root and destination.", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Targets, DependenciesRequest, ..)" + ], + "input_types": [ + "RootDestinationPair" + ], + "name": "pants.backend.project_info.paths.get_paths_between_root_and_destination", + "output_type": "SpecsPaths", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.get_paths_between_root_and_destinations": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SpecsPaths, RootDestinationPair, ..)" + ], + "input_types": [ + "RootDestinationsPair" + ], + "name": "pants.backend.project_info.paths.get_paths_between_root_and_destinations", + "output_type": "SpecsPathsCollection", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.paths.paths": { + "description": "`paths` goal", + "documentation": null, + "input_gets": [ + "Get(Targets, Specs, ..)", + "Get(SpecsPathsCollection, RootDestinationsPair, ..)" + ], + "input_types": [ + "Console", + "PathsSubsystem" + ], + "name": "pants.backend.project_info.paths.paths", + "output_type": "PathsGoal", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.get_target_data": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(OptionalAddressFamily, AddressFamilyDir, ..)", + "Get(DependenciesRuleApplication, DependenciesRuleApplicationRequest, ..)" + ], + "input_types": [ + "UnexpandedTargets", + "PeekSubsystem" + ], + "name": "pants.backend.project_info.peek.get_target_data", + "output_type": "TargetDatas", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.peek.peek": { + "description": "`peek` goal", + "documentation": null, + "input_gets": [ + "Get(TargetDatas, UnexpandedTargets, ..)" + ], + "input_types": [ + "Console", + "PeekSubsystem", + "UnexpandedTargets" + ], + "name": "pants.backend.project_info.peek.peek", + "output_type": "Peek", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.lint_with_regex_patterns": { + "description": "Lint with regex patterns", + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "Batch", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.lint_with_regex_patterns", + "output_type": "LintResult", + "provider": "pants.backend.project_info" + }, + "pants.backend.project_info.regex_lint.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "RegexLintSubsystem" + ], + "name": "pants.backend.project_info.regex_lint.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.project_info" + }, + "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects": { + "description": "Find all Python targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.find_all_python_projects", + "output_type": "AllPythonTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules": { + "description": "Creating map of first party Python targets to Python modules", + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "FirstPartyPythonTargetsMappingMarker", + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_first_party_python_targets_to_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_module_to_address": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonModuleOwnersRequest", + "FirstPartyPythonModuleMapping", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_module_to_address", + "output_type": "PythonModuleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses": { + "description": "Creating map of third party targets to Python modules", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllPythonTargets", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.map_third_party_modules_to_addresses", + "output_type": "ThirdPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FirstPartyPythonMappingImpl, FirstPartyPythonMappingImplMarker, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.backend.python.dependency_inference.module_mapper.merge_first_party_module_mappings", + "output_type": "FirstPartyPythonModuleMapping", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(NativeParsedPythonDependencies, NativeDependenciesRequest, ..)" + ], + "input_types": [ + "ParsePythonDependenciesRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.parse_python_dependencies.parse_python_dependencies", + "output_type": "ParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "UnownedImportPossibleOwnerRequest", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.find_other_owners_for_unowned_import", + "output_type": "UnownedImportPossibleOwners", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies": { + "description": "Inferring dependencies on `conftest.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferConftestDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_conftest_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source": { + "description": "Inferring Python dependencies by analyzing source", + "documentation": null, + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "InferPythonImportDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_dependencies_via_source", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies": { + "description": "Inferring dependencies on `__init__.py` files", + "documentation": null, + "input_gets": [ + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Owners, OwnersRequest, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "InferInitDependencies", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.dependency_inference.rules.infer_python_init_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies": { + "description": null, + "documentation": "Find the owning targets for the parsed dependencies.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)", + "Get(AllAssetTargetsByPath)" + ], + "input_types": [ + "ResolvedParsedPythonDependenciesRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.dependency_inference.rules.resolve_parsed_dependencies", + "output_type": "ResolvedParsedPythonDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points": { + "description": "Find all `python_distribution` targets with `stevedore_namespace` entry_points", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_all_python_distributions_with_any_stevedore_entry_points", + "output_type": "AllStevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces": { + "description": "Find `python_distribution` targets with entry_points in selected `stevedore_namespace`s", + "documentation": null, + "input_gets": [], + "input_types": [ + "StevedoreNamespacesProviderTargetsRequest", + "StevedoreExtensions" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.find_python_distributions_with_entry_points_in_stevedore_namespaces", + "output_type": "StevedoreExtensionTargets", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies": { + "description": "Infer dependencies based on `stevedore_namespaces` field.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferStevedoreNamespacesDependencies" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.infer_stevedore_namespaces_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions": { + "description": "Create map of `stevedore_namespace` to `python_distribution` targets", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllStevedoreExtensionTargets" + ], + "name": "pants.backend.python.framework.stevedore.python_target_dependencies.map_stevedore_extensions", + "output_type": "StevedoreExtensions", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension": { + "description": "Generate entry_points.txt to imitate `python_distribution` installation.", + "documentation": null, + "input_gets": [ + "Get(StevedoreExtensionTargets, StevedoreNamespacesProviderTargetsRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(Paths, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateEntryPointsTxtFromStevedoreExtensionRequest" + ], + "name": "pants.backend.python.framework.stevedore.rules.generate_entry_points_txt_from_stevedore_extension", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.experimental.python.framework.stevedore" + }, + "pants.backend.python.goals.coverage_py.create_or_update_coverage_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.create_or_update_coverage_config", + "output_type": "CoverageConfig", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.generate_coverage_reports": { + "description": "Generate Pytest coverage reports", + "documentation": "Takes all Python test results and generates a single coverage report.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Snapshot, Digest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "MergedCoverageData", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "KeepSandboxes", + "DistDir" + ], + "name": "pants.backend.python.goals.coverage_py.generate_coverage_reports", + "output_type": "CoverageReports", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.merge_coverage_data": { + "description": "Merge Pytest coverage data", + "documentation": null, + "input_gets": [ + "Get(Digest, AddPrefix, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytestCoverageDataCollection", + "CoverageSetup", + "CoverageConfig", + "CoverageSubsystem", + "AllSourceRoots" + ], + "name": "pants.backend.python.goals.coverage_py.merge_coverage_data", + "output_type": "MergedCoverageData", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.coverage_py.setup_coverage": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "CoverageSubsystem" + ], + "name": "pants.backend.python.goals.coverage_py.setup_coverage", + "output_type": "CoverageSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis": { + "description": "`python-dump-source-analysis` goal", + "documentation": null, + "input_gets": [ + "Get(PythonSourceAnalysis, PythonImportDependenciesInferenceFieldSet, ..)" + ], + "input_types": [ + "DumpPythonSourceAnalysisSubsystem", + "Targets", + "Console" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis", + "output_type": "DumpPythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single": { + "description": null, + "documentation": "Infer the dependencies for a single python fieldset, keeping all the intermediate results.", + "input_gets": [ + "Get(ParsedPythonDependencies, ParsePythonDependenciesRequest, ..)", + "Get(ResolvedParsedPythonDependencies, ResolvedParsedPythonDependenciesRequest, ..)", + "Get(UnownedImportPossibleOwners, UnownedImportPossibleOwnerRequest, ..)" + ], + "input_types": [ + "PythonImportDependenciesInferenceFieldSet", + "PythonSetup" + ], + "name": "pants.backend.python.goals.debug_goals.dump_python_source_analysis_single", + "output_type": "PythonSourceAnalysis", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.export.do_export": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(ProcessResult, PexProcess, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "VenvExportRequest", + "PexPEX", + "PexEnvironment", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.do_export", + "output_type": "ExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenv_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EditableLocalDists, EditableLocalDistsRequest, ..)", + "Get(ExportResult, VenvExportRequest, ..)" + ], + "input_types": [ + "_ExportVenvForResolveRequest", + "PythonSetup", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.export_virtualenv_for_resolve", + "output_type": "MaybeExportResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.export.export_virtualenvs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeExportResult, _ExportVenvForResolveRequest, ..)" + ], + "input_types": [ + "ExportVenvsRequest", + "ExportSubsystem" + ], + "name": "pants.backend.python.goals.export.export_virtualenvs", + "output_type": "ExportResults", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.lockfile.determine_python_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownPythonUserResolveNamesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.determine_python_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.generate_lockfile": { + "description": "Generate Python lockfile", + "documentation": null, + "input_gets": [ + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)", + "Get(DigestContents, Digest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)" + ], + "input_types": [ + "GeneratePythonLockfile", + "GenerateLockfilesSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.generate_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonSyntheticLockfileTargetsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.python_lockfile_synthetic_targets", + "output_type": "SyntheticAddressMaps", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequestedPythonUserResolveNames", + "AllTargets", + "PythonSetup" + ], + "name": "pants.backend.python.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.core" + }, + "pants.backend.python.goals.lockfile.wrap_python_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GeneratePythonLockfile" + ], + "name": "pants.backend.python.goals.lockfile.wrap_python_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.core" + }, + "pants.backend.python.goals.package_dists.package_python_dist": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(DistBuildResult, DistBuildRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.goals.package_dists.package_python_dist", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexFromTargetsRequest, ..)" + ], + "input_types": [ + "PexFromTargetsRequestForBuiltPackage" + ], + "name": "pants.backend.python.goals.package_pex_binary.built_pacakge_for_pex_from_targets_request", + "output_type": "BuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.package_pex_binary.package_pex_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(CompletePlatforms, PexCompletePlatformsField, ..)" + ], + "input_types": [ + "PexBinaryFieldSet", + "PexBinaryDefaults" + ], + "name": "pants.backend.python.goals.package_pex_binary.package_pex_binary", + "output_type": "PexFromTargetsRequestForBuiltPackage", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.publish.twine_upload": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Snapshot, CreateDigest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "PublishPythonPackageRequest", + "TwineSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.publish.twine_upload", + "output_type": "PublishProcesses", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.goals.pytest_runner.debug_python_test": { + "description": "Set up Pytest to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.python.goals.pytest_runner.debug_python_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.debugpy_python_test": { + "description": "Set up debugpy to run an interactive Pytest session", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch", + "DebugPy", + "DebugAdapterSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.goals.pytest_runner.debugpy_python_test", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.partition_python_tests": { + "description": "Partition Pytest", + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "PythonSetup" + ], + "name": "pants.backend.python.goals.pytest_runner.partition_python_tests", + "output_type": "Partitions", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_all_setup_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(PytestPluginSetup, PytestPluginSetupRequest, ..)" + ], + "input_types": [ + "AllPytestPluginSetupsRequest", + "UnionMembership" + ], + "name": "pants.backend.python.goals.pytest_runner.run_all_setup_plugins", + "output_type": "AllPytestPluginSetups", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.run_python_tests": { + "description": "Run Pytest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(ProcessResultWithRetries, ProcessWithRetries, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.python.goals.pytest_runner.run_python_tests", + "output_type": "TestResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_pytest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(AllPytestPluginSetups, AllPytestPluginSetupsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(PexRequirementsInfo, PexRequirements, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "TestSetupRequest", + "PyTest", + "TestSubsystem", + "CoverageConfig", + "CoverageSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_pytest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.pytest_runner.setup_runtime_packages": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "RuntimePackagesPluginRequest" + ], + "name": "pants.backend.python.goals.pytest_runner.setup_runtime_packages", + "output_type": "PytestPluginSetup", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_ipython_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "IPythonRepl", + "IPython", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_ipython_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.repl.create_python_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonRepl", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.repl.create_python_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexFromTargetsRequestForBuiltPackage, PexBinaryFieldSet, ..)", + "Get(BuiltPackage, PexFromTargetsRequestForBuiltPackage, ..)", + "Get(PythonExecutable, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "PexBinaryFieldSet" + ], + "name": "pants.backend.python.goals.run_pex_binary.create_pex_binary_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)" + ], + "input_types": [ + "PythonRequirementFieldSet", + "PexEnvironment", + "PythonSetup", + "ThirdPartyPythonModuleMapping" + ], + "name": "pants.backend.python.goals.run_python_requirement.create_python_requirement_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "DebugPy", + "DebugAdapterSubsystem", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_debug_adapter_request", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_in_sandbox_request", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.run_python_source.create_python_source_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PexRequest, PexFromTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PythonSourceFieldSet", + "PexEnvironment", + "PythonSetup" + ], + "name": "pants.backend.python.goals.run_python_source.create_python_source_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.goals.tailor.find_putative_targets": { + "description": "Determine candidate Python targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "PutativePythonTargetsRequest", + "AllOwnedSources", + "PythonSetup" + ], + "name": "pants.backend.python.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt": { + "description": "Format with add-trailing-comma", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "AddTrailingComma" + ], + "name": "pants.backend.python.lint.add_trailing_comma.rules.add_trailing_comma_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.backend.python.lint.autoflake.rules.autoflake_fix": { + "description": "Fix with Autoflake", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Autoflake" + ], + "name": "pants.backend.python.lint.autoflake.rules.autoflake_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.backend.python.lint.bandit.rules.bandit_lint": { + "description": "Lint with Bandit", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Bandit" + ], + "name": "pants.backend.python.lint.bandit.rules.bandit_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.bandit.rules.partition_bandit": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Bandit", + "PythonSetup" + ], + "name": "pants.backend.python.lint.bandit.rules.partition_bandit", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.bandit" + }, + "pants.backend.python.lint.black.rules.black_fmt": { + "description": "Format with Black", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Black" + ], + "name": "pants.backend.python.lint.black.rules.black_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.black.rules.partition_black": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Black", + "PythonSetup" + ], + "name": "pants.backend.python.lint.black.rules.partition_black", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.black" + }, + "pants.backend.python.lint.docformatter.rules.docformatter_fmt": { + "description": "Format with docformatter", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Docformatter", + "KeepSandboxes" + ], + "name": "pants.backend.python.lint.docformatter.rules.docformatter_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.backend.python.lint.flake8.rules.partition_flake8": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Flake8", + "PythonSetup", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.partition_flake8", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.rules.run_flake8": { + "description": "Lint with Flake8", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Flake8", + "Flake8FirstPartyPlugins" + ], + "name": "pants.backend.python.lint.flake8.rules.run_flake8", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Flake8" + ], + "name": "pants.backend.python.lint.flake8.subsystem.flake8_first_party_plugins", + "output_type": "Flake8FirstPartyPlugins", + "provider": "pants.backend.python.lint.flake8" + }, + "pants.backend.python.lint.isort.rules.isort_fmt": { + "description": "Format with isort", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Isort", + "KeepSandboxes" + ], + "name": "pants.backend.python.lint.isort.rules.isort_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.isort" + }, + "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint": { + "description": "Lint with Pydocstyle", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "Batch", + "Pydocstyle" + ], + "name": "pants.backend.python.lint.pydocstyle.rules.pydocstyle_lint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.backend.python.lint.pylint.rules.partition_pylint": { + "description": "Determine if necessary to partition Pylint input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Pylint", + "PythonSetup", + "PylintFirstPartyPlugins" + ], + "name": "pants.backend.python.lint.pylint.rules.partition_pylint", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.rules.run_pylint": { + "description": "Lint using Pylint", + "documentation": null, + "input_gets": [ + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PexResolveInfo, Pex, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "Batch", + "Pylint", + "PylintFirstPartyPlugins", + "PexEnvironment" + ], + "name": "pants.backend.python.lint.pylint.rules.run_pylint", + "output_type": "LintResult", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "Pylint" + ], + "name": "pants.backend.python.lint.pylint.subsystem.pylint_first_party_plugins", + "output_type": "PylintFirstPartyPlugins", + "provider": "pants.backend.python.lint.pylint" + }, + "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix": { + "description": "Fix with pyupgrade", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "PyUpgrade" + ], + "name": "pants.backend.python.lint.pyupgrade.rules.pyupgrade_fix", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.backend.python.lint.ruff.rules.ruff_fix": { + "description": "Fix with ruff", + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, _RunRuffRequest, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Ruff" + ], + "name": "pants.backend.python.lint.ruff.rules.ruff_fix", + "output_type": "FixResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.ruff_lint": { + "description": "Lint with ruff", + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FallibleProcessResult, _RunRuffRequest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.python.lint.ruff.rules.ruff_lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.ruff.rules.run_ruff": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "_RunRuffRequest", + "Ruff" + ], + "name": "pants.backend.python.lint.ruff.rules.run_ruff", + "output_type": "FallibleProcessResult", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.backend.python.lint.yapf.rules.yapf_fmt": { + "description": "Format with yapf", + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Yapf" + ], + "name": "pants.backend.python.lint.yapf.rules.yapf_fmt", + "output_type": "FixResult", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements": { + "description": "Generate `python_requirement` targets from Pipfile.lock", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPipenvRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.pipenv_requirements.generate_from_pipenv_requirements", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from Poetry pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPoetryRequirementsRequest", + "BuildRoot", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.poetry_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.macros.python_requirements.generate_from_python_requirement": { + "description": "Generate `python_requirement` targets from requirements.txt or PEP 621 compliant pyproject.toml", + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "GenerateFromPythonRequirementsRequest", + "UnionMembership", + "PythonSetup" + ], + "name": "pants.backend.python.macros.python_requirements.generate_from_python_requirement", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints": { + "description": "`py-constraints` goal", + "documentation": null, + "input_gets": [ + "Get(AllTargets)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(Dependents, DependentsRequest, ..)" + ], + "input_types": [ + "Addresses", + "Console", + "PyConstraintsSubsystem", + "PythonSetup", + "RegisteredTargetTypes", + "UnionMembership" + ], + "name": "pants.backend.python.mixed_interpreter_constraints.py_constraints.py_constraints", + "output_type": "PyConstraintsGoal", + "provider": "pants.backend.python.mixed_interpreter_constraints" + }, + "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [], + "name": "pants.backend.python.packaging.pyoxidizer.rules.create_pyoxidizer_runner_script", + "output_type": "PyoxidizerRunnerScript", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, PexProcess, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "PyOxidizer", + "PyOxidizerFieldSet", + "PyoxidizerRunnerScript", + "BashBinary", + "Platform" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.package_pyoxidizer_binary", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)" + ], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.backend.python.packaging.pyoxidizer.rules.run_pyoxidizer_binary", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateTargetsFromPexBinaries", + "UnionMembership" + ], + "name": "pants.backend.python.target_types_rules.generate_targets_from_pex_binaries", + "output_type": "GeneratedTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency": { + "description": "Inferring dependency from the pex_binary `entry_point` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPexBinaryEntryPointDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.infer_pex_binary_entry_point_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.infer_python_distribution_dependencies": { + "description": null, + "documentation": "Infer dependencies that we can infer from entry points in the distribution.", + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonDistributionDependencies", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.infer_python_distribution_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_files_generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonFilesGeneratorSettingsRequest", + "PythonInferSubsystem" + ], + "name": "pants.backend.python.target_types_rules.python_files_generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.python_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonResolveFieldDefaultFactoryRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.python_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_pex_entry_point": { + "description": "Determining the entry point for a `pex_binary` target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePexEntryPointRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_pex_entry_point", + "output_type": "ResolvedPexEntryPoint", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points": { + "description": "Determining the entry points for a `python_distribution` target", + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(ResolvedPexEntryPoint, ResolvePexEntryPointRequest, ..)" + ], + "input_types": [ + "ResolvePythonDistributionEntryPointsRequest" + ], + "name": "pants.backend.python.target_types_rules.resolve_python_distribution_entry_points", + "output_type": "ResolvedPythonDistributionEntryPoints", + "provider": "pants.backend.python" + }, + "pants.backend.python.target_types_rules.validate_python_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "PythonValidateDependenciesRequest", + "PythonSetup" + ], + "name": "pants.backend.python.target_types_rules.validate_python_dependencies", + "output_type": "ValidatedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment": { + "description": "Get mypyc build environment", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)" + ], + "input_types": [ + "MyPycDistBuildEnvironmentRequest", + "MyPyFirstPartyPlugins", + "MyPyConfigFile", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.mypyc.get_mypyc_build_environment", + "output_type": "DistBuildEnvironment", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions": { + "description": "Determine if necessary to partition MyPy input", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_determine_partitions", + "output_type": "MyPyPartitions", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck": { + "description": "Typecheck using MyPy", + "documentation": null, + "input_gets": [ + "Get(MyPyPartitions, MyPyRequest, ..)", + "Get(CheckResult, MyPyPartition, ..)" + ], + "input_types": [ + "MyPyRequest", + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(PexResolveInfo, VenvPex, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, VenvPexProcess, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MyPyPartition", + "MyPyConfigFile", + "MyPyFirstPartyPlugins", + "BuildRoot", + "MyPy", + "PythonSetup", + "MkdirBinary", + "MktempBinary", + "CpBinary", + "MvBinary", + "LnBinary", + "GlobalOptions" + ], + "name": "pants.backend.python.typecheck.mypy.rules.mypy_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.mypy_first_party_plugins", + "output_type": "MyPyFirstPartyPlugins", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "MyPy" + ], + "name": "pants.backend.python.typecheck.mypy.subsystem.setup_mypy_config", + "output_type": "MyPyConfigFile", + "provider": "pants.backend.python.typecheck.mypy" + }, + "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions": { + "description": "Determine if it is necessary to partition Pytype's input (interpreter_constraints and resolves)", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, CoarsenedTargetsRequest, ..)" + ], + "input_types": [ + "PytypeRequest", + "Pytype", + "PythonSetup" + ], + "name": "pants.backend.python.typecheck.pytype.rules.pytype_determine_partitions", + "output_type": "PytypePartitions", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck": { + "description": "Typecheck using Pytype", + "documentation": null, + "input_gets": [ + "Get(PytypePartitions, PytypeRequest, ..)", + "Get(CheckResult, PytypePartition, ..)" + ], + "input_types": [ + "PytypeRequest", + "Pytype" + ], + "name": "pants.backend.python.typecheck.pytype.rules.pytype_typecheck", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition": { + "description": "Pytype typecheck each partition based on its interpreter_constraints", + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Pex, RequirementsPexRequest, ..)", + "Get(Pex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(VenvPex, VenvPexRequest, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "PytypePartition", + "Pytype", + "PexEnvironment" + ], + "name": "pants.backend.python.typecheck.pytype.rules.pytype_typecheck_partition", + "output_type": "CheckResult", + "provider": "pants.backend.experimental.python.typecheck.pytype" + }, + "pants.backend.python.util_rules.ancestor_files.find_ancestor_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "AncestorFilesRequest" + ], + "name": "pants.backend.python.util_rules.ancestor_files.find_ancestor_files", + "output_type": "AncestorFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.find_build_system": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "BuildSystemRequest", + "Setuptools" + ], + "name": "pants.backend.python.util_rules.dists.find_build_system", + "output_type": "BuildSystem", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.dists.run_pep517_build": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DistBuildRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.dists.run_pep517_build", + "output_type": "DistBuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.faas.build_python_faas": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RuntimePlatforms, RuntimePlatformsRequest, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Pex, PexFromTargetsRequest, ..)", + "Get(PexVenv, PexVenvRequest, ..)" + ], + "input_types": [ + "BuildPythonFaaSRequest" + ], + "name": "pants.backend.python.util_rules.faas.build_python_faas", + "output_type": "BuiltPackage", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "PythonFaaSCompletePlatforms" + ], + "name": "pants.backend.python.util_rules.faas.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.infer_faas_handler_dependency": { + "description": "Inferring dependency from the python FaaS `handler` field", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ResolvedPythonFaaSHandler, ResolvePythonFaaSHandlerRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)", + "Get(PythonModuleOwners, PythonModuleOwnersRequest, ..)" + ], + "input_types": [ + "InferPythonFaaSHandlerDependency", + "PythonInferSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.faas.infer_faas_handler_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.infer_runtime_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, PythonFaaSCompletePlatforms, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "RuntimePlatformsRequest" + ], + "name": "pants.backend.python.util_rules.faas.infer_runtime_platforms", + "output_type": "RuntimePlatforms", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.faas.resolve_python_faas_handler": { + "description": "Determining the handler for a python FaaS target", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "ResolvePythonFaaSHandlerRequest" + ], + "name": "pants.backend.python.util_rules.faas.resolve_python_faas_handler", + "output_type": "ResolvedPythonFaaSHandler", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.local_dists.build_local_dists": { + "description": "Building local distributions", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(LocalDistWheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "LocalDistsPexRequest" + ], + "name": "pants.backend.python.util_rules.local_dists.build_local_dists", + "output_type": "LocalDistsPex", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, PackageFieldSet, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary" + ], + "name": "pants.backend.python.util_rules.local_dists.isolate_local_dist_wheels", + "output_type": "LocalDistWheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists": { + "description": "Building editable local distributions (PEP 660)", + "documentation": null, + "input_gets": [ + "Get(LocalDistPEP660Wheels, PythonDistributionFieldSet, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "EditableLocalDistsRequest", + "ResolveSortedPythonDistributionTargets", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.build_editable_local_dists", + "output_type": "EditableLocalDists", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions": { + "description": "Find all Python Distribution targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.find_all_python_distributions", + "output_type": "AllPythonDistributionTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(DistBuildChroot, DistBuildChrootRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(DistBuildEnvironment, DistBuildEnvironmentRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(BuildSystem, BuildSystemRequest, ..)", + "Get(PEP660BuildResult, DistBuildRequest, ..)", + "Get(Snapshot, DigestSubset, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PythonDistributionFieldSet", + "BashBinary", + "UnzipBinary", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.isolate_local_dist_pep660_wheels", + "output_type": "LocalDistPEP660Wheels", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build": { + "description": null, + "documentation": "Run our PEP 517 / PEP 660 wrapper script to generate an editable wheel.\n\nThe PEP 517 / PEP 660 wraper script is responsible for building the editable wheel.\nThe backend wrapper script, along with the commands that install the editable wheel,\nneed to conform to the following specs so that Pants is a PEP 660 compliant frontend,\na PEP 660 compliant backend, and that it builds a compliant wheel and install.\n\nNOTE: PEP 660 does not address the `.data` directory, so the wrapper ignores it.\n\nRelevant Specs:\n https://peps.python.org/pep-0517/\n https://peps.python.org/pep-0660/\n https://packaging.python.org/en/latest/specifications/platform-compatibility-tags/\n https://packaging.python.org/en/latest/specifications/recording-installed-packages/\n https://packaging.python.org/en/latest/specifications/direct-url-data-structure/\n https://packaging.python.org/en/latest/specifications/binary-distribution-format/", + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "DistBuildRequest", + "PythonSetup", + "BuildRoot" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.run_pep660_build", + "output_type": "PEP660BuildResult", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve": { + "description": "Associate resolves with all Python Distribution targets in project", + "documentation": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)" + ], + "input_types": [ + "AllPythonDistributionTargets", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.local_dists_pep660.sort_all_python_distributions_by_resolve", + "output_type": "ResolveSortedPythonDistributionTargets", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SetupKwargs, SetupKwargsRequest, ..)" + ], + "input_types": [ + "ExportedTarget", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.package_dists.determine_explicitly_provided_setup_kwargs", + "output_type": "SetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ExportedTargetRequirements, DependencyOwner, ..)", + "Get(SetupKwargs, ExportedTarget, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(ResolvedPythonDistributionEntryPoints, ResolvePythonDistributionEntryPointsRequest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.util_rules.package_dists.determine_finalized_setup_kwargs", + "output_type": "FinalizedSetupKwargs", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.generate_chroot": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DistBuildSources, DistBuildChrootRequest, ..)", + "Get(GeneratedSetupPy, GenerateSetupPyRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "SetupPyGeneration" + ], + "name": "pants.backend.python.util_rules.package_dists.generate_chroot", + "output_type": "DistBuildChroot", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.generate_setup_py": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FinalizedSetupKwargs, GenerateSetupPyRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateSetupPyRequest" + ], + "name": "pants.backend.python.util_rules.package_dists.generate_setup_py", + "output_type": "GeneratedSetupPy", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_exporting_owner": { + "description": "Get exporting owner for target", + "documentation": "Find the exported target that owns the given target (and therefore exports it).\n\nThe owner of T (i.e., the exported target in whose artifact T's code is published) is:\n\n 1. An exported target that depends on T (or is T itself).\n 2. Is T's closest filesystem ancestor among those satisfying 1.\n\nIf there are multiple such exported targets at the same degree of ancestry, the ownership\nis ambiguous and an error is raised. If there is no exported target that depends on T\nand is its ancestor, then there is no owner and an error is raised.", + "input_gets": [ + "Get(Targets, RawSpecs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "OwnedDependency" + ], + "name": "pants.backend.python.util_rules.package_dists.get_exporting_owner", + "output_type": "ExportedTarget", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_owned_dependencies": { + "description": "Find all code to be published in the distribution", + "documentation": "Find the dependencies of dependency_owner that are owned by it.\n\nIncludes dependency_owner itself.", + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.package_dists.get_owned_dependencies", + "output_type": "OwnedDependencies", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_requirements": { + "description": "Compute distribution's 3rd party requirements", + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(ExportedTarget, OwnedDependency, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SetupKwargs, OwnedDependency, ..)" + ], + "input_types": [ + "DependencyOwner", + "UnionMembership", + "SetupPyGeneration" + ], + "name": "pants.backend.python.util_rules.package_dists.get_requirements", + "output_type": "ExportedTargetRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.package_dists.get_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OwnedDependencies, DependencyOwner, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(DigestContents, DigestSubset, ..)" + ], + "input_types": [ + "DistBuildChrootRequest", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.package_dists.get_sources", + "output_type": "DistBuildSources", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex.build_pex": { + "description": null, + "documentation": "Returns a PEX with the given settings.", + "input_gets": [ + "Get(PythonExecutable, InterpreterConstraints, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ResolvePexConfig, ResolvePexConfigRequest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(PexRequirementsInfo, PexRequirements, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "PexRequest", + "PythonSetup", + "PexSubsystem" + ], + "name": "pants.backend.python.util_rules.pex.build_pex", + "output_type": "BuildPexResult", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_optional_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)" + ], + "input_types": [ + "OptionalPexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_optional_pex", + "output_type": "OptionalPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)" + ], + "input_types": [ + "PexRequest" + ], + "name": "pants.backend.python.util_rules.pex.create_pex", + "output_type": "Pex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.create_venv_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuildPexResult, PexRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexRequest", + "BashBinary", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.create_venv_pex", + "output_type": "VenvPex", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, PexProcess, ..)" + ], + "input_types": [ + "PexPEX", + "Pex" + ], + "name": "pants.backend.python.util_rules.pex.determine_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "VenvPex" + ], + "name": "pants.backend.python.util_rules.pex.determine_venv_pex_resolve_info", + "output_type": "PexResolveInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platform_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "UnparsedAddressInputs" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platform_addresses", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.digest_complete_platforms": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CompletePlatforms, UnparsedAddressInputs, ..)" + ], + "input_types": [ + "PexCompletePlatformsField" + ], + "name": "pants.backend.python.util_rules.pex.digest_complete_platforms", + "output_type": "CompletePlatforms", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.find_interpreter": { + "description": "Find Python interpreter for constraints", + "documentation": null, + "input_gets": [ + "Get(PythonExecutable, PythonProvider, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "InterpreterConstraints", + "PexSubsystem", + "EnvironmentTarget", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex.find_interpreter", + "output_type": "PythonExecutable", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.get_req_strings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "PexRequirements" + ], + "name": "pants.backend.python.util_rules.pex.get_req_strings", + "output_type": "PexRequirementsInfo", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.setup_venv_pex_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "VenvPexProcess", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.setup_venv_pex_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex.wrap_venv_prex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PexRequest", + "PexEnvironment" + ], + "name": "pants.backend.python.util_rules.pex.wrap_venv_prex_request", + "output_type": "VenvPexRequest", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.download_pex_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)" + ], + "input_types": [ + "PexCli", + "Platform" + ], + "name": "pants.backend.python.util_rules.pex_cli.download_pex_pex", + "output_type": "PexPEX", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexCliProcess", + "PexPEX", + "PexEnvironment", + "PythonBuildStandaloneBinary", + "EnvironmentAware", + "GlobalOptions", + "PexSubsystem", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_cli.setup_pex_cli_process", + "output_type": "Process", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_environment.find_pex_python": { + "description": "Prepare environment for running PEXes", + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBootstrap", + "PythonBuildStandaloneBinary", + "PexSubsystem", + "EnvironmentAware", + "SubprocessEnvironmentVars", + "NamedCachesDirOption" + ], + "name": "pants.backend.python.util_rules.pex_environment.find_pex_python", + "output_type": "PexEnvironment", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_ConstraintsRepositoryPexRequest", + "PythonSetup", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets._setup_constraints_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "ChosenPythonResolveRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.choose_python_resolve", + "output_type": "ChosenPythonResolve", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(PexRequirements, _PexRequirementsRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(OptionalPexRequest, _RepositoryPexRequest, ..)", + "Get(OptionalPex, OptionalPexRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(PythonSourceFiles, PythonSourceFilesRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(LocalDistsPex, LocalDistsPexRequest, ..)", + "Get(StrippedPythonSourceFiles, PythonSourceFiles, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "PexFromTargetsRequest", + "PythonSetup", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.create_pex_from_targets", + "output_type": "PexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_global_requirement_constraints", + "output_type": "GlobalRequirementConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_PexRequirementsRequest", + "GlobalRequirementConstraints" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.determine_requirement_strings_in_closure", + "output_type": "PexRequirements", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RequirementsPexRequest" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.generalize_requirements_pex_request", + "output_type": "PexFromTargetsRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.get_repository_pex": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(OptionalPexRequest, _ConstraintsRepositoryPexRequest, ..)", + "Get(ChosenPythonResolve, ChosenPythonResolveRequest, ..)", + "Get(InterpreterConstraints, InterpreterConstraintsRequest, ..)" + ], + "input_types": [ + "_RepositoryPexRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.get_repository_pex", + "output_type": "OptionalPexRequest", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)" + ], + "input_types": [ + "InterpreterConstraintsRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_from_targets.interpreter_constraints_for_targets", + "output_type": "InterpreterConstraints", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ResolvePexConfigRequest", + "PythonSetup", + "PythonRepos", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.pex_requirements.determine_resolve_pex_config", + "output_type": "ResolvePexConfig", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Resolve", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_requirements.get_lockfile_for_resolve", + "output_type": "Lockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_requirements.load_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, PathGlobs, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "LoadedLockfileRequest", + "PythonSetup" + ], + "name": "pants.backend.python.util_rules.pex_requirements.load_lockfile", + "output_type": "LoadedLockfile", + "provider": "pants.core" + }, + "pants.backend.python.util_rules.pex_venv.pex_venv": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, PexCliProcess, ..)" + ], + "input_types": [ + "PexVenvRequest" + ], + "name": "pants.backend.python.util_rules.pex_venv.pex_venv", + "output_type": "PexVenv", + "provider": "pants.backend.awslambda.python" + }, + "pants.backend.python.util_rules.python_sources.prepare_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(AncestorFiles, AncestorFilesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "PythonSourceFilesRequest", + "UnionMembership" + ], + "name": "pants.backend.python.util_rules.python_sources.prepare_python_sources", + "output_type": "PythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.python_sources.strip_python_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedSourceFiles, SourceFiles, ..)" + ], + "input_types": [ + "PythonSourceFiles" + ], + "name": "pants.backend.python.util_rules.python_sources.strip_python_sources", + "output_type": "StrippedPythonSourceFiles", + "provider": "pants.backend.python" + }, + "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets": { + "description": "Find all vcs_version targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.find_all_vcs_version_targets", + "output_type": "AllVCSVersionTargets", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaybeGitWorktree, GitWorktreeRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GeneratePythonFromSetuptoolsSCMRequest", + "SetuptoolsSCM" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.generate_python_from_setuptools_scm", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(StrippedFileName, StrippedFileNameRequest, ..)" + ], + "input_types": [ + "AllVCSVersionTargets", + "PythonSetup", + "PythonVCSVersionMappingMarker" + ], + "name": "pants.backend.python.util_rules.vcs_versioning.map_to_python_modules", + "output_type": "FirstPartyPythonMappingImpl", + "provider": "pants.backend.experimental.python" + }, + "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Snapshot, AddPrefix, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "ScalaBSPBuildTargetsMetadataRequest", + "BashBinary", + "JvmSubsystem", + "ScalaSubsystem", + "BuildRoot", + "ReadlinkBinary" + ], + "name": "pants.backend.scala.bsp.rules.bsp_resolve_scala_metadata", + "output_type": "BSPBuildTargetsMetadataResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, BSPClasspathEntryRequest, ..)", + "Get(LooseClassfiles, ClasspathEntry, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPCompileRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_compile_request", + "output_type": "BSPCompileResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaMainClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_main_classes_request", + "output_type": "ScalaMainClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPResourcesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_resources_request", + "output_type": "BSPResourcesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaTestClassesParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scala_test_classes_request", + "output_type": "ScalaTestClassesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HandleScalacOptionsResult, HandleScalacOptionsRequest, ..)" + ], + "input_types": [ + "ScalacOptionsParams" + ], + "name": "pants.backend.scala.bsp.rules.bsp_scalac_options_request", + "output_type": "ScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.collect_thirdparty_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ThirdpartyModulesRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.bsp.rules.collect_thirdparty_modules", + "output_type": "ThirdpartyModules", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "HandleScalacOptionsRequest", + "BuildRoot", + "Workspace" + ], + "name": "pants.backend.scala.bsp.rules.handle_bsp_scalac_options_request", + "output_type": "HandleScalacOptionsResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ThirdpartyModules, ThirdpartyModulesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ScalaBSPDependencyModulesRequest", + "BuildRoot" + ], + "name": "pants.backend.scala.bsp.rules.scala_bsp_dependency_modules", + "output_type": "BSPDependencyModulesResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.compile_scala_source": { + "description": "Compile with scalac", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetRequest, ..)", + "Get(ScalaPlugins, ScalaPluginsRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, StripJarRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "CompileScalaSourceRequest" + ], + "name": "pants.backend.scala.compile.scalac.compile_scala_source", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac.fetch_scala_library": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)" + ], + "input_types": [ + "ScalaLibraryRequest" + ], + "name": "pants.backend.scala.compile.scalac.fetch_scala_library", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaPluginsForTargetWithoutResolveRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.compile.scalac_plugins.add_resolve_name_to_plugin_request", + "output_type": "ScalaPluginsForTargetRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.compile.scalac_plugins.all_scala_plugin_targets", + "output_type": "AllScalaPluginTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.fetch_plugins": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(FallibleClasspathEntry, CoursierFetchRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaPluginsRequest" + ], + "name": "pants.backend.scala.compile.scalac_plugins.fetch_plugins", + "output_type": "ScalaPlugins", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "ScalaPluginsForTargetRequest", + "AllScalaPluginTargets", + "JvmSubsystem", + "Scalac", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName", + "FieldDefaults" + ], + "name": "pants.backend.scala.compile.scalac_plugins.resolve_scala_plugins_for_target", + "output_type": "ScalaPluginTargetsForTarget", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis": { + "description": "Inferring Scala dependencies by analyzing sources", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "InferScalaSourceDependencies", + "ScalaInferSubsystem", + "JvmSubsystem", + "SymbolMapping" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_dependencies_via_source_analysis", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency": { + "description": "Infer dependency on scala-library artifact for Scala target.", + "documentation": null, + "input_gets": [ + "Get(ScalaRuntimeForResolve, ScalaRuntimeForResolveRequest, ..)" + ], + "input_types": [ + "InferScalaLibraryDependencyRequest", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_library_dependency", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies": { + "description": "Infer dependency on scala plugin artifacts for Scala target.", + "documentation": "Adds dependencies on plugins for scala source files, so that they get included in the\ntarget's resolve.", + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ScalaPluginTargetsForTarget, ScalaPluginsForTargetWithoutResolveRequest, ..)" + ], + "input_types": [ + "InferScalaPluginDependenciesRequest" + ], + "name": "pants.backend.scala.dependency_inference.rules.infer_scala_plugin_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ScalaRuntimeForResolveRequest", + "AllJvmArtifactTargets", + "JvmSubsystem", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.rules.resolve_scala_library_for_resolve", + "output_type": "ScalaRuntimeForResolve", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)" + ], + "input_types": [ + "InternalJdk", + "ScalaParserCompiledClassfiles", + "AnalyzeScalaSourceRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.analyze_scala_source_dependencies", + "output_type": "FallibleScalaSourceDependencyAnalysisResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "ScalaSubsystem", + "JvmSubsystem", + "Scalac", + "SourceFilesRequest" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.create_analyze_scala_source_request", + "output_type": "AnalyzeScalaSourceRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaParserToolLockfileSentinel" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.generate_scala_parser_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, {FallibleProcessResult: .., ProductDescription: ..})", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FallibleScalaSourceDependencyAnalysisResult" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.resolve_fallible_result_to_analysis", + "output_type": "ScalaSourceDependencyAnalysis", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalaParserToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.backend.scala.dependency_inference.scala_parser.setup_scala_parser_classfiles", + "output_type": "ScalaParserCompiledClassfiles", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets": { + "description": "Find all Scala targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.find_all_scala_targets", + "output_type": "AllScalaTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols": { + "description": "Map all first party Scala targets to their symbols", + "documentation": null, + "input_gets": [ + "Get(ScalaSourceDependencyAnalysis, SourceFilesRequest, ..)" + ], + "input_types": [ + "FirstPartyScalaTargetsMappingRequest", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.dependency_inference.symbol_mapper.map_first_party_scala_targets_to_symbols", + "output_type": "SymbolMap", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.check.scalac_check": { + "description": "Check compilation for Scala", + "documentation": null, + "input_gets": [ + "Get(CoarsenedTargets, Addresses, ..)", + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ScalacCheckRequest", + "ClasspathEntryRequestFactory" + ], + "name": "pants.backend.scala.goals.check.scalac_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.repl.create_scala_repl_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ScalaRepl", + "BashBinary", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.repl.create_scala_repl_request", + "output_type": "ReplRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.goals.tailor.find_putative_targets": { + "description": "Determine candidate Scala targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeScalaTargetsRequest", + "AllOwnedSources", + "ScalaSubsystem" + ], + "name": "pants.backend.scala.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files": { + "description": null, + "documentation": "Gather scalafmt config files and identify which config files to use for each source\ndirectory.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "GatherScalafmtConfigFilesRequest" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.gather_scalafmt_config_files", + "output_type": "ScalafmtConfigFiles", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalafmtToolLockfileSentinel", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.generate_scalafmt_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, ScalafmtToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ScalafmtConfigFiles, GatherScalafmtConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "PartitionRequest", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.partition_scalafmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt": { + "description": "Format with scalafmt", + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "InternalJdk", + "ScalafmtSubsystem" + ], + "name": "pants.backend.scala.lint.scalafmt.rules.scalafmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.scala.lint.scalafmt" + }, + "pants.backend.scala.resolve.artifact.scala_artifact_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": [ + "ScalaArtifactClasspathEntryRequest" + ], + "name": "pants.backend.scala.resolve.artifact.scala_artifact_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ScalaArtifactsForVersionResult, ScalaArtifactsForVersionRequest, ..)" + ], + "input_types": [ + "ValidateResolveHasScalaRuntimeRequest", + "ScalaSubsystem", + "AllScalaTargets", + "JvmSubsystem" + ], + "name": "pants.backend.scala.resolve.lockfile.validate_scala_runtime_is_present_in_resolve", + "output_type": "ValidateJvmArtifactsForResolveResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.generate_jvm_artifact_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateJvmArtifactForScalaTargets", + "JvmSubsystem", + "ScalaSubsystem", + "UnionMembership" + ], + "name": "pants.backend.scala.target_types.generate_jvm_artifact_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.target_types.scala_settings_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaInferSubsystem", + "ScalaSettingsRequest" + ], + "name": "pants.backend.scala.target_types.scala_settings_request", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalatestToolLockfileSentinel", + "Scalatest" + ], + "name": "pants.backend.scala.test.scalatest.generate_scalatest_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.run_scalatest_test": { + "description": "Run Scalatest", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "Batch" + ], + "name": "pants.backend.scala.test.scalatest.run_scalatest_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.test.scalatest.setup_scalatest_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, ScalatestToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "Scalatest", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.scala.test.scalatest.setup_scalatest_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaArtifactsForVersionRequest" + ], + "name": "pants.backend.scala.util_rules.versions.resolve_scala_artifacts_for_version", + "output_type": "ScalaArtifactsForVersionResult", + "provider": "pants.backend.experimental.scala" + }, + "pants.backend.shell.dependency_inference.find_all_shell_targets": { + "description": "Find all Shell targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.shell.dependency_inference.find_all_shell_targets", + "output_type": "AllShellTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.infer_shell_dependencies": { + "description": "Inferring Shell dependencies by analyzing imports", + "documentation": null, + "input_gets": [ + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ParsedShellImports, ParseShellImportsRequest, ..)" + ], + "input_types": [ + "InferShellDependencies", + "ShellMapping", + "ShellSetup" + ], + "name": "pants.backend.shell.dependency_inference.infer_shell_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.map_shell_files": { + "description": "Creating map of Shell file names to Shell targets", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllShellTargets" + ], + "name": "pants.backend.shell.dependency_inference.map_shell_files", + "output_type": "ShellMapping", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.dependency_inference.parse_shell_imports": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ParseShellImportsRequest", + "Shellcheck", + "Platform" + ], + "name": "pants.backend.shell.dependency_inference.parse_shell_imports", + "output_type": "ParsedShellImports", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.tailor.find_putative_targets": { + "description": "Determine candidate shell targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeShellTargetsRequest", + "AllOwnedSources", + "ShellSetup" + ], + "name": "pants.backend.shell.goals.tailor.find_putative_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.goals.test.test_shell_command": { + "description": "Test with shell command", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Process, ShellCommandProcessFromTargetRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.backend.shell.goals.test.test_shell_command", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.lint.shellcheck.rules.run_shellcheck": { + "description": "Lint with Shellcheck", + "documentation": null, + "input_gets": [ + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "Shellcheck", + "Platform" + ], + "name": "pants.backend.shell.lint.shellcheck.rules.run_shellcheck", + "output_type": "LintResult", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.backend.shell.lint.shfmt.rules.shfmt_fmt": { + "description": "Format with shfmt", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "Shfmt", + "Platform" + ], + "name": "pants.backend.shell.lint.shfmt.rules.shfmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell": { + "description": "Determine shunit2 shell", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Shunit2RunnerRequest", + "EnvironmentAware" + ], + "name": "pants.backend.shell.shunit2_test_runner.determine_shunit2_shell", + "output_type": "Shunit2Runner", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2": { + "description": "Run tests with Shunit2", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "Batch", + "TestSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.shell.shunit2_test_runner.run_tests_with_shunit2", + "output_type": "TestResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test": { + "description": "Setup Shunit2 to run interactively", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_debug_test", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target": { + "description": "Setup shunit2", + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(BuiltPackageDependencies, BuildPackageDependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Shunit2Runner, Shunit2RunnerRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TestSetupRequest", + "EnvironmentAware", + "TestSubsystem", + "TestExtraEnv", + "Shunit2", + "Platform" + ], + "name": "pants.backend.shell.shunit2_test_runner.setup_shunit2_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.target_types.generator_settings": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ShellGeneratorSettingsRequest", + "ShellSetup" + ], + "name": "pants.backend.shell.target_types.generator_settings", + "output_type": "TargetFilesGeneratorSettings", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Process, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.prepare_process_request_from_target", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)", + "Get(BinaryShims, BinaryShimsRequest, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(AdhocProcessResult, AdhocProcessRequest, ..)" + ], + "input_types": [ + "ShellCommandProcessFromTargetRequest", + "EnvironmentAware", + "BashBinary" + ], + "name": "pants.backend.shell.util_rules.shell_command.run_adhoc_result_from_target", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.run_shell_command_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ResolvedExecutionDependencies, ResolveExecutionDependenciesRequest, ..)" + ], + "input_types": [ + "BashBinary", + "RunShellCommand" + ], + "name": "pants.backend.shell.util_rules.shell_command.run_shell_command_request", + "output_type": "RunRequest", + "provider": "pants.backend.shell" + }, + "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox": { + "description": "Running shell command", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(AdhocProcessResult, {EnvironmentName: .., ShellCommandProcessFromTargetRequest: ..})", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateFilesFromShellCommandRequest" + ], + "name": "pants.backend.shell.util_rules.shell_command.shell_command_in_sandbox", + "output_type": "GeneratedSources", + "provider": "pants.backend.shell" + }, + "pants.backend.terraform.dependencies.get_terraform_providers": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": [ + "TerraformDependenciesRequest" + ], + "name": "pants.backend.terraform.dependencies.get_terraform_providers", + "output_type": "TerraformDependenciesResponse", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependencies.init_terraform": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(TerraformDependenciesResponse, TerraformDependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "TerraformInitRequest" + ], + "name": "pants.backend.terraform.dependencies.init_terraform", + "output_type": "TerraformInitResponse", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(ProcessResult, ParseTerraformModuleSources, ..)", + "Get(Targets, RawSpecs, ..)" + ], + "input_types": [ + "InferTerraformModuleDependenciesRequest" + ], + "name": "pants.backend.terraform.dependency_inference.infer_terraform_module_dependencies", + "output_type": "InferredDependencies", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_parser": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(VenvPex, PexRequest, ..)" + ], + "input_types": [ + "TerraformHcl2Parser" + ], + "name": "pants.backend.terraform.dependency_inference.setup_parser", + "output_type": "ParserSetup", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, VenvPexProcess, ..)" + ], + "input_types": [ + "ParseTerraformModuleSources", + "ParserSetup" + ], + "name": "pants.backend.terraform.dependency_inference.setup_process_for_parse_terraform_module_sources", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.check.terraform_check": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TerraformInitResponse, TerraformInitRequest, ..)", + "Get(FallibleProcessResult, TerraformProcess, ..)" + ], + "input_types": [ + "TerraformCheckRequest", + "TerraformValidateSubsystem" + ], + "name": "pants.backend.terraform.goals.check.terraform_check", + "output_type": "CheckResults", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.deploy.prepare_terraform_deployment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TerraformInitResponse, TerraformInitRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Process, TerraformProcess, ..)" + ], + "input_types": [ + "TerraformDeploymentRequest", + "TerraformTool" + ], + "name": "pants.backend.terraform.goals.deploy.prepare_terraform_deployment", + "output_type": "InteractiveProcess", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.deploy.run_terraform_deploy": { + "description": "Run Terraform deploy process", + "documentation": null, + "input_gets": [ + "Get(InteractiveProcess, TerraformDeploymentRequest, ..)" + ], + "input_types": [ + "DeployTerraformFieldSet" + ], + "name": "pants.backend.terraform.goals.deploy.run_terraform_deploy", + "output_type": "DeployProcess", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets": { + "description": "Determine candidate Terraform targets to create", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "PutativeTerraformTargetsRequest", + "TerraformTool", + "AllOwnedSources" + ], + "name": "pants.backend.terraform.goals.tailor.find_putative_terrform_module_targets", + "output_type": "PutativeTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceFiles, SourceFilesRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.partition_tffmt", + "output_type": "Partitions", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt": { + "description": "Format with `terraform fmt`", + "documentation": null, + "input_gets": [ + "Get(ProcessResult, TerraformProcess, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "Batch", + "TfFmtSubsystem" + ], + "name": "pants.backend.terraform.lint.tffmt.tffmt.tffmt_fmt", + "output_type": "FixResult", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.target_types.all_terraform_deployment_targets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.backend.terraform.target_types.all_terraform_deployment_targets", + "output_type": "AllTerraformDeploymentTargets", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.terraform.tool.setup_terraform_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TerraformProcess", + "TerraformTool", + "Platform" + ], + "name": "pants.backend.terraform.tool.setup_terraform_process", + "output_type": "Process", + "provider": "pants.backend.experimental.terraform" + }, + "pants.backend.tools.preamble.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "PreambleSubsystem" + ], + "name": "pants.backend.tools.preamble.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.preamble.rules.preamble_fmt": { + "description": "Add preambles", + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "Batch", + "PreambleSubsystem" + ], + "name": "pants.backend.tools.preamble.rules.preamble_fmt", + "output_type": "FixResult", + "provider": "pants.backend.tools.preamble" + }, + "pants.backend.tools.semgrep.rules.all_semgrep_ignore_files": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [], + "name": "pants.backend.tools.semgrep.rules.all_semgrep_ignore_files", + "output_type": "SemgrepIgnoreFiles", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.semgrep.rules.find_all_semgrep_configs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [], + "name": "pants.backend.tools.semgrep.rules.find_all_semgrep_configs", + "output_type": "AllSemgrepConfigs", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RelevantSemgrepConfigsRequest", + "AllSemgrepConfigs" + ], + "name": "pants.backend.tools.semgrep.rules.infer_relevant_semgrep_configs", + "output_type": "RelevantSemgrepConfigs", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.semgrep.rules.lint": { + "description": "Lint with Semgrep", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, VenvPexProcess, ..)" + ], + "input_types": [ + "Batch", + "SemgrepSubsystem", + "GlobalOptions" + ], + "name": "pants.backend.tools.semgrep.rules.lint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.semgrep.rules.partition": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RelevantSemgrepConfigs, RelevantSemgrepConfigsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "SemgrepSubsystem", + "SemgrepIgnoreFiles" + ], + "name": "pants.backend.tools.semgrep.rules.partition", + "output_type": "Partitions", + "provider": "pants.backend.experimental.tools.semgrep" + }, + "pants.backend.tools.workunit_logger.rules.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "WorkunitLoggerCallbackFactoryRequest", + "WorkunitLogger" + ], + "name": "pants.backend.tools.workunit_logger.rules.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.backend.experimental.tools.workunit_logger" + }, + "pants.backend.tools.yamllint.rules.gather_config_files": { + "description": null, + "documentation": "Gather yamllint configuration files.", + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)" + ], + "input_types": [ + "YamllintConfigFilesRequest", + "Yamllint" + ], + "name": "pants.backend.tools.yamllint.rules.gather_config_files", + "output_type": "YamllintConfigFiles", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.partition_inputs": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(YamllintConfigFiles, YamllintConfigFilesRequest, ..)", + "Get(Snapshot, DigestSubset, ..)" + ], + "input_types": [ + "PartitionRequest", + "Yamllint" + ], + "name": "pants.backend.tools.yamllint.rules.partition_inputs", + "output_type": "Partitions", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.backend.tools.yamllint.rules.run_yamllint": { + "description": "Lint using yamllint", + "documentation": null, + "input_gets": [ + "Get(Pex, PexRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, PexProcess, ..)" + ], + "input_types": [ + "Batch", + "Yamllint" + ], + "name": "pants.backend.tools.yamllint.rules.run_yamllint", + "output_type": "LintResult", + "provider": "pants.backend.experimental.tools.yamllint" + }, + "pants.bsp.rules.bsp_context": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SessionValues" + ], + "name": "pants.bsp.rules.bsp_context", + "output_type": "BSPContext", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.bsp_compile_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPCompileResult, CompileOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.compile.bsp_compile_request", + "output_type": "CompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.compile.compile_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPCompileResult, BSPCompileRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CompileOneBSPTargetRequest", + "BSPContext", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.compile.compile_bsp_target", + "output_type": "BSPCompileResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.lifecycle.bsp_build_initialize": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "InitializeBuildParams", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.lifecycle.bsp_build_initialize", + "output_type": "InitializeBuildResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.bsp_resources_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPResourcesResult, ResourcesForOneBSPTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.resources.bsp_resources_request", + "output_type": "ResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.resources.resources_bsp_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPResourcesResult, BSPResourcesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResourcesForOneBSPTargetRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.resources.resources_bsp_target", + "output_type": "BSPResourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(MaterializeBuildTargetSourcesResult, MaterializeBuildTargetSourcesRequest, ..)" + ], + "input_types": [ + "SourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_build_target_sources", + "output_type": "SourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_modules": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ResolveOneDependencyModuleResult, ResolveOneDependencyModuleRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "DependencyModulesParams", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_modules", + "output_type": "DependencyModulesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_dependency_sources": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DependencySourcesParams" + ], + "name": "pants.bsp.util_rules.targets.bsp_dependency_sources", + "output_type": "DependencySourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.bsp_workspace_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateOneBSPBuildTargetResult, GenerateOneBSPBuildTargetRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "WorkspaceBuildTargetsParams", + "BSPBuildTargets", + "Workspace" + ], + "name": "pants.bsp.util_rules.targets.bsp_workspace_build_targets", + "output_type": "WorkspaceBuildTargetsResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(BSPBuildTargetsMetadataResult, BSPBuildTargetsMetadataRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "GenerateOneBSPBuildTargetRequest", + "UnionMembership", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.generate_one_bsp_build_target_request", + "output_type": "GenerateOneBSPBuildTargetResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BSPBuildTargetInternal, BuildTargetIdentifier, ..)", + "Get(BSPBuildTargetSourcesInfo, BSPBuildTargetInternal, ..)" + ], + "input_types": [ + "MaterializeBuildTargetSourcesRequest", + "BuildRoot" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_target_sources", + "output_type": "MaterializeBuildTargetSourcesResult", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.materialize_bsp_build_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, PathGlobs, ..)", + "Get(BSPBuildTargetInternal, _ParseOneBSPMappingRequest, ..)" + ], + "input_types": [ + "BSPGoal" + ], + "name": "pants.bsp.util_rules.targets.materialize_bsp_build_targets", + "output_type": "BSPBuildTargets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.parse_one_bsp_mapping": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "_ParseOneBSPMappingRequest" + ], + "name": "pants.bsp.util_rules.targets.parse_one_bsp_mapping", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecsWithoutFileOwners, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal", + "UnionMembership", + "FieldDefaults" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_addresses", + "output_type": "Targets", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BuildTargetIdentifier", + "BSPBuildTargets" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_identifier", + "output_type": "BSPBuildTargetInternal", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BSPBuildTargetInternal, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "BSPBuildTargetInternal" + ], + "name": "pants.bsp.util_rules.targets.resolve_bsp_build_target_source_roots", + "output_type": "BSPBuildTargetSourcesInfo", + "provider": "pants.core" + }, + "pants.bsp.util_rules.targets.resolve_one_dependency_module": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, BuildTargetIdentifier, ..)", + "Get(BSPDependencyModulesResult, BSPDependencyModulesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResolveOneDependencyModuleRequest", + "UnionMembership" + ], + "name": "pants.bsp.util_rules.targets.resolve_one_dependency_module", + "output_type": "ResolveOneDependencyModuleResult", + "provider": "pants.core" + }, + "pants.core.goals.check.check": { + "description": "`check` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(CheckResults, {CheckRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "Workspace", + "FilteredTargets", + "DistDir", + "UnionMembership", + "CheckSubsystem" + ], + "name": "pants.core.goals.check.check", + "output_type": "Check", + "provider": "pants.core" + }, + "pants.core.goals.deploy.publish_process_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)" + ], + "input_types": [ + "_PublishProcessesForTargetRequest" + ], + "name": "pants.core.goals.deploy.publish_process_for_target", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.deploy.run_deploy": { + "description": "`experimental-deploy` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(DeployProcess, DeployFieldSet, ..)", + "Get(PublishProcesses, _PublishProcessesForTargetRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "DeploySubsystem" + ], + "name": "pants.core.goals.deploy.run_deploy", + "output_type": "Deploy", + "provider": "pants.core" + }, + "pants.core.goals.export.export": { + "description": "`export` goal", + "documentation": null, + "input_gets": [ + "Get(ExportResults, ExportRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)", + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)" + ], + "input_types": [ + "Console", + "FilteredTargets", + "Workspace", + "UnionMembership", + "BuildRoot", + "DistDir", + "ExportSubsystem" + ], + "name": "pants.core.goals.export.export", + "output_type": "Export", + "provider": "pants.core" + }, + "pants.core.goals.fix.convert_fix_result_to_lint_result": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FixResult" + ], + "name": "pants.core.goals.fix.convert_fix_result_to_lint_result", + "output_type": "LintResult", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix": { + "description": "`fix` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FixSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fix.fix", + "output_type": "Fix", + "provider": "pants.core" + }, + "pants.core.goals.fix.fix_batch": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(FixResult, Batch, ..)" + ], + "input_types": [ + "_FixBatchRequest" + ], + "name": "pants.core.goals.fix.fix_batch", + "output_type": "_FixBatchResult", + "provider": "pants.core" + }, + "pants.core.goals.fmt.fmt": { + "description": "`fmt` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(_FixBatchResult, _FixBatchRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)" + ], + "input_types": [ + "Console", + "Specs", + "FmtSubsystem", + "Workspace", + "UnionMembership" + ], + "name": "pants.core.goals.fmt.fmt", + "output_type": "Fmt", + "provider": "pants.core" + }, + "pants.core.goals.generate_lockfiles.generate_lockfiles_goal": { + "description": "`generate-lockfiles` goal", + "documentation": null, + "input_gets": [ + "Get(KnownUserResolveNames, KnownUserResolveNamesRequest, ..)", + "Get(UserGenerateLockfiles, {RequestedUserResolveNames: .., EnvironmentName: ..})", + "Get(WrappedGenerateLockfile, {GenerateToolLockfileSentinel: .., EnvironmentName: ..})", + "Get(GenerateLockfileResult, {GenerateLockfile: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "UnionMembership", + "GenerateLockfilesSubsystem", + "ChosenLocalEnvironmentName", + "Console", + "GlobalOptions" + ], + "name": "pants.core.goals.generate_lockfiles.generate_lockfiles_goal", + "output_type": "GenerateLockfilesGoal", + "provider": "pants.core" + }, + "pants.core.goals.generate_snapshots.environment_await_generate_snapshots": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(GenerateSnapshotsResult, {GenerateSnapshotsFieldSet: .., EnvironmentName: ..})" + ], + "input_types": [ + "EnvironmentAwareGenerateSnapshotsRequest" + ], + "name": "pants.core.goals.generate_snapshots.environment_await_generate_snapshots", + "output_type": "GenerateSnapshotsResult", + "provider": "pants.core" + }, + "pants.core.goals.generate_snapshots.generate_snapshots": { + "description": "`generate-snapshots` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(GenerateSnapshotsResult, EnvironmentAwareGenerateSnapshotsRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "Workspace" + ], + "name": "pants.core.goals.generate_snapshots.generate_snapshots", + "output_type": "GenerateSnapshots", + "provider": "pants.core" + }, + "pants.core.goals.lint.lint": { + "description": "`lint` goal", + "documentation": null, + "input_gets": [ + "Get(FilteredTargets, Specs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Partitions, PartitionRequest, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(LintResult, Batch, ..)" + ], + "input_types": [ + "Console", + "Workspace", + "Specs", + "LintSubsystem", + "UnionMembership", + "DistDir" + ], + "name": "pants.core.goals.lint.lint", + "output_type": "Lint", + "provider": "pants.core" + }, + "pants.core.goals.package.environment_aware_package": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentName, EnvironmentNameRequest, ..)", + "Get(BuiltPackage, {PackageFieldSet: .., EnvironmentName: ..})" + ], + "input_types": [ + "EnvironmentAwarePackageRequest" + ], + "name": "pants.core.goals.package.environment_aware_package", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.goals.package.find_all_packageable_targets": { + "description": "Find all packageable targets in project", + "documentation": null, + "input_gets": [ + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)" + ], + "input_types": [ + "AllTargets" + ], + "name": "pants.core.goals.package.find_all_packageable_targets", + "output_type": "AllPackageableTargets", + "provider": "pants.core" + }, + "pants.core.goals.package.package_asset": { + "description": "`package` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "Workspace", + "DistDir" + ], + "name": "pants.core.goals.package.package_asset", + "output_type": "Package", + "provider": "pants.core" + }, + "pants.core.goals.publish.package_for_publish": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(PublishProcesses, {PublishRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "PublishProcessesRequest", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.publish.package_for_publish", + "output_type": "PublishProcesses", + "provider": "pants.core" + }, + "pants.core.goals.publish.run_publish": { + "description": "`publish` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(PublishProcesses, PublishProcessesRequest, ..)", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})" + ], + "input_types": [ + "Console", + "PublishSubsystem", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.publish.run_publish", + "output_type": "Publish", + "provider": "pants.core" + }, + "pants.core.goals.repl.run_repl": { + "description": "`repl` goal", + "documentation": null, + "input_gets": [ + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(ReplRequest, ReplImplementation, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "Console", + "ReplSubsystem", + "FilteredTargets", + "UnionMembership", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.repl.run_repl", + "output_type": "Repl", + "provider": "pants.core" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported_RunShellCommand": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.not_supported_RunShellCommand", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DeployJarFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "DockerRunFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_DockerRunFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.docker" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_GoBinaryFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "JavaFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JavaFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "JvmArtifactFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_JvmArtifactFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "KotlinFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_KotlinFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "PexBinaryFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PexBinaryFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PyOxidizerFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "PythonRequirementFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_PythonRequirementFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "ScalaFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_ScalaFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, RunFieldSet, ..)" + ], + "input_types": [ + "SystemBinaryFieldSet" + ], + "name": "pants.core.goals.run._run_in_sandbox_behavior_rule.run_request_hermetic_SystemBinaryFieldSet", + "output_type": "RunInSandboxRequest", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DeployJarFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DeployJarFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DockerRunFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "DockerRunFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_DockerRunFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.docker" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_GoBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GoBinaryFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_GoBinaryFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JavaFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JavaFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JavaFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JvmArtifactFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JvmArtifactFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_JvmArtifactFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_KotlinFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KotlinFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_KotlinFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PexBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PexBinaryFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PexBinaryFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PyOxidizerFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PyOxidizerFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PyOxidizerFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.python.packaging.pyoxidizer" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PythonRequirementFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonRequirementFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_PythonRequirementFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.python" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_RunShellCommand": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "RunShellCommand" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_RunShellCommand", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_ScalaFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ScalaFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_ScalaFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_SystemBinaryFieldSet": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "SystemBinaryFieldSet" + ], + "name": "pants.core.goals.run._unsupported_debug_adapter_rules.get_run_debug_adapter_request_SystemBinaryFieldSet", + "output_type": "RunDebugAdapterRequest", + "provider": "pants.backend.experimental.adhoc" + }, + "pants.core.goals.run.run": { + "description": "`run` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(EnvironmentTarget, EnvironmentNameRequest, ..)", + "Get(RunRequest, RunFieldSet, ..)", + "Get(RunDebugAdapterRequest, RunFieldSet, ..)", + "Effect(InteractiveProcessResult, InteractiveProcess, ..)" + ], + "input_types": [ + "RunSubsystem", + "DebugAdapterSubsystem", + "GlobalOptions", + "Workspace", + "CompleteEnvironmentVars" + ], + "name": "pants.core.goals.run.run", + "output_type": "Run", + "provider": "pants.core" + }, + "pants.core.goals.tailor.determine_all_owned_sources": { + "description": "Determine all files already owned by targets", + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.determine_all_owned_sources", + "output_type": "AllOwnedSources", + "provider": "pants.core" + }, + "pants.core.goals.tailor.edit_build_files": { + "description": "Edit BUILD files with new targets", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "EditBuildFilesRequest", + "TailorSubsystem" + ], + "name": "pants.core.goals.tailor.edit_build_files", + "output_type": "EditedBuildFiles", + "provider": "pants.core" + }, + "pants.core.goals.tailor.rename_conflicting_targets": { + "description": null, + "documentation": "Ensure that no target addresses collide.", + "input_gets": [], + "input_types": [ + "PutativeTargets", + "AllUnexpandedTargets" + ], + "name": "pants.core.goals.tailor.rename_conflicting_targets", + "output_type": "UniquelyNamedPutativeTargets", + "provider": "pants.core" + }, + "pants.core.goals.tailor.restrict_conflicting_sources": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(UnexpandedTargets, RawSpecs, ..)", + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PutativeTarget" + ], + "name": "pants.core.goals.tailor.restrict_conflicting_sources", + "output_type": "DisjointSourcePutativeTarget", + "provider": "pants.core" + }, + "pants.core.goals.tailor.tailor": { + "description": "`tailor` goal", + "documentation": null, + "input_gets": [ + "Get(SpecsPaths, Specs, ..)", + "Get(PutativeTargets, PutativeTargetsRequest, ..)", + "Get(UniquelyNamedPutativeTargets, PutativeTargets, ..)", + "Get(DisjointSourcePutativeTarget, PutativeTarget, ..)", + "Get(EditedBuildFiles, EditBuildFilesRequest, ..)" + ], + "input_types": [ + "TailorSubsystem", + "Console", + "Workspace", + "UnionMembership", + "Specs", + "BuildFileOptions" + ], + "name": "pants.core.goals.tailor.tailor", + "output_type": "TailorGoal", + "provider": "pants.core" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_GoTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_GoTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_HelmUnitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_HelmUnitTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_JunitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_JunitTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ScalatestTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ScalatestTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ShellTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_ShellTestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_Shunit2TestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_adapter_rules.get_test_debug_adapter_request_Shunit2TestRequest", + "output_type": "TestDebugAdapterRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_GoTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_GoTestRequest", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_HelmUnitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_HelmUnitTestRequest", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.helm" + }, + "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_ShellTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Batch" + ], + "name": "pants.core.goals.test._unsupported_debug_rules.get_test_debug_request_ShellTestRequest", + "output_type": "TestDebugRequest", + "provider": "pants.backend.shell" + }, + "pants.core.goals.test.build_runtime_package_dependencies": { + "description": "Build runtime package dependencies for tests", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)" + ], + "input_types": [ + "BuildPackageDependenciesRequest" + ], + "name": "pants.core.goals.test.build_runtime_package_dependencies", + "output_type": "BuiltPackageDependencies", + "provider": "pants.core" + }, + "pants.core.goals.test.get_filtered_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.goals.test.get_filtered_environment", + "output_type": "TestExtraEnv", + "provider": "pants.core" + }, + "pants.core.goals.test.run_tests": { + "description": "`test` goal", + "documentation": null, + "input_gets": [ + "Get(TargetRootsToFieldSets, TargetRootsToFieldSetsRequest, ..)", + "Get(Partitions, {PartitionRequest: .., EnvironmentName: ..})", + "Get(EnvironmentName, SingleEnvironmentNameRequest, ..)", + "Get(TestDebugRequest, {Batch: .., EnvironmentName: ..})", + "Get(TestDebugAdapterRequest, {Batch: .., EnvironmentName: ..})", + "Effect(InteractiveProcessResult, {InteractiveProcess: .., EnvironmentName: ..})", + "Get(TestResult, {Batch: .., EnvironmentName: ..})", + "Get(Digest, MergeDigests, ..)", + "Get(CoverageReports, {CoverageDataCollection: .., EnvironmentName: ..})", + "Get(OpenFiles, OpenFilesRequest, ..)" + ], + "input_types": [ + "Console", + "TestSubsystem", + "DebugAdapterSubsystem", + "Workspace", + "UnionMembership", + "DistDir", + "RunId", + "ChosenLocalEnvironmentName" + ], + "name": "pants.core.goals.test.run_tests", + "output_type": "Test", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_black": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithBlackRequest", + "Black" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_black", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.format_build_file_with_yapf": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Snapshot, CreateDigest, ..)", + "Get(Lockfile, Resolve, ..)", + "Get(LoadedLockfile, LoadedLockfileRequest, ..)", + "Get(VenvPex, PexRequest, ..)", + "Get(ConfigFiles, ConfigFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, VenvPexProcess, ..)", + "Get(Snapshot, Digest, ..)", + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "FormatWithYapfRequest", + "Yapf" + ], + "name": "pants.core.goals.update_build_files.format_build_file_with_yapf", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_fields": { + "description": "Check for deprecated field type names", + "documentation": null, + "input_gets": [ + "Get(FixedBUILDFile, RenameFieldsInFileRequest, ..)" + ], + "input_types": [ + "RenameDeprecatedFieldsRequest" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_fields", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.maybe_rename_deprecated_targets": { + "description": "Check for deprecated target type names", + "documentation": null, + "input_gets": [ + "Get(FixedBUILDFile, RenameTargetsInFileRequest, ..)" + ], + "input_types": [ + "RenameDeprecatedTargetsRequest" + ], + "name": "pants.core.goals.update_build_files.maybe_rename_deprecated_targets", + "output_type": "RewrittenBuildFile", + "provider": "pants.core" + }, + "pants.core.goals.update_build_files.update_build_files": { + "description": "Update all BUILD files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(SpecsPaths, Specs, ..)", + "Get(DigestContents, PathGlobs, ..)", + "Get(RewrittenBuildFile, RewrittenBuildFileRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "UpdateBuildFilesSubsystem", + "BuildFileOptions", + "Console", + "Workspace", + "UnionMembership", + "Specs" + ], + "name": "pants.core.goals.update_build_files.update_build_files", + "output_type": "UpdateBuildFilesGoal", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AsdfToolPathsResult, AsdfToolPathsRequest, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(VersionManagerSearchPaths, VersionManagerSearchPathsRequest, ..)" + ], + "input_types": [ + "_ExpandInterpreterSearchPathsRequest", + "PathEnvironmentVariable" + ], + "name": "pants.core.subsystems.python_bootstrap._expand_interpreter_search_paths", + "output_type": "_SearchPaths", + "provider": "pants.core" + }, + "pants.core.subsystems.python_bootstrap.python_bootstrap": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidatedSearchPaths, ValidateSearchPathsRequest, ..)", + "Get(_SearchPaths, _ExpandInterpreterSearchPathsRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.subsystems.python_bootstrap.python_bootstrap", + "output_type": "PythonBootstrap", + "provider": "pants.core" + }, + "pants.core.target_types.find_all_assets": { + "description": "Find all assets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.core.target_types.find_all_assets", + "output_type": "AllAssetTargets", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_file_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateFileSourceRequest", + "Platform" + ], + "name": "pants.core.target_types.hydrate_file_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.hydrate_resource_source": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(Snapshot, CreateDigest, ..)" + ], + "input_types": [ + "GenerateResourceSourceRequest", + "Platform" + ], + "name": "pants.core.target_types.hydrate_resource_source", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.target_types.map_assets_by_path": { + "description": "Mapping assets by path", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllAssetTargets" + ], + "name": "pants.core.target_types.map_assets_by_path", + "output_type": "AllAssetTargetsByPath", + "provider": "pants.core" + }, + "pants.core.target_types.package_archive_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Digest, CreateArchive, ..)" + ], + "input_types": [ + "ArchiveFieldSet" + ], + "name": "pants.core.target_types.package_archive_target", + "output_type": "BuiltPackage", + "provider": "pants.core" + }, + "pants.core.target_types.relocate_files": { + "description": "Relocating loose files for `relocated_files` targets", + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "RelocateFilesViaCodegenRequest" + ], + "name": "pants.core.target_types.relocate_files", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.download_python_binary": { + "description": "Downloading Python for scripts", + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "_DownloadPythonBuildStandaloneBinaryRequest", + "Platform", + "TarBinary", + "BashBinary", + "PythonBootstrapSubsystem", + "EnvironmentAware" + ], + "name": "pants.core.util_rules.adhoc_binaries.download_python_binary", + "output_type": "_PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PythonBuildStandaloneBinary" + ], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GunzipBinaryRequest", + "GunzipBinary" + ], + "name": "pants.core.util_rules.adhoc_binaries.find_gunzip_wrapper", + "output_type": "GunzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_binaries.get_python_for_scripts": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_PythonBuildStandaloneBinary, _DownloadPythonBuildStandaloneBinaryRequest, ..)" + ], + "input_types": [ + "EnvironmentTarget" + ], + "name": "pants.core.util_rules.adhoc_binaries.get_python_for_scripts", + "output_type": "PythonBuildStandaloneBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "AddExtraSandboxContentsToProcess" + ], + "name": "pants.core.util_rules.adhoc_process_support.add_extra_contents_to_prcess", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "MergeExtraSandboxContents" + ], + "name": "pants.core.util_rules.adhoc_process_support.merge_extra_sandbox_contents", + "output_type": "ExtraSandboxContents", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)", + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "AdhocProcessRequest", + "BashBinary" + ], + "name": "pants.core.util_rules.adhoc_process_support.prepare_adhoc_process", + "output_type": "Process", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.resolve_execution_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(FieldSetsPerTarget, FieldSetsPerTargetRequest, ..)", + "Get(BuiltPackage, EnvironmentAwarePackageRequest, ..)", + "Get(Targets, Addresses, ..)", + "Get(RunInSandboxRequest, RunFieldSet, ..)", + "Get(ExtraSandboxContents, MergeExtraSandboxContents, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ResolveExecutionDependenciesRequest", + "BashBinary" + ], + "name": "pants.core.util_rules.adhoc_process_support.resolve_execution_environment", + "output_type": "ResolvedExecutionDependencies", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.adhoc_process_support.run_adhoc_process": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Process, AdhocProcessRequest, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, {FallibleProcessResult: .., ProductDescription: ..})", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "AdhocProcessRequest" + ], + "name": "pants.core.util_rules.adhoc_process_support.run_adhoc_process", + "output_type": "AdhocProcessResult", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest": { + "description": null, + "documentation": "Backwards-compatibility helper.", + "input_gets": [], + "input_types": [ + "Digest" + ], + "name": "pants.core.util_rules.archive.convert_digest_to_MaybeExtractArchiveRequest", + "output_type": "MaybeExtractArchiveRequest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.create_archive": { + "description": "Creating an archive file", + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(ZipBinary)", + "Get(BashBinary)", + "Get(TarBinary)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "CreateArchive", + "EnvironmentAware" + ], + "name": "pants.core.util_rules.archive.create_archive", + "output_type": "Digest", + "provider": "pants.core" + }, + "pants.core.util_rules.archive.maybe_extract_archive": { + "description": "Extracting an archive file", + "documentation": "If digest contains a single archive file, extract it, otherwise return the input digest.", + "input_gets": [ + "Get(Snapshot, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(UnzipBinary)", + "Get(TarBinary)", + "Get(GunzipBinary)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "MaybeExtractArchiveRequest", + "EnvironmentAware" + ], + "name": "pants.core.util_rules.archive.maybe_extract_archive", + "output_type": "ExtractedArchive", + "provider": "pants.core" + }, + "pants.core.util_rules.asdf.resolve_asdf_tool_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "AsdfToolPathsRequest", + "BuildRoot" + ], + "name": "pants.core.util_rules.asdf.resolve_asdf_tool_paths", + "output_type": "AsdfToolPathsResult", + "provider": "pants.core" + }, + "pants.core.util_rules.config_files.find_config_file": { + "description": "Find config files", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(DigestContents, PathGlobs, ..)" + ], + "input_types": [ + "ConfigFilesRequest" + ], + "name": "pants.core.util_rules.config_files.find_config_file", + "output_type": "ConfigFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.distdir.get_distdir": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GlobalOptions", + "BuildRoot" + ], + "name": "pants.core.util_rules.distdir.get_distdir", + "output_type": "DistDir", + "provider": "pants.core" + }, + "pants.core.util_rules.external_tool.download_external_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DownloadFile, ..)", + "Get(ExtractedArchive, Digest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "ExternalToolRequest" + ], + "name": "pants.core.util_rules.external_tool.download_external_tool", + "output_type": "DownloadedExternalTool", + "provider": "pants.core" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_GoTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "GoTestSubsystem" + ], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_GoTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.go" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_HelmUnitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "HelmUnitTestSubsystem" + ], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_HelmUnitTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.helm" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_JunitTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "JUnit" + ], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_JunitTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.java" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ScalatestTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Scalatest" + ], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ScalatestTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.scala" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ShellTestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "ShellTestSubsystem" + ], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_ShellTestRequest", + "output_type": "Partitions", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_Shunit2TestRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Shunit2" + ], + "name": "pants.core.util_rules.partitions._partition_per_input_field_set_rules.partitioner_Shunit2TestRequest", + "output_type": "Partitions", + "provider": "pants.backend.shell" + }, + "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "OpenApiFormatSubsystem" + ], + "name": "pants.core.util_rules.partitions._partition_per_input_file_rules.partitioner_OpenApiFormatRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.openapi.lint.openapi_format" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_HadolintRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Hadolint" + ], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_HadolintRequest", + "output_type": "Partitions", + "provider": "pants.backend.docker.lint.hadolint" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_PydocstyleRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Pydocstyle" + ], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_PydocstyleRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pydocstyle" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_RuffLintRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Ruff" + ], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_RuffLintRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_ShellcheckRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "Shellcheck" + ], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_ShellcheckRequest", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shellcheck" + }, + "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_SpectralRequest": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "PartitionRequest", + "SpectralSubsystem" + ], + "name": "pants.core.util_rules.partitions._single_partition_field_set_rules.partitioner_SpectralRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.openapi.lint.spectral" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "AddTrailingComma" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AddTrailingCommaRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Autoflake" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_AutoflakeRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.autoflake" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Docformatter" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_DocformatterRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.docformatter" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "GofmtSubsystem" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GofmtRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.go" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "GoogleJavaFormatSubsystem" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_GoogleJavaFormatRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.java.lint.google_java_format" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Isort" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_IsortRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.isort" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "KtlintSubsystem" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_KtlintRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.kotlin.lint.ktlint" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "PyUpgrade" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_PyUpgradeRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.pyupgrade" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Ruff" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_RuffFixRequest", + "output_type": "Partitions", + "provider": "pants.backend.experimental.python.lint.ruff" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Shfmt" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_ShfmtRequest", + "output_type": "Partitions", + "provider": "pants.backend.shell.lint.shfmt" + }, + "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)" + ], + "input_types": [ + "PartitionRequest", + "Yapf" + ], + "name": "pants.core.util_rules.partitions._single_partition_file_rules.partitioner_YapfRequest", + "output_type": "Partitions", + "provider": "pants.backend.python.lint.yapf" + }, + "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths": { + "description": null, + "documentation": "Inspects the directory of a version manager tool like pyenv or nvm to find installations.", + "input_gets": [], + "input_types": [ + "VersionManagerSearchPathsRequest" + ], + "name": "pants.core.util_rules.search_paths.get_un_cachable_version_manager_paths", + "output_type": "VersionManagerSearchPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.search_paths.validate_search_paths": { + "description": null, + "documentation": "Checks for special search path strings, and errors if any are invalid for the environment.\n\nThis will return:\n* The search paths, unaltered, for local/undefined environments, OR\n* The search paths, with invalid tokens removed, if the provided value was unaltered from the\n default value in the options system.\n* The search paths unaltered, if the search paths are all valid tokens for this environment\n\nIf the environment is non-local and there are invalid tokens for those environments, raise\n`ValueError`.", + "input_gets": [], + "input_types": [ + "ValidateSearchPathsRequest" + ], + "name": "pants.core.util_rules.search_paths.validate_search_paths", + "output_type": "ValidatedSearchPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.source_files.determine_source_files": { + "description": "Get all relevant source files", + "documentation": "Merge all `SourceBaseField`s into one Snapshot.", + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFilesRequest" + ], + "name": "pants.core.util_rules.source_files.determine_source_files", + "output_type": "SourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_file_name": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "StrippedFileNameRequest" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_file_name", + "output_type": "StrippedFileName", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_source_roots": { + "description": null, + "documentation": "Removes source roots from a snapshot.\n\nE.g. `src/python/pants/util/strutil.py` -> `pants/util/strutil.py`.", + "input_gets": [ + "Get(Snapshot, DigestSubset, ..)", + "Get(SourceRootsResult, SourceRootsRequest, ..)", + "Get(Snapshot, RemovePrefix, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Snapshot, MergeDigests, ..)" + ], + "input_types": [ + "SourceFiles" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_source_roots", + "output_type": "StrippedSourceFiles", + "provider": "pants.core" + }, + "pants.core.util_rules.stripped_source_files.strip_sources_paths": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourcesPaths" + ], + "name": "pants.core.util_rules.stripped_source_files.strip_sources_paths", + "output_type": "StrippedSourceFileNames", + "provider": "pants.core" + }, + "pants.core.util_rules.subprocess_environment.get_subprocess_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.subprocess_environment.get_subprocess_environment", + "output_type": "SubprocessEnvironmentVars", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.create_binary_shims": { + "description": null, + "documentation": "Creates a bin directory with shims for all requested binaries.\n\nThis can be provided to a `Process` as an `immutable_input_digest`, or can be merged into the\ninput digest.", + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "BinaryShimsRequest", + "BashBinary" + ], + "name": "pants.core.util_rules.system_binaries.create_binary_shims", + "output_type": "BinaryShims", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_binary": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(BashBinary)", + "Get(Digest, CreateDigest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "BinaryPathRequest", + "EnvironmentTarget" + ], + "name": "pants.core.util_rules.system_binaries.find_binary", + "output_type": "BinaryPaths", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cat": { + "description": "Finding the `cat` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_cat", + "output_type": "CatBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_chmod": { + "description": "Finding the `chmod` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_chmod", + "output_type": "ChmodBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_cp": { + "description": "Finding the `cp` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_cp", + "output_type": "CpBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_diff": { + "description": "Finding the `diff` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_diff", + "output_type": "DiffBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_git", + "output_type": "GitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_ln": { + "description": "Finding the `ln` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_ln", + "output_type": "LnBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mkdir": { + "description": "Finding the `mkdir` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_mkdir", + "output_type": "MkdirBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mktemp": { + "description": "Finding the `mktempt` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_mktemp", + "output_type": "MktempBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_mv": { + "description": "Finding the `mv` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_mv", + "output_type": "MvBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_open": { + "description": "Finding the `open` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_open", + "output_type": "OpenBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_readlink": { + "description": "Finding the `readlink` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_readlink", + "output_type": "ReadlinkBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_tar": { + "description": "Finding the `tar` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "Platform", + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_tar", + "output_type": "TarBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_touch": { + "description": "Finding the `touch` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_touch", + "output_type": "TouchBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_unzip": { + "description": "Finding the `unzip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_unzip", + "output_type": "UnzipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.find_zip": { + "description": "Finding the `zip` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.find_zip", + "output_type": "ZipBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.get_bash": { + "description": "Finding the `bash` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.get_bash", + "output_type": "BashBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git": { + "description": "Finding the `git` binary", + "documentation": null, + "input_gets": [ + "Get(BinaryPaths, BinaryPathRequest, ..)" + ], + "input_types": [ + "EnvironmentAware" + ], + "name": "pants.core.util_rules.system_binaries.maybe_find_git", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.system_binaries.maybe_find_git_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "MaybeGitBinaryRequest", + "MaybeGitBinary" + ], + "name": "pants.core.util_rules.system_binaries.maybe_find_git_wrapper", + "output_type": "MaybeGitBinary", + "provider": "pants.core" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateWrapSourceSourcesRequest" + ], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_GoPackageSourcesField", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.go" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateWrapSourceSourcesRequest" + ], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_JavaSourceField", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.java" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateWrapSourceSourcesRequest" + ], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_KotlinSourceField", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateWrapSourceSourcesRequest" + ], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_PythonSourceField", + "output_type": "GeneratedSources", + "provider": "pants.backend.python" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateWrapSourceSourcesRequest" + ], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ResourceSourceField", + "output_type": "GeneratedSources", + "provider": "pants.core" + }, + "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, Digest, ..)" + ], + "input_types": [ + "GenerateWrapSourceSourcesRequest" + ], + "name": "pants.core.util_rules.wrap_source.wrap_source_rule_and_target.wrap_source_ScalaSourceField", + "output_type": "GeneratedSources", + "provider": "pants.backend.experimental.scala" + }, + "pants.engine.internals.graph._determine_target_adaptor_and_type": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TargetAdaptor, TargetAdaptorRequest, ..)" + ], + "input_types": [ + "_RequestAdaptorAndType", + "RegisteredTargetTypes" + ], + "name": "pants.engine.internals.graph._determine_target_adaptor_and_type", + "output_type": "_AdaptorAndType", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.coarsened_targets": { + "description": "Resolve coarsened targets", + "documentation": null, + "input_gets": [ + "Get(_DependencyMapping, _DependencyMappingRequest, ..)" + ], + "input_types": [ + "CoarsenedTargetsRequest", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.coarsened_targets", + "output_type": "CoarsenedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.coarsened_targets_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Addresses" + ], + "name": "pants.engine.internals.graph.coarsened_targets_request", + "output_type": "CoarsenedTargetsRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request": { + "description": null, + "documentation": "This rule discards any deps predicate from DependenciesRequest.\n\nCalculating ExplicitlyProvidedDependencies does not use any deps traversal predicates as it is\nmeant to list all explicit deps from the given field. By stripping the predicate from the\nrequest, we ensure that the cache key for ExplicitlyProvidedDependencies calculation does not\ninclude the predicate increasing the cache-hit rate.", + "input_gets": [], + "input_types": [ + "DependenciesRequest" + ], + "name": "pants.engine.internals.graph.convert_dependencies_request_to_explicitly_provided_dependencies_request", + "output_type": "ExplicitlyProvidedDependenciesRequest", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.determine_explicitly_provided_dependencies": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)" + ], + "input_types": [ + "ExplicitlyProvidedDependenciesRequest", + "UnionMembership", + "RegisteredTargetTypes", + "SubprojectRoots" + ], + "name": "pants.engine.internals.graph.determine_explicitly_provided_dependencies", + "output_type": "ExplicitlyProvidedDependencies", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_subproject_roots": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GlobalOptions" + ], + "name": "pants.engine.internals.graph.extract_subproject_roots", + "output_type": "SubprojectRoots", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.extract_unmatched_build_file_globs": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GlobalOptions" + ], + "name": "pants.engine.internals.graph.extract_unmatched_build_file_globs", + "output_type": "UnmatchedBuildFileGlobs", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.field_defaults": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FieldDefaultFactoryResult, FieldDefaultFactoryRequest, ..)" + ], + "input_types": [ + "UnionMembership" + ], + "name": "pants.engine.internals.graph.field_defaults", + "output_type": "FieldDefaults", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_targets": { + "description": "Find all targets in the project", + "documentation": null, + "input_gets": [ + "Get(Targets, RawSpecsWithoutFileOwners, ..)" + ], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_targets", + "output_type": "AllTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_all_unexpanded_targets": { + "description": "Find all (unexpanded) targets in the project", + "documentation": null, + "input_gets": [ + "Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)" + ], + "input_types": [], + "name": "pants.engine.internals.graph.find_all_unexpanded_targets", + "output_type": "AllUnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_owners": { + "description": "Find which targets own certain files", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(FilteredTargets, RawSpecsWithoutFileOwners, ..)", + "Get(Targets, RawSpecsWithoutFileOwners, ..)", + "Get(UnexpandedTargets, RawSpecsWithoutFileOwners, ..)", + "Get(BuildFileAddress, BuildFileAddressRequest, ..)" + ], + "input_types": [ + "OwnersRequest", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.find_owners", + "output_type": "Owners", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.find_valid_field_sets": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FieldSetsPerTargetRequest", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.find_valid_field_sets", + "output_type": "FieldSetsPerTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.generate_file_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SourcesPaths, SourcesPathsRequest, ..)", + "Get(TargetFilesGeneratorSettings, TargetFilesGeneratorSettingsRequest, ..)" + ], + "input_types": [ + "GenerateFileTargets", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.generate_file_targets", + "output_type": "GeneratedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.hydrate_sources": { + "description": "Hydrate the `sources` field", + "documentation": null, + "input_gets": [ + "Get(Snapshot, PathGlobs, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(GeneratedSources, GenerateSourcesRequest, ..)" + ], + "input_types": [ + "HydrateSourcesRequest", + "UnmatchedBuildFileGlobs", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.hydrate_sources", + "output_type": "HydratedSources", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_all_generator_target_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(AddressFamilies, RawSpecsWithoutFileOwners, ..)", + "Get(ResolvedTargetGeneratorRequests, ResolveTargetGeneratorRequests, ..)" + ], + "input_types": [ + "ResolveAllTargetGeneratorRequests" + ], + "name": "pants.engine.internals.graph.resolve_all_generator_target_requests", + "output_type": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_dependencies": { + "description": "Resolve direct dependencies of target", + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)", + "Get(ExplicitlyProvidedDependencies, DependenciesRequest, ..)", + "Get(InferredDependencies, {InferDependenciesRequest: .., EnvironmentName: ..})", + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})", + "Get(Address, AddressInput, ..)", + "Get(ValidatedDependencies, {ValidateDependenciesRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "DependenciesRequest", + "TargetTypesToGenerateTargetsRequests", + "UnionMembership", + "SubprojectRoots", + "FieldDefaults", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_dependencies", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_generator_target_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_AdaptorAndType, _RequestAdaptorAndType, ..)", + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "ResolveTargetGeneratorRequests", + "UnionMembership", + "TargetTypesToGenerateTargetsRequests", + "UnmatchedBuildFileGlobs" + ], + "name": "pants.engine.internals.graph.resolve_generator_target_requests", + "output_type": "ResolvedTargetGeneratorRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_source_paths": { + "description": "Resolve `sources` field file names", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)" + ], + "input_types": [ + "SourcesPathsRequest", + "UnmatchedBuildFileGlobs" + ], + "name": "pants.engine.internals.graph.resolve_source_paths", + "output_type": "SourcesPaths", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "WrappedTargetRequest", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_target", + "output_type": "WrappedTarget", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_for_bootstrapping": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_AdaptorAndType, _RequestAdaptorAndType, ..)" + ], + "input_types": [ + "WrappedTargetRequest", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.resolve_target_for_bootstrapping", + "output_type": "WrappedTargetForBootstrap", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_target_parametrizations": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_AdaptorAndType, _RequestAdaptorAndType, ..)", + "Get(ResolvedTargetGeneratorRequests, ResolveTargetGeneratorRequests, ..)", + "Get(GeneratedTargets, GenerateTargetsRequest, ..)" + ], + "input_types": [ + "_TargetParametrizationsRequest", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.resolve_target_parametrizations", + "output_type": "_TargetParametrizations", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(_TargetParametrizations, {_TargetParametrizationsRequest: .., EnvironmentName: ..})" + ], + "input_types": [ + "UnexpandedTargets", + "TargetTypesToGenerateTargetsRequests", + "ChosenLocalEnvironmentName" + ], + "name": "pants.engine.internals.graph.resolve_targets", + "output_type": "Targets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unexpanded_targets": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "Addresses" + ], + "name": "pants.engine.internals.graph.resolve_unexpanded_targets", + "output_type": "UnexpandedTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.resolve_unparsed_address_inputs": { + "description": "Resolve addresses", + "documentation": null, + "input_gets": [ + "Get(MaybeAddress, AddressInput, ..)", + "Get(Address, AddressInput, ..)", + "Get(WrappedTarget, WrappedTargetRequest, ..)" + ], + "input_types": [ + "UnparsedAddressInputs", + "SubprojectRoots" + ], + "name": "pants.engine.internals.graph.resolve_unparsed_address_inputs", + "output_type": "Addresses", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.target_types_to_generate_targets_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnionMembership" + ], + "name": "pants.engine.internals.graph.target_types_to_generate_targets_requests", + "output_type": "TargetTypesToGenerateTargetsRequests", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_dependency_mapping": { + "description": null, + "documentation": "This uses iteration, rather than recursion, so that we can tolerate dependency cycles.\n\nUnlike a traditional BFS algorithm, we batch each round of traversals via `MultiGet` for\nimproved performance / concurrency.", + "input_gets": [ + "Get(UnexpandedTargets, Addresses, ..)", + "Get(Targets, DependenciesRequest, ..)", + "Get(UnexpandedTargets, DependenciesRequest, ..)" + ], + "input_types": [ + "_DependencyMappingRequest" + ], + "name": "pants.engine.internals.graph.transitive_dependency_mapping", + "output_type": "_DependencyMapping", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.internals.graph.transitive_targets": { + "description": "Resolve transitive targets", + "documentation": "Find all the targets transitively depended upon by the target roots.", + "input_gets": [ + "Get(_DependencyMapping, _DependencyMappingRequest, ..)", + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(TransitivelyExcludeDependencies, {TransitivelyExcludeDependenciesRequest: .., EnvironmentName: ..})", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "TransitiveTargetsRequest", + "ChosenLocalEnvironmentName", + "UnionMembership" + ], + "name": "pants.engine.internals.graph.transitive_targets", + "output_type": "TransitiveTargets", + "provider": "pants.backend.experimental.go" + }, + "pants.engine.process.fallible_to_exec_result_or_raise": { + "description": null, + "documentation": "Converts a FallibleProcessResult to a ProcessResult or raises an error.", + "input_gets": [], + "input_types": [ + "FallibleProcessResult", + "ProductDescription", + "KeepSandboxes" + ], + "name": "pants.engine.process.fallible_to_exec_result_or_raise", + "output_type": "ProcessResult", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.get_multi_platform_request_description": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "Process" + ], + "name": "pants.engine.process.get_multi_platform_request_description", + "output_type": "ProductDescription", + "provider": "pants.backend.experimental.helm" + }, + "pants.engine.process.run_proc_with_retry": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)" + ], + "input_types": [ + "ProcessWithRetries" + ], + "name": "pants.engine.process.run_proc_with_retry", + "output_type": "ProcessResultWithRetries", + "provider": "pants.backend.experimental.helm" + }, + "pants.goal.stats_aggregator.construct_callback": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StatsAggregatorCallbackFactoryRequest", + "StatsAggregatorSubsystem" + ], + "name": "pants.goal.stats_aggregator.construct_callback", + "output_type": "WorkunitsCallbackFactory", + "provider": "pants.core" + }, + "pants.jvm.bsp.compile.notify_for_classpath_entry": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "BSPClasspathEntryRequest", + "BSPContext" + ], + "name": "pants.jvm.bsp.compile.notify_for_classpath_entry", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolveKey, CoarsenedTargets, ..)", + "Get(ClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "ClasspathEntryRequestFactory" + ], + "name": "pants.jvm.classpath.classpath", + "output_type": "Classpath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.classpath.loose_classfiles": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "ClasspathEntry", + "UnzipBinary" + ], + "name": "pants.jvm.classpath.loose_classfiles", + "output_type": "LooseClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.calculate_jvm_request_types": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "UnionMembership" + ], + "name": "pants.jvm.compile.calculate_jvm_request_types", + "output_type": "ClasspathEntryRequestFactory", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.classpath_dependency_requests": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "ClasspathEntryRequestFactory", + "ClasspathDependenciesRequest" + ], + "name": "pants.jvm.compile.classpath_dependency_requests", + "output_type": "ClasspathEntryRequests", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.compile_classpath_entries": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntry, ClasspathEntryRequest, ..)" + ], + "input_types": [ + "ClasspathEntryRequests" + ], + "name": "pants.jvm.compile.compile_classpath_entries", + "output_type": "FallibleClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.compile.required_classfiles": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "FallibleClasspathEntry" + ], + "name": "pants.jvm.compile.required_classfiles", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping": { + "description": null, + "documentation": "Implements the mapping logic from the `jvm_artifact` and `java-infer` help.", + "input_gets": [], + "input_types": [ + "JavaInferSubsystem", + "AvailableThirdPartyArtifacts", + "AllJvmTypeProvidingTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.compute_java_third_party_symbol_mapping", + "output_type": "ThirdPartySymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets": { + "description": "Find all jvm_artifact targets in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_artifact_targets", + "output_type": "AllJvmArtifactTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields": { + "description": "Find all targets with experimental_provides fields in project", + "documentation": null, + "input_gets": [], + "input_types": [ + "AllTargets" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_all_jvm_provides_fields", + "output_type": "AllJvmTypeProvidingTargets", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "AllJvmArtifactTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.dependency_inference.artifact_mapper.find_available_third_party_artifacts", + "output_type": "AvailableThirdPartyArtifacts", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(SymbolMap, FirstPartyMappingRequest, ..)" + ], + "input_types": [ + "UnionMembership", + "AllJvmTypeProvidingTargets", + "JvmSubsystem", + "ThirdPartySymbolMapping" + ], + "name": "pants.jvm.dependency_inference.symbol_mapper.merge_symbol_mappings", + "output_type": "SymbolMapping", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.determine_jvm_user_resolves": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "KnownJVMUserResolveNamesRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.determine_jvm_user_resolves", + "output_type": "KnownUserResolveNames", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.generate_jvm_lockfile": { + "description": "Generate JVM lockfile", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "GenerateJvmLockfile", + "GenerateLockfilesSubsystem" + ], + "name": "pants.jvm.goals.lockfile.generate_jvm_lockfile", + "output_type": "GenerateLockfileResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.setup_user_lockfile_requests": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfile, _ValidateJvmArtifactsRequest, ..)" + ], + "input_types": [ + "RequestedJVMUserResolveNames", + "AllTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.setup_user_lockfile_requests", + "output_type": "UserGenerateLockfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ValidateJvmArtifactsForResolveResult, ValidateJvmArtifactsForResolveRequest, ..)" + ], + "input_types": [ + "_ValidateJvmArtifactsRequest", + "UnionMembership", + "JvmSubsystem" + ], + "name": "pants.jvm.goals.lockfile.validate_jvm_artifacts_for_resolve", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GenerateJvmLockfile" + ], + "name": "pants.jvm.goals.lockfile.wrap_jvm_lockfile_request", + "output_type": "WrappedGenerateLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.build_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.jvm.jar_tool.jar_tool.build_jar_tool", + "output_type": "JarToolCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JarToolGenerateLockfileSentinel" + ], + "name": "pants.jvm.jar_tool.jar_tool.generate_jartool_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jar_tool.jar_tool.run_jar_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarToolGenerateLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "JarToolRequest", + "InternalJdk", + "JarToolCompiledClassfiles" + ], + "name": "pants.jvm.jar_tool.jar_tool.run_jar_tool", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.fetch_nailgun": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [], + "name": "pants.jvm.jdk_rules.fetch_nailgun", + "output_type": "Nailgun", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.internal_jdk": { + "description": null, + "documentation": "Creates a `JdkEnvironment` object based on the JVM subsystem options.\n\nThis is used for providing a predictable JDK version for Pants' internal usage rather than for\nmatching compatibility with source files (e.g. compilation/testing).", + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)" + ], + "input_types": [ + "JvmSubsystem" + ], + "name": "pants.jvm.jdk_rules.internal_jdk", + "output_type": "InternalJdk", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.jvm_process": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "JvmProcess", + "JvmSubsystem", + "GlobalOptions" + ], + "name": "pants.jvm.jdk_rules.jvm_process", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.jdk_rules.prepare_jdk_environment": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleProcessResult, Process, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "JvmSubsystem", + "EnvironmentAware", + "Coursier", + "Nailgun", + "BashBinary", + "JdkRequest", + "EnvironmentTarget" + ], + "name": "pants.jvm.jdk_rules.prepare_jdk_environment", + "output_type": "JdkEnvironment", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.deploy_jar_classpath": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)" + ], + "input_types": [ + "DeployJarClasspathEntryRequest" + ], + "name": "pants.jvm.package.deploy_jar.deploy_jar_classpath", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.deploy_jar.package_deploy_jar": { + "description": null, + "documentation": "Constructs a deploy (\"fat\") JAR file by\n1. Resolving/compiling a Classpath for the `root_address` target,\n2. Creating a deploy jar with a valid ZIP index and deduplicated entries\n3. (optionally) Stripping the jar of all metadata that may cause it to be non-reproducible (https://reproducible-builds.org)\n4. (optionally) Apply shading rules to the bytecode inside the jar file", + "input_gets": [ + "Get(Classpath, Addresses, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, JarToolRequest, ..)", + "Get(Digest, StripJarRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)" + ], + "input_types": [ + "JvmSubsystem", + "DeployJarFieldSet" + ], + "name": "pants.jvm.package.deploy_jar.package_deploy_jar", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.package_war": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Classpath, DependenciesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ShadedJar, ShadeJarRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(RenderedWarContent, RenderWarContentRequest, ..)", + "Get(RenderedWarDeploymentDescriptor, RenderWarDeploymentDescriptorRequest, ..)", + "Get(ProcessResult, Process, ..)" + ], + "input_types": [ + "PackageWarFileFieldSet", + "BashBinary", + "ZipBinary" + ], + "name": "pants.jvm.package.war.package_war", + "output_type": "BuiltPackage", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_content": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Addresses, UnparsedAddressInputs, ..)", + "Get(Targets, Addresses, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "RenderWarContentRequest" + ], + "name": "pants.jvm.package.war.render_war_content", + "output_type": "RenderedWarContent", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.package.war.render_war_deployment_descriptor": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(HydratedSources, HydrateSourcesRequest, ..)", + "Get(DigestEntries, Digest, ..)", + "Get(Digest, CreateDigest, ..)" + ], + "input_types": [ + "RenderWarDeploymentDescriptorRequest" + ], + "name": "pants.jvm.package.war.render_war_deployment_descriptor", + "output_type": "RenderedWarDeploymentDescriptor", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile": { + "description": null, + "documentation": "Fetch every artifact in a lockfile.", + "input_gets": [ + "Get(ClasspathEntry, CoursierLockfileEntry, ..)" + ], + "input_types": [ + "CoursierResolvedLockfile" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_lockfile", + "output_type": "ResolvedClasspathEntries", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord": { + "description": null, + "documentation": "Run `coursier fetch --intransitive` to fetch a single artifact.\n\nThis rule exists to permit efficient subsetting of a \"global\" classpath\nin the form of a lockfile. Callers can determine what subset of dependencies\nfrom the lockfile are needed for a given target, then request those\nlockfile entries individually.\n\nBy fetching only one entry at a time, we maximize our cache efficiency. If instead\nwe fetched the entire subset that the caller wanted, there would be a different cache\nkey for every possible subset.\n\nThis rule also guarantees exact reproducibility. If all caches have been\nremoved, `coursier fetch` will re-download the artifact, and this rule will\nconfirm that what was downloaded matches exactly (by content digest) what\nwas specified in the lockfile (what Coursier originally downloaded).", + "input_gets": [ + "Get(Targets, UnparsedAddressInputs, ..)", + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "CoursierLockfileEntry" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_fetch_one_coord", + "output_type": "ClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile": { + "description": null, + "documentation": "Run `coursier fetch ...` against a list of Maven coordinates and capture the result.\n\nThis rule does two things in a single Process invocation:\n\n * Runs `coursier fetch` to let Coursier do the heavy lifting of resolving\n dependencies and downloading resolved artifacts (jars, etc).\n * Copies the resolved artifacts into the Process output directory, capturing\n the artifacts as content-addressed `Digest`s.\n\nIt's important that this happens in the same process, since the process isn't\nguaranteed to run on the same machine as the rule, nor is a subsequent process\ninvocation. This guarantees that whatever Coursier resolved, it was fully\ncaptured into Pants' content addressed artifact storage.\n\nNote however that we still get the benefit of Coursier's \"global\" cache if it\nhad already been run on the machine where the `coursier fetch` runs, so rerunning\n`coursier fetch` tends to be fast in practice.\n\nFinally, this rule bundles up the result into a `CoursierResolvedLockfile`. This\ndata structure encapsulates everything necessary to either materialize the\nresolved dependencies to a classpath for Java invocations, or to write the\nlockfile out to the workspace to hermetically freeze the result of the resolve.", + "input_gets": [ + "Get(CoursierResolveInfo, ArtifactRequirements, ..)", + "Get(ProcessResult, CoursierFetchProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(DigestContents, Digest, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(FileDigest, ExtractFileDigest, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.coursier_resolve_lockfile", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.fetch_with_coursier": { + "description": "Fetch with coursier", + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ClasspathEntry, CoursierLockfileEntry, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierFetchRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.fetch_with_coursier", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DigestContents, Digest, ..)" + ], + "input_types": [ + "CoursierResolveKey" + ], + "name": "pants.jvm.resolve.coursier_fetch.get_coursier_lockfile_for_resolve", + "output_type": "CoursierResolvedLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(CoursierResolvedLockfile, ArtifactRequirements, ..)", + "Get(Snapshot, PathGlobs, ..)", + "Get(CoursierResolvedLockfile, CoursierResolveKey, ..)", + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)", + "Get(ResolvedClasspathEntries, CoursierResolvedLockfile, ..)", + "Get(Snapshot, MergeDigests, ..)", + "Get(Snapshot, AddPrefix, ..)" + ], + "input_types": [ + "ToolClasspathRequest" + ], + "name": "pants.jvm.resolve.coursier_fetch.materialize_classpath_for_tool", + "output_type": "ToolClasspath", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, CreateDigest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ArtifactRequirements" + ], + "name": "pants.jvm.resolve.coursier_fetch.prepare_coursier_resolve_info", + "output_type": "CoursierResolveInfo", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets": { + "description": null, + "documentation": "Selects and validates (transitively) a single resolve for a set of roots in a compile graph.\n\nIn most cases, a `CoursierResolveKey` should be requested for a single `CoarsenedTarget` root,\nwhich avoids coupling un-related roots unnecessarily. But in other cases, a single compatible\nresolve is required for multiple roots (such as when running a `repl` over unrelated code), and\nin that case there might be multiple CoarsenedTargets.", + "input_gets": [ + "Get(Digest, PathGlobs, ..)" + ], + "input_types": [ + "CoarsenedTargets", + "JvmSubsystem" + ], + "name": "pants.jvm.resolve.coursier_fetch.select_coursier_resolve_for_targets", + "output_type": "CoursierResolveKey", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "BashBinary", + "Coursier", + "CoursierFetchProcess" + ], + "name": "pants.jvm.resolve.coursier_setup.invoke_coursier_wrapper", + "output_type": "Process", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.coursier_setup.setup_coursier": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(DownloadedExternalTool, ExternalToolRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "CoursierSubsystem", + "PythonBuildStandaloneBinary", + "Platform" + ], + "name": "pants.jvm.resolve.coursier_setup.setup_coursier", + "output_type": "Coursier", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Address, AddressInput, ..)", + "Get(Targets, Addresses, ..)" + ], + "input_types": [ + "GatherJvmCoordinatesRequest" + ], + "name": "pants.jvm.resolve.jvm_tool.gather_coordinates_for_jvm_lockfile", + "output_type": "ArtifactRequirements", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(ArtifactRequirements, GatherJvmCoordinatesRequest, ..)" + ], + "input_types": [ + "GenerateJvmLockfileFromTool" + ], + "name": "pants.jvm.resolve.jvm_tool.setup_lockfile_request_from_tool", + "output_type": "GenerateJvmLockfile", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.resources.assemble_resources_jar": { + "description": "Assemble resources", + "documentation": null, + "input_gets": [ + "Get(FallibleClasspathEntries, ClasspathEntryRequests, ..)", + "Get(FallibleClasspathEntries, ClasspathDependenciesRequest, ..)", + "Get(StrippedSourceFiles, SourceFilesRequest, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Digest, MergeDigests, ..)" + ], + "input_types": [ + "ZipBinary", + "BashBinary", + "TouchBinary", + "JvmSubsystem", + "JvmResourcesRequest" + ], + "name": "pants.jvm.resources.assemble_resources_jar", + "output_type": "FallibleClasspathEntry", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run.create_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(CoarsenedTargets, Addresses, ..)", + "Get(Classpath, CoarsenedTargets, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(FallibleProcessResult, Process, ..)", + "Get(ProcessResult, Process, ..)", + "Get(Snapshot, Digest, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "GenericJvmRunRequest", + "UnzipBinary" + ], + "name": "pants.jvm.run.create_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.run_deploy_jar.create_deploy_jar_run_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(BuiltPackage, DeployJarFieldSet, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "DeployJarFieldSet" + ], + "name": "pants.jvm.run_deploy_jar.create_deploy_jar_run_request", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JarJarGeneratorLockfileSentinel", + "JarJar" + ], + "name": "pants.jvm.shading.jarjar.generate_jarjar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.shading.rules.shade_jar": { + "description": "Applies shading rules to a JAR file", + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, JarJarGeneratorLockfileSentinel, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)", + "Get(Digest, AddPrefix, ..)" + ], + "input_types": [ + "ShadeJarRequest", + "InternalJdk", + "JarJar" + ], + "name": "pants.jvm.shading.rules.shade_jar", + "output_type": "ShadedJar", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.build_processors": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, CreateDigest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "InternalJdk" + ], + "name": "pants.jvm.strip_jar.strip_jar.build_processors", + "output_type": "StripJarCompiledClassfiles", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "StripJarToolLockfileSentinel" + ], + "name": "pants.jvm.strip_jar.strip_jar.generate_strip_jar_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.strip_jar.strip_jar.strip_jar": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(GenerateJvmLockfileFromTool, StripJarToolLockfileSentinel, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(Digest, AddPrefix, ..)", + "Get(ProcessResult, JvmProcess, ..)", + "Get(Digest, RemovePrefix, ..)" + ], + "input_types": [ + "StripJarCompiledClassfiles", + "InternalJdk", + "StripJarRequest" + ], + "name": "pants.jvm.strip_jar.strip_jar.strip_jar", + "output_type": "Digest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, GenericJvmRunRequest, ..)" + ], + "input_types": [ + "JavaFieldSet" + ], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JavaFieldSet", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, GenericJvmRunRequest, ..)" + ], + "input_types": [ + "JvmArtifactFieldSet" + ], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_JvmArtifactFieldSet", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, GenericJvmRunRequest, ..)" + ], + "input_types": [ + "KotlinFieldSet" + ], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_KotlinFieldSet", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.kotlin" + }, + "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(RunRequest, GenericJvmRunRequest, ..)" + ], + "input_types": [ + "ScalaFieldSet" + ], + "name": "pants.jvm.target_types._jvm_source_run_request_rule.jvm_source_run_request_ScalaFieldSet", + "output_type": "RunRequest", + "provider": "pants.backend.experimental.scala" + }, + "pants.jvm.target_types.jvm_resolve_field_default_factory": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JvmResolveFieldDefaultFactoryRequest", + "JvmSubsystem" + ], + "name": "pants.jvm.target_types.jvm_resolve_field_default_factory", + "output_type": "FieldDefaultFactoryResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.generate_junit_lockfile_request": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "JunitToolLockfileSentinel", + "JUnit" + ], + "name": "pants.jvm.test.junit.generate_junit_lockfile_request", + "output_type": "GenerateJvmLockfileFromTool", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.run_junit_test": { + "description": "Run JUnit", + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(FallibleProcessResult, JvmProcess, ..)", + "Get(Digest, DigestSubset, ..)", + "Get(Snapshot, RemovePrefix, ..)" + ], + "input_types": [ + "TestSubsystem", + "Batch" + ], + "name": "pants.jvm.test.junit.run_junit_test", + "output_type": "TestResult", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_debug_request": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(TestSetup, TestSetupRequest, ..)", + "Get(Process, JvmProcess, ..)" + ], + "input_types": [ + "Batch" + ], + "name": "pants.jvm.test.junit.setup_junit_debug_request", + "output_type": "TestDebugRequest", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.test.junit.setup_junit_for_target": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(JdkEnvironment, JdkRequest, ..)", + "Get(TransitiveTargets, TransitiveTargetsRequest, ..)", + "Get(GenerateJvmLockfileFromTool, JunitToolLockfileSentinel, ..)", + "Get(Classpath, Addresses, ..)", + "Get(ToolClasspath, ToolClasspathRequest, ..)", + "Get(SourceFiles, SourceFilesRequest, ..)", + "Get(Digest, MergeDigests, ..)", + "Get(EnvironmentVars, EnvironmentVarsRequest, ..)" + ], + "input_types": [ + "TestSetupRequest", + "JvmSubsystem", + "JUnit", + "TestSubsystem", + "TestExtraEnv" + ], + "name": "pants.jvm.test.junit.setup_junit_for_target", + "output_type": "TestSetup", + "provider": "pants.backend.experimental.java" + }, + "pants.jvm.util_rules.digest_to_file_digest": { + "description": null, + "documentation": null, + "input_gets": [ + "Get(Digest, DigestSubset, ..)", + "Get(DigestEntries, Digest, ..)" + ], + "input_types": [ + "ExtractFileDigest" + ], + "name": "pants.jvm.util_rules.digest_to_file_digest", + "output_type": "FileDigest", + "provider": "pants.backend.experimental.java" + }, + "pants.source.source_root.all_roots": { + "description": "Compute all source roots", + "documentation": null, + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootConfig" + ], + "name": "pants.source.source_root.all_roots", + "output_type": "AllSourceRoots", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_root": { + "description": null, + "documentation": "Rule to request a SourceRoot that may not exist.", + "input_gets": [ + "Get(Paths, PathGlobs, ..)", + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest", + "SourceRootConfig" + ], + "name": "pants.source.source_root.get_optional_source_root", + "output_type": "OptionalSourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_optional_source_roots": { + "description": null, + "documentation": "Rule to request source roots that may not exist.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_optional_source_roots", + "output_type": "OptionalSourceRootsResult", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_root": { + "description": null, + "documentation": "Convenience rule to allow callers to request a SourceRoot directly.\n\nThat way callers don't have to unpack an OptionalSourceRoot if they know they expect a\nSourceRoot to exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRoot, SourceRootRequest, ..)" + ], + "input_types": [ + "SourceRootRequest" + ], + "name": "pants.source.source_root.get_source_root", + "output_type": "SourceRoot", + "provider": "pants.core" + }, + "pants.source.source_root.get_source_roots": { + "description": null, + "documentation": "Convenience rule to allow callers to request SourceRoots that must exist.\n\nThat way callers don't have to unpack OptionalSourceRoots if they know they expect a SourceRoot\nto exist and are willing to error if it doesn't.", + "input_gets": [ + "Get(OptionalSourceRootsResult, SourceRootsRequest, ..)" + ], + "input_types": [ + "SourceRootsRequest" + ], + "name": "pants.source.source_root.get_source_roots", + "output_type": "SourceRootsResult", + "provider": "pants.core" + }, + "pants.vcs.git.get_git_worktree": { + "description": null, + "documentation": null, + "input_gets": [], + "input_types": [ + "GitWorktreeRequest", + "MaybeGitBinary" + ], + "name": "pants.vcs.git.get_git_worktree", + "output_type": "MaybeGitWorktree", + "provider": "pants.core" + } + }, + "name_to_target_type_info": { + "_generator_sources_helper": { + "alias": "_generator_sources_helper", + "description": "A private helper target type used by some target generators.\n\nThis tracks their `source` / `sources` field so that `--changed-since --changed-dependents` works properly for generated targets.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.python", + "summary": "A private helper target type used by some target generators." + }, + "_lockfile": { + "alias": "_lockfile", + "description": "A target for lockfiles in order to include them in the dependency graph of other targets.\n\nThis tracks them so that `--changed-since --changed-dependents` works properly for targets relying on a particular lockfile.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A target for lockfiles in order to include them in the dependency graph of other targets." + }, + "_lockfiles": { + "alias": "_lockfiles", + "description": "Generate a `_lockfile` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.lock']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `_lockfile` target for each file in the `sources` field." + }, + "adhoc_tool": { + "alias": "adhoc_tool", + "description": "Execute any runnable target for its side effects.\n\nExample BUILD file:\n\n adhoc_tool(\n runnable=\":python_source\",\n args=[\"\"],\n execution_dependencies=[\":scripts\"],\n output_directories=[\"results/\"],\n output_files=[\"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runnable", + "default": null, + "description": "Address to a target that can be invoked by the `run` goal (and does not set `run_in_sandbox_behavior=NOT_SUPPORTED`). This will be executed along with any arguments specified by `args`, in a sandbox with that target's transitive dependencies, along with the transitive dependencies specified by `execution_dependencies`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "args", + "default": "()", + "description": "Extra arguments to pass into the `runnable` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that need to be present (as transitive dependencies) whenever the outputs of this target are consumed (including as dependencies).\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\nValues are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stdout", + "default": null, + "description": "A filename to capture the contents of `stdout` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "stderr", + "default": null, + "description": "A filename to capture the contents of `stderr` to. Relative paths are relative to the value of `workdir`, absolute paths start at the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "Execute any runnable target for its side effects." + }, + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `scie-pants-linux-x86_64 package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "provider": "", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "provider": "pants.core", + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "duplicate_policy", + "default": "(duplicate_rule(pattern='^META-INF/services/', action='concat_text'), duplicate_rule(pattern='^META-INF/LICENSE', action='skip'))", + "description": "A list of the rules to apply when duplicate file entries are found in the final assembled JAR file.\n\nWhen defining a duplicate policy, just add `duplicate_rule` directives to this field as follows:\n\nExample:\n\n duplicate_policy=[\n duplicate_rule(pattern=\"^META-INF/services\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^reference\\.conf\", action=\"concat_text\"),\n duplicate_rule(pattern=\"^org/apache/commons\", action=\"throw\"),\n ]\n\nWhere:\n\n* The `pattern` field is treated as a regular expression\n* The `action` field must be one of `['skip', 'replace', 'concat', 'concat_text', 'throw']`.\n\nNote that the order in which the rules are listed is relevant.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.DeployJarDuplicateRule] | None" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the final JAR artifact.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + }, + { + "alias": "exclude_files", + "default": null, + "description": "A list of patterns to exclude from the final jar.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_environment": { + "alias": "docker_environment", + "description": "Configuration of a Docker environment used for building your code.\n\nEnvironment configuration includes both Docker-specific information (including the image and platform choice), as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this Docker environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nBefore running Pants using this environment, if you are using Docker Desktop, make sure the option **Enable default Docker socket** is enabled, you can find it in **Docker Desktop Settings > Advanced** panel. That option tells Docker to create a socket at `/var/run/docker.sock` which Pants can use to communicate with Docker.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image", + "default": null, + "description": "The docker image ID to use when this environment is loaded.\n\nThis value may be any image identifier that the local Docker installation can accept. This includes image names with or without tags (e.g. `centos6` or `centos6:latest`), or image names with an immutable digest (e.g. `centos@sha256:`).\n\nThe choice of image ID can affect the reproducibility of builds. Consider using an immutable digest if reproducibility is needed, but regularly ensure that the image is free of relevant bugs or security vulnerabilities.\n\nNote that in order to use an image as a `docker_environment` it must have a few tools: - `/bin/sh` - `/usr/bin/env` - `bash` - `tar`\n\nWhile most images will have these preinstalled, users of base images such as Distroless or scratch will need to bake these tools into the image themselves. All of these except `bash` are available via busybox.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "platform", + "default": null, + "description": "If set, Docker will always use the specified platform when pulling and running the image.\n\nIf unset, Pants will default to the CPU architecture of your local host machine. For example, if you are running on Apple Silicon, it will use `linux_arm64`, whereas running on Intel macOS will use `linux_x86_64`. This mirrors Docker's behavior when `--platform` is left off.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this Docker environment cannot be used because either the global option `--docker-execution` is false, or the field `platform` is not compatible with the local host's CPU architecture (this is only an issue when the local host is Linux; macOS is fine).\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific Docker environment cannot be used.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "system_binaries_system_binary_paths", + "default": null, + "description": "Overrides the default value from the option `[system-binaries].system_binary_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a Docker environment used for building your code." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, it will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.\n\nDependencies on upstream/base images defined by another `docker_image` are inferred if referenced by a build argument with a default value of the target address.\n\nExample:\n\n # src/docker/downstream/Dockerfile\n ARG BASE=src/docker/upstream:image\n FROM $BASE\n ...", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your source tree.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "context_root", + "default": null, + "description": "Specify which directory to use as the Docker build context root. This affects the file paths to use for the `COPY` and `ADD` instructions. For example, whether `COPY files/f.txt` should look for the file relative to the build root: `/files/f.txt` vs relative to the BUILD file: `/path_to_build_file/files/f.txt`.\n\nSpecify the `context_root` path as `files` for relative to build root, or as `./files` for relative to the BUILD file.\n\nIf `context_root` is not specified, it defaults to `[docker].default_context_root`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "\nAny tags to apply to the Docker image name (the version is usually applied as a tag).\n\ntag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee https://www.pantsbuild.org/v2.19/docs/tagging-docker-images.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the `[docker].registries` configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. `\"/\"`.\n\nIt uses the `[docker].default_repository` by default.\n\nRepository may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nAdditional placeholders for the repository field are: `name`, `directory`, `parent_directory`, and `default_repository`.\n\nRegistries may also configure the repository value for specific registries.\n\nSee the documentation for `[docker].default_repository` for more information.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_labels", + "default": null, + "description": "Provide image metadata.\n\nLabel value may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.\n\nSee [Docker labels](https://docs.docker.com/config/labels-custom-metadata/#manage-labels-on-objects) for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "extra_build_hosts", + "default": null, + "description": "Extra hosts entries to be added to a container's `/etc/hosts` file.\n\nUse `[docker].build_hosts` to set default host entries for all images.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your build root, or the BUILD file if prefixed with `./`. Paths to your home directory will be automatically expanded. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"home-dir-secret\": \"~/.config/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "ssh", + "default": "()", + "description": "SSH agent socket or keys to expose to the build (only if BuildKit enabled) (format: `default|[=|[,]]`)\n\nThe exposed agent and/or keys can then be used in your `Dockerfile` by mounting them in your `RUN` instructions:\n\n RUN --mount=type=ssh ...\n\nSee [Docker documentation](https://docs.docker.com/develop/develop-images/build_enhancements/#using-ssh-to-access-private-data-in-builds) for more information.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If true, do not push this image to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pull", + "default": "False", + "description": "If true, then docker will always attempt to pull a newer version of the image.\n\nNOTE: This option cannot be used on images that build off of \"transitive\" base images referenced by address (i.e. `FROM path/to/your/base/Dockerfile`).", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "squash", + "default": "False", + "description": "If true, then docker will squash newly built layers into a single new layer.\n\nNote that this option is only supported on a Docker daemon with experimental features enabled.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "build_network", + "default": null, + "description": "Sets the networking mode for the run commands during build. Supported standard values are: bridge, host, none, and container:. Any other value is taken as a custom network's name to which the container should connect to.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "build_platform", + "default": null, + "description": "Set the target platform(s) for the build.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "cache_to", + "default": null, + "description": "Export image build cache to an external cache destination.\n\nThis option requires BuildKit to be enabled via the Docker subsystem options.\n\nExample:\n\n docker_image(\n name=\"example-local-cache-backend\",\n cache_to={\n \"type\": \"local\",\n \"dest\": \"/tmp/docker-cache/example\"\n },\n cache_from={\n \"type\": \"local\",\n \"src\": \"/tmp/docker-cache/example\"\n }\n )\n\nValues may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "cache_from", + "default": null, + "description": "Use an external cache source when building the image.\n\nThis option requires BuildKit to be enabled via the Docker subsystem options.\n\nExample:\n\n docker_image(\n name=\"example-local-cache-backend\",\n cache_to={\n \"type\": \"local\",\n \"dest\": \"/tmp/docker-cache/example\"\n },\n cache_from={\n \"type\": \"local\",\n \"src\": \"/tmp/docker-cache/example\"\n }\n )\n\nValues may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "output", + "default": "FrozenDict({'type': 'docker'})", + "description": "Sets the export action for the build result.\n\nThis option requires BuildKit to be enabled via the Docker subsystem options.\n\nWhen using `pants publish` to publish Docker images to a registry, the output type must be 'docker', as `publish` expects that the built images exist in the local image store.\n\nCurrently, multi-platform images cannot be exported with the 'docker' export type, although experimental support is available with the [containerd image store](https://docs.docker.com/desktop/containerd/)\n\nValues may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile instructions and build args.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "provider": "pants.backend.docker.lint.hadolint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.docker", + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_test_shell_command": { + "alias": "experimental_test_shell_command", + "description": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot.\n\nExample BUILD file:\n\n experimental_test_shell_command(\n name=\"test\",\n tools=[\"test\"],\n command=\"test -r $CHROOT/some-data-file.txt\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `run_shell_command`, this target is intended to run shell commands as tests and will only run them via the `test` goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by `[shell-setup].executable_search_paths` (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this tests for target.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script as a test via the `test` goal, with all dependencies packaged/copied available in the chroot." + }, + "experimental_wrap_as_go_package_sources": { + "alias": "experimental_wrap_as_go_package_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .go, .s, .S, .sx, .c, .h, .hh, .hpp, .hxx, .cc, .cpp, .cxx, .m, .f, .F, .for, .f90, .syso\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `GoPackageSourcesField`." + }, + "experimental_wrap_as_java_sources": { + "alias": "experimental_wrap_as_java_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .java\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `JavaSourceField`." + }, + "experimental_wrap_as_kotlin_sources": { + "alias": "experimental_wrap_as_kotlin_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .kt\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `KotlinSourceField`." + }, + "experimental_wrap_as_python_sources": { + "alias": "experimental_wrap_as_python_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .py, .pyi\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `PythonSourceField`." + }, + "experimental_wrap_as_resources": { + "alias": "experimental_wrap_as_resources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files from `inputs` will be matched.\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ResourceSourceField`." + }, + "experimental_wrap_as_scala_sources": { + "alias": "experimental_wrap_as_scala_sources", + "description": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`.\n\nNote that this target does not modify the files in any way. If `outputs` is not specified, all files with the following extensions will be matched: .scala\n\nThis target must be explicitly specified as a dependency of any target that requires it. Sources from this target will not be automatically inferred as dependencies.\n\nThis target is experimental: in future versions of Pants, this functionality may be made available with a different interface.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "inputs", + "default": null, + "description": "The input targets that are to be made available by this target.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "outputs", + "default": null, + "description": "The output files that are made available in the new context by this target. If not specified, the target will capture all files with the expected extensions for this source format: see the help for the target for the specific extensions. If no extensions are specified and this value is not specified, all input files will be returned.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Allow files and sources produced by the targets specified by `inputs` to be consumed by rules that specifically expect a `ScalaSourceField`." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an `http_source` is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (e.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (`linux_arm64`, `linux_x86_64`, `macos_arm64`, `macos_x86_64`) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `file` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cgo_enabled", + "default": null, + "description": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nThis field can be specified on several different target types, including `go_binary` and `go_mod` target types. If this field is specified on a `go_binary` target, then that instance takes precedence over other configuration when building the applicable executable. The applicable `go_mod` target will be checked next as a fallback. Finally, if neither target specifies this field, then the value will be taken from the value of the `[golang].cgo_enabled` option. (Note: That option will be deprecated in a future Pants version.)\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "race", + "default": null, + "description": "Enable compiling the binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer.\"\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "linker_flags", + "default": null, + "description": "Extra flags to pass to the Go linker (i.e., `go tool link`) when linking Go binaries.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the linker flags are used when linking any binary involving the module including both `go_binary` targets and test binaries for `go_package` targets within the module.\n\n- On `go_binary` targets, the linker flags are used when linking that binary. These linker flags will be added after any linker flags added by any `linker_flags` field set on the applicable `go_mod` target.\n\nRun `go doc cmd/link` to see the flags supported by `go tool link`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.go', '*_test.go', '!test_ignore.go']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "test_race", + "default": null, + "description": "Enable compiling this package's test binary with the Go data race detector.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_msan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"memory sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "test_asan", + "default": null, + "description": "Enable interoperation between Go code and the C/C++ \"address sanitizer\" when building this package's test binary.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "assembler_flags", + "default": null, + "description": "Extra flags to pass to the Go assembler (i.e., `go tool asm`) when assembling Go-format assembly code.\n\nNote: These flags will not be added to gcc/clang-format assembly that is assembled in packages using Cgo.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the assembler flags are used when building any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the assembler flags are used when building any packages comprising that binary including third-party dependencies. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the assembler flags are used only for building that specific package and not for any other package. These assembler flags will be added after any assembler flags added by any `assembler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/asm` to see the flags supported by `go tool asm`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compiler_flags", + "default": null, + "description": "Extra flags to pass to the Go compiler (i.e., `go tool compile`) when compiling Go code.\n\nThis field can be specified on several different target types:\n\n- On `go_mod` targets, the compiler flags are used when compiling any package involving the module including both first-party (i.e., `go_package` targets) and third-party dependencies.\n\n- On `go_binary` targets, the compiler flags are used when compiling any packages comprising that binary including third-party dependencies. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target.\n\n- On `go_package` targets, the compiler flags are used only for compiling that specific package and not for any other package. These compiler flags will be added after any compiler flags added by any `compiler_flags` field set on the applicable `go_mod` target or applicable `go_binary` target.\n\nRun `go doc cmd/compile` to see the flags supported by `go tool compile`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.go", + "summary": "A package from a third-party Go module." + }, + "helm_artifact": { + "alias": "helm_artifact", + "description": "A third party Helm artifact.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registry", + "default": null, + "description": "Either registry alias (prefixed by `@`) configured in `[helm.registries]` for the Helm artifact or the full OCI registry URL.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repository", + "default": null, + "description": "Either a HTTP(S) URL to a classic repository, or a path inside an OCI registry (when `registry` is provided).", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "Artifact name of the chart, without version number.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The `version` part of a third party Helm chart.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A third party Helm artifact." + }, + "helm_chart": { + "alias": "helm_chart", + "description": "A Helm chart.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": "'Chart.yaml'", + "description": "The chart definition file.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('values.yaml', 'values.yml', 'templates/*.yaml', 'templates/*.yml', 'templates/*.tpl', 'crds/*.yaml', 'crds/*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['values.yaml', 'templates/*.yaml', '!values_ignore.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, For example, `src/charts/mychart:tgt_name` would be `src.charts.mychart/tgt_name/`.\n\nRegardless of whether you use the default or set this field, the path will end with Helms's file format of `-.tgz`, where `chart_name` and `chart_version` are the values extracted from the Chart.yaml file. So, using the default for this field, the target `src/charts/mychart:tgt_name` might have a final path like `src.charts.mychart/tgt_name/mychart-0.1.0.tgz`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "lint_strict", + "default": null, + "description": "If set to true, enables strict linting of this Helm chart.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "repository", + "default": null, + "description": "Repository to use in the Helm registry where this chart is going to be published.\n\nIf no value is given and `[helm].default-registry-repository` is undefined too, then the chart will be pushed to the root of the OCI registry.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "version", + "default": null, + "description": "Version number for the given Helm chart.\n\nWhen specified, the version provided in the source Chart.yaml file will be overriden by the value given to this field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any OCI registries to use for the built chart.\n\nThe address is an `oci://` prefixed domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the `[helm].registries` configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [helm.registries.my-registry-alias]\n address = \"oci://myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n helm_chart(\n registries = [\n \"@my-registry-alias\",\n \"oci://myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this Helm chart to registries when running `scie-pants-linux-x86_64 publish`.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_lint", + "default": "False", + "description": "If set to true, do not run any linting in this Helm chart when running `scie-pants-linux-x86_64 lint`.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart." + }, + "helm_deployment": { + "alias": "helm_deployment", + "description": "A Helm chart deployment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "chart", + "default": null, + "description": "The address of the `helm_chart` or `helm_artifact` that will be used for this deployment.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "release_name", + "default": null, + "description": "Name of the release used in the deployment. If not set, the target name will be used instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.yaml', '*.yml')", + "description": "Helm configuration files for a given deployment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "namespace", + "default": null, + "description": "Kubernetes namespace for the given deployment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_crds", + "default": "False", + "description": "If true, then does not deploy the Custom Resource Definitions that are defined in the chart.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "values", + "default": null, + "description": "Individual values to use when rendering a given deployment.\n\nValue names should be defined using dot-syntax as in the following example:\n\n helm_deployment(\n values={\n \"nameOverride\": \"my_custom_name\",\n \"image.pullPolicy\": \"Always\",\n },\n )\n\nValues can be dynamically calculated using interpolation as shown in the following example:\n\n helm_deployment(\n values={\n \"configmap.deployedAt\": f\"{env('DEPLOY_TIME')}\",\n },\n )\n\nCheck the Helm backend documentation on what are the options available and its caveats when making usage of dynamic values in your deployments.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "no_hooks", + "default": "False", + "description": "If true, none of the lifecycle hooks of the given chart will be included in the deployment.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "timeout", + "default": null, + "description": "Timeout in seconds when running a Helm deployment.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "post_renderers", + "default": null, + "description": "List of runnable targets to be used to post-process the helm chart after being rendered by Helm.\n\nThis is equivalent to the same post-renderer feature already available in Helm with the difference that this supports a list of executables instead of a single one.\n\nWhen more than one post-renderer is given, they will be combined into a single one in which the input of each of them would be output of the previous one.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "enable_dns", + "default": "False", + "description": "Enables DNS lookups when using the `getHostByName` template function.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A Helm chart deployment." + }, + "helm_unittest_test": { + "alias": "helm_unittest_test", + "description": "A single helm-unittest suite file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "A single helm-unittest suite file." + }, + "helm_unittest_tests": { + "alias": "helm_unittest_tests", + "description": "Generates a `helm_unittest_test` target per each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.yaml', '*_test.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*_test.yaml', '!ignore_test.yaml']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `helm_unittest_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"configmap_test.yaml\": {\"timeout\": 120},\n (\"deployment_test.yaml\", \"pod_test.yaml\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `helm_unittest_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "strict", + "default": null, + "description": "If set to true, parses the UnitTest suite files strictly.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + } + ], + "provider": "pants.backend.experimental.helm", + "summary": "Generates a `helm_unittest_test` target per each file in the `sources` field." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.java', 'New*.java', '!OldExample.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_google_java_format", + "default": "False", + "description": "If true, don't run Google Java Format on this target's code.", + "provider": "pants.backend.experimental.java.lint.google_java_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.java', '!TestIgnore.java']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "exclusions", + "default": null, + "description": "A list of exclusions for unversioned coordinates that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nSupported exclusions are:\n * `jvm_exclude`: Exclude the given `artifact` and `group`, or all artifacts from the given `group`.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmArtifactExclusion] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "jvm_war": { + "alias": "jvm_war", + "description": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "content", + "default": null, + "description": "A list of addresses to `resources` and `files` targets with content to place in the document root of this WAR file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "descriptor", + "default": null, + "description": "Path to a file containing the descriptor (i.e., `web.xml`) for this WAR file. Defaults to `web.xml`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "shading_rules", + "default": null, + "description": "Shading rules to be applied to the individual JAR artifacts embedded in the `WEB-INF/lib` folder.\n\nThere are 4 possible shading rules available, which are as follows:\n * `shading_relocate`: Relocates the classes under the given `package` into the new package name. The default target package is `__shaded_by_pants__` if none provided in the `into` parameter.\n * `shading_rename`: Renames all occurrences of the given `pattern` by the `replacement`.\n * `shading_zap`: Removes from the final artifact the occurrences of the `pattern`.\n * `shading_keep`: Keeps in the final artifact the occurrences of the `pattern` (and removes anything else).\n\nWhen defining shading rules, just add them in this field using the previously listed rule alias and passing along the required parameters.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmShadingRule] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.java", + "summary": "A JSR 154 \"web application archive\" (or \"war\") with first-party and third-party code bundled for deploys in Java Servlet containers." + }, + "kotlin_junit_test": { + "alias": "kotlin_junit_test", + "description": "A single Kotlin test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin test, run with JUnit." + }, + "kotlin_junit_tests": { + "alias": "kotlin_junit_tests", + "description": "Generate a `kotlin_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.kt', '!TestIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_junit_test` target for each file in the `sources` field." + }, + "kotlin_source": { + "alias": "kotlin_source", + "description": "A single Kotlin source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A single Kotlin source file containing application or library code." + }, + "kotlin_sources": { + "alias": "kotlin_sources", + "description": "Generate a `kotlin_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.kt',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.kt', 'New*.kt', '!OldIgnore.kt']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_ktlint", + "default": "False", + "description": "If true, don't run Ktlint on this target's code.", + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "kotlinc_plugins", + "default": null, + "description": "The IDs of Kotlin compiler plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `kotlinc_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[kotlinc].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "Generate a `kotlin_source` target for each file in the `sources` field." + }, + "kotlinc_plugin": { + "alias": "kotlinc_plugin", + "description": "A plugin for `kotlinc`.\n\nTo enable a `kotlinc` plugin, define a target with this target type, and set the `artifact` field to the address of a `jvm_artifact` target that provides the plugin. Set the `plugin_id` field to the ID of the plugin if that name cannot be inferred from the `name` of this target.\n\nThe standard `kotlinc` plugins are available via the following artifact coordinates and IDs:\n\n* All-open: `org.jetbrains.kotlin:kotlin-allopen:VERSION` (ID: `all-open`)\n* No-arg: `org.jetbrains.kotlin:kotlin-noarg:VERSION` (ID: `no-arg`)\n* SAM with receiver: `org.jetbrains.kotlin:kotlin-sam-with-receiver:VERSION` (ID: `sam-with-receiver`)\n* kapt (annotation processor): `org.jetbrains.kotlin:org.jetbrains.kotlin:kotlin-annotation-processing-embeddable:VERSION` (ID: `kapt3`)\n* Serialization: `org.jetbrains.kotlin:kotlin-serialization:VERSION` (ID: `serialization`)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `kotlinc`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_id", + "default": null, + "description": "The ID for `kotlinc` to use when setting options for the plugin.\n\nIf not set, the plugin ID defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "plugin_args", + "default": null, + "description": "Optional list of argument to pass to the plugin.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.kotlin", + "summary": "A plugin for `kotlinc`." + }, + "local_environment": { + "alias": "local_environment", + "description": "Configuration of a local execution environment for specific platforms.\n\nEnvironment configuration includes the platforms the environment is compatible with, and optionally a fallback environment, along with environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this environment.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOnly one `local_environment` may be defined in `[environments-preview].names` per platform, and when `__local__` is specified as the environment, the `local_environment` that matches the current platform (if defined) will be selected.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatible_platforms", + "default": "('linux_arm64', 'linux_x86_64', 'macos_arm64', 'macos_x86_64')", + "description": "Which platforms this environment can be used with.\n\nThis is used for Pants to automatically determine which environment target to use for the user's machine when the environment is set to the special value `__local__`. Currently, there cannot be more than one environment target registered in `[environments-preview].names` for a particular platform. If there is no environment target for a certain platform, Pants will use the options system instead to determine environment variables and executable search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when this local environment cannot be used because the field `compatible_platforms` is not compatible with the local host.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when this specific local environment cannot be used.\n\nTip: when targeting Linux, it can be particularly helpful to fallback to a `docker_environment` or `remote_environment` target. That allows you to prefer using the local host when possible, which often has less overhead (particularly compared to Docker). If the local host is not compatible, then Pants will use Docker or remote execution to still run in a similar environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "system_binaries_system_binary_paths", + "default": null, + "description": "Overrides the default value from the option `[system-binaries].system_binary_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a local execution environment for specific platforms." + }, + "openapi_document": { + "alias": "openapi_document", + "description": "A single OpenAPI document file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI document file." + }, + "openapi_documents": { + "alias": "openapi_documents", + "description": "Generate an `openapi_document` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('openapi.json', 'openapi.yaml', 'openapi.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['openapi.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_spectral", + "default": "False", + "description": "If true, don't run `spectral lint` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_document` target for each file in the `sources` field." + }, + "openapi_source": { + "alias": "openapi_source", + "description": "A single OpenAPI source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_openapi_format", + "default": "False", + "description": "If true, don't run `openapi-format` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "A single OpenAPI source file." + }, + "openapi_sources": { + "alias": "openapi_sources", + "description": "Generate an `openapi_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.json', '*.yaml', '*.yml')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*.json']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_openapi_format", + "default": "False", + "description": "If true, don't run `openapi-format` on this target's code.", + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.openapi", + "summary": "Generate an `openapi_source` target for each file in the `sources` field." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants.\n\nThe generated targets will have the correct version based on the exact `version` in your `pants.toml`, and they will work with dependency inference. They're pulled directly from our GitHub releases, using the relevant platform markers.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "version_spec", + "default": "'== 2.19.0rc1'", + "description": "The PEP 440 version specifier version of Pants to target. E.g. `== 2.15.*`, or `>= 2.16.0, < 2.17.0`", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.plugin_development", + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binaries": { + "alias": "pex_binaries", + "description": "Generate a `pex_binary` target for each entry_point in the `entry_points` field.\n\nThis is solely meant to reduce duplication when you have multiple scripts in the same directory; it's valid to use a distinct `pex_binary` target for each script/binary instead.\n\nThis target generator does not work well to generate `pex_binary` targets where the entry point is for a third-party dependency. Dependency inference will not work for those, so you will have to set lots of custom metadata for each binary; prefer an explicit `pex_binary` target in that case. This target generator works best when the entry point is a first-party file, like `app.py` or `app.py:main`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "The entry points for each binary, i.e. what gets run when when executing `./my_app.pex.`\n\nUse a file name, relative to the BUILD file, like `app.py`. You can also set the function to run, like `app.py:func`. Pants will convert these file names into well-formed entry points, like `app.py:func` into `path.to.app:func.`\n\nIf you want the entry point to be for a third-party dependency or to use a console script, use the `pex_binary` target directly.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `pex_binary` targets.\n\nExpects a dictionary mapping values from the `entry_points` field to a dictionary for their overrides. You may either use a single string or a tuple of strings to override multiple targets.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"execution_mode\": \"venv\"]},\n \"bar.py:main\": {\"restartable\": True]},\n (\"foo.py\", \"bar.py:main\"): {\"tags\": [\"legacy\"]},\n }\n\nEvery key is validated to belong to this target's `entry_points` field.\n\nIf you'd like to override a field's value for every `pex_binary` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same `entry_point` in multiple keys, so long as you don't override the same field more than one time for the `entry_point`.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.19/docs/pex for details.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore errors when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `pex_binary` target for each entry_point in the `entry_points` field." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.19/docs/pex.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.19/docs/pex for details.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "provider": "", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore errors when it cannot resolve dependencies?", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "provider": "", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "provider": "", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to include your first party sources the binary uses in the packaged PEX file.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_site_packages_copies", + "default": "False", + "description": "If execution_mode is venv, populate the venv site packages using hard links or copies of resolved PEX dependencies instead of symlinks.\n\nThis can be used to work around problems with tools or libraries that are confused by symlinked source files.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "venv_hermetic_scripts", + "default": "True", + "description": "If execution_mode is \"venv\", emit a hermetic venv `pex` script and hermetic console scripts.\n\nThe venv `pex` script and the venv console scripts are constructed to be hermetic by default; Python is executed with `-sE` to restrict the `sys.path` to the PEX venv contents only. Setting this field to `False` elides the Python `-sE` restrictions and can be used to interoperate with frameworks that use `PYTHONPATH` manipulation to run code.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like `'path.to.module'` and `'path.to.module:func'`, or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) `'app.py'`, Pants will convert into the module `path.to.app`;\n 2) `'app.py:func'`, Pants will convert into `path.to.app:func`.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "args", + "default": null, + "description": "Freeze these command-line args into the PEX. Allows you to run generic entry points on specific arguments without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "env", + "default": null, + "description": "Freeze these environment variables into the PEX. Allows you to run generic entry points on a specific environment without creating a shim file.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python target that can be converted into an executable PEX file." + }, + "pipenv_requirements": { + "alias": "pipenv_requirements", + "description": "Generate a `python_requirement` for each entry in `Pipenv.lock`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'Pipfile.lock'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in `Pipenv.lock`." + }, + "poetry_requirements": { + "alias": "poetry_requirements", + "description": "Generate a `python_requirement` for each entry in a Poetry `pyproject.toml`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'pyproject.toml'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a Poetry `pyproject.toml`." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.19/docs/protobuf-python\n Go: https://www.pantsbuild.org/v2.19/docs/protobuf-go", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.protobuf.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.proto', 'new_*.proto', '!old_ignore*.proto']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `protobuf_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.proto\": {\"grpc\": True},\n \"bar.proto\": {\"description\": \"our user model\"},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "go_mod_address", + "default": null, + "description": "Address of the `go_mod` target representing the Go module that this target is part of.\n\nThis field is similar to the `resolve` field used in the Python and JVM backends. If a codegen target such as `protobuf_sources` will be used in multiple Go modules, then you should use the `parametrize` built-in to parametrize that `protobuf_sources` target for each Go module.\n\nIf there is a single `go_mod` target in the repository, then this field defaults to the address for that single `go_mod` target.", + "provider": "pants.backend.experimental.codegen.protobuf.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "pants.backend.experimental.codegen.protobuf.java", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_buf_lint", + "default": "False", + "description": "If true, don't run `buf lint` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_buf_format", + "default": "False", + "description": "If true, don't run `buf format` on this target's code.", + "provider": "pants.backend.codegen.protobuf.lint.buf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.protobuf.python", + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "pyoxidizer_binary": { + "alias": "pyoxidizer_binary", + "description": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer.\n\nTo use this target, first create a `python_distribution` target with the code you want included in your binary, per https://www.pantsbuild.org/v2.19/docs/python-distributions. Then add this `python_distribution` target to the `dependencies` field. See the `help` for `dependencies` for more information.\n\nYou may optionally want to set the `entry_point` field. For advanced use cases, you can use a custom PyOxidizer config file, rather than what Pants generates, by setting the `template` field. You may also want to set `[pyoxidizer].args` to a value like `['--release']`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built directory tree should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:bin` would be `src.python.project/bin/`.\n\nRegardless of whether you use the default or set this field, the path will end with PyOxidizer's file format of `/{debug,release}/install/`, where `platform` is a Rust platform triplet like `aarch-64-apple-darwin` and `binary_name` is the value of the `binary_name` field. So, using the default for this field, the target `src/python/project:bin` might have a final path like `src.python.project/bin/aarch-64-apple-darwin/release/bin`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary that will be output by PyOxidizer. If not set, this will default to the name of this target.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "template", + "default": null, + "description": "If set, will use your custom configuration rather than using Pants's default template.\n\nThe path is relative to the BUILD file's directory, and it must end in `.blzt`.\n\nAll parameters must be prefixed by `$` or surrounded with `${ }`.\n\nAvailable template parameters:\n\n * RUN_MODULE - The re-formatted `entry_point` passed to this target (or None).\n * NAME - This target's name.\n * WHEELS - All python distributions passed to this target (or `[]`).\n * UNCLASSIFIED_RESOURCE_INSTALLATION - This will populate a snippet of code to correctly inject the targets `filesystem_resources`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "The addresses of `python_distribution` target(s) to include in the binary, e.g. `['src/python/project:dist']`.\n\nThe distribution(s) must generate at least one wheel file. For example, if using `generate_setup=True`, then make sure `wheel=True`. See https://www.pantsbuild.org/v2.19/docs/python-distributions.\n\nUsually, you only need to specify a single `python_distribution`. However, if that distribution depends on another first-party distribution in your repository, you must specify that dependency too, otherwise PyOxidizer would try installing the distribution from PyPI. Note that a `python_distribution` target might depend on another `python_distribution` target even if it is not included in its own `dependencies` field, as explained at https://www.pantsbuild.org/v2.19/docs/python-distributions; if code from one distribution imports code from another distribution, then there is a dependency and you must include both `python_distribution` targets in the `dependencies` field of this `pyoxidizer_binary` target.\n\nTarget types other than `python_distribution` will be ignored.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app`, to a module. This represents the content of PyOxidizer's `python_config.run_module` and leaving this field empty will create a REPL binary.\n\nIt is specified with the full module declared: `'path.to.module'`.\n\nThis field is passed into the PyOxidizer config as-is, and does not undergo validation checking.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "filesystem_resources", + "default": null, + "description": "Adds support for listing dependencies that MUST be installed to the filesystem (e.g. Numpy). See https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer_packaging_additional_files.html#installing-unclassified-files-on-the-filesystem", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "summary": "A single-file Python executable with a Python interpreter embedded, built via PyOxidizer." + }, + "python_aws_lambda_function": { + "alias": "python_aws_lambda_function", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.19/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the AWS Lambda artifact. This is most useful with Lambda Layers to make code uploads smaller when third-party requirements are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.\n\nN.B.: only one of this and `complete_platforms` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. If you have issues either packaging the AWS Lambda PEX or running it as a deployed AWS Lambda function, you should try using an explicit `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.19/docs/pex for details.\n\nN.B.: only one of this and `runtime` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. Explicitly set this to `[]` to use the platform's ambient interpreter, such as when running in an docker environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like `'path.to.module:handler_func'` or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. `'cloud_function.py:handler_func'`.\n\nThis is re-exported at `lambda_function.handler` in the resulting package to be used as the configured handler of the Lambda in AWS. It can also be accessed under its source-root-relative module path, for example: `path.to.module.handler_func`.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_aws_lambda_layer": { + "alias": "python_aws_lambda_layer", + "description": "A Python layer suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.19/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to resolve requirements and include them in the AWS Lambda artifact. This is most useful with Lambda Layers to make code uploads smaller when third-party requirements are in layers. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.\n\nN.B.: only one of this and `complete_platforms` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. If you have issues either packaging the AWS Lambda PEX or running it as a deployed AWS Lambda function, you should try using an explicit `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.19/docs/pex for details.\n\nN.B.: only one of this and `runtime` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. Explicitly set this to `[]` to use the platform's ambient interpreter, such as when running in an docker environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "include_sources", + "default": "True", + "description": "Whether to resolve first party sources and include them in the AWS Lambda artifact. This is most useful to allow creating a Lambda Layer with only third-party requirements. https://docs.aws.amazon.com/lambda/latest/dg/configuration-layers.html", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "provider": "pants.backend.awslambda.python", + "summary": "A Python layer suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.19/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (`\"path.to.module:func\"`) or a Pants target address to a `pex_binary` target.\n\nExample:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a `pex_binary` target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n scie-pants-linux-x86_64 dependencies ", + "provider": "", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.19/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "provider": "", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing `setup.py`, `setup.cfg`, `pyproject.toml` files or similar.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "env_vars", + "default": null, + "description": "Environment variables to set when running the PEP-517 build backend.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "long_description_path", + "default": null, + "description": "Path to a file that will be used to fill the `long_description` field in `setup.py`.\n\nPath is relative to the build root.\n\nAlternatively, you can set the `long_description` in the `provides` field, but not both.\n\nThis field won't automatically set `long_description_content_type` field for you. You have to specify this field yourself in the `provides` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": "''", + "description": "The path to the directory to write the distribution file to, relative the dist directory.\n\nIf undefined, this defaults to the empty path, i.e. the output goes at the top level of the dist dir.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "bool" + }, + { + "alias": "uses_mypyc", + "default": "False", + "description": "If true, this distribution is built using mypyc.\n\nIn this case, Pants will build the distribution in an environment that includes mypy, as configured in the `[mypy]` subsystem, including plugins, config files, extra type stubs, and the distribution's own requirements (which normally would not be needed at build time, but in this case may provide necessary type annotations).\n\nYou will typically set this field on distributions whose `setup.py` uses `mypyc.build.mypycify()`. See https://mypyc.readthedocs.io/en/latest/index.html .", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.19/docs/google-cloud-function-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `scie-pants-linux-x86_64 package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like `'path.to.module:handler_func'` or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. `'cloud_function.py:handler_func'`.\n\nThis is re-exported at `main.handler` in the resulting package to used as the configured handler of the Google Cloud Function in GCP. It can also be accessed under its source-root-relative module path, for example: `path.to.module.handler_func`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.\n\nIn general you'll want to define either a `runtime` or one `complete_platforms` but not both. Specifying a `runtime` is simpler, but less accurate. If you have issues either packaging the Google Cloud Function PEX or running it as a deployed Google Cloud Function, you should try using `complete_platforms` instead.", + "provider": "", + "required": false, + "type_hint": "'python310' | 'python311' | 'python37' | 'python38' | 'python39' | None" + }, + { + "alias": "complete_platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThere must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple complete platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nComplete platforms should be addresses of `file` targets that point to files that contain complete platform JSON as described by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#complete-platform).\n\nSee https://www.pantsbuild.org/v2.19/docs/pex for details.\n\nN.B.: only one of this and `runtime` can be set. If `runtime` is set, a default complete platform is chosen, if one is known for that runtime. Explicitly set this to `[]` to use the platform's ambient interpreter, such as when running in an docker environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be `'event'` or `'http'`. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to `--trigger-http`.", + "provider": "", + "required": true, + "type_hint": "'event' | 'http'" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.google_cloud_function.python", + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the target generator `python_requirements` to convert each requirement into a `python_requirement` target automatically. For Poetry, use `poetry_requirements`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like `'path.to.module'` and `'path.to.module:func'`, or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) `'app.py'`, Pants will convert into the module `path.to.app`;\n 2) `'app.py:func'`, Pants will convert into `path.to.app:func`.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "A Python requirement installable by pip." + }, + "python_requirements": { + "alias": "python_requirements", + "description": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant `pyproject.toml` file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser.\n\nFurther details about pip-style requirements files are available from the PyPA documentation: https://pip.pypa.io/en/latest/reference/requirements-file-format/. However, pip options like `--hash` are (for now) ignored.\n\nPants will not follow `-r reqs.txt` lines. Instead, add a dedicated `python_requirements` target generator for that additional requirements file.\n\nFurther details about PEP 621 and `pyproject.toml` files are available from the PEP itself: https://peps.python.org/pep-0621/. If the `project.optional-dependencies` table is included, Pants will save the key/name of the optional dependency group as a tag on the generated `python_requirement`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use a default. See the `modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ its name looks like a type stub, Pants will use a default. See the `type_stub_modules` field from the `python_requirement` target for more information.", + "provider": "", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "source", + "default": "'requirements.txt'", + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_requirement` targets.\n\nExpects a dictionary of requirements to a dictionary for the overrides. You may either use a string for a single requirement, or a string tuple for multiple requirements. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"django\": {\"dependencies\": [\"#setuptools\"]},\n \"ansicolors\": {\"description\": \"pretty colors\"]},\n (\"ansicolors, \"django\"): {\"tags\": [\"overridden\"]},\n }\n\nEvery overridden requirement is validated to be generated by this target.\n\nYou can specify the same requirement in multiple keys, so long as you don't override the same field more than one time for the requirement.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` that this requirement is included in.\n\nIf not defined, will default to `[python].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `generate-lockfiles` goal, it will include all requirements that are declared with that resolve. First-party targets like `python_source` and `pex_binary` then declare which resolve they use via their `resolve` field; so, for your first-party code to use a particular `python_requirement` target, that requirement must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_requirement` for each entry in a requirements.txt-style or PEP 621 compliant `pyproject.toml` file. The choice of parser for the `source` field is determined by the file name. If the `source` field ends with `pyproject.toml`, then the file is assumed to be a PEP 621 compliant file. Any other file name uses the requirements.txt-style parser." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'new_*.py', '!old_ignore.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "provider": "", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.19/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single test runner process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other test `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same test runner process. Compatible tests may not end up in the same test runner batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all `entry_points` on `python_distribution` targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the `entry_points` only need to be defined on one `python_distribution` even if the test only needs some of the `entry_points` namespaces on it.\n\nPlus, an `entry_points.txt` file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The `entry_points.txt` file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools `entry_points` metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (`my.stevedore.extension`) is similar to a Python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.python", + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py` or `my_test_utils.py`. Technically, it generates `python_source` targets in the exact same way as the `python_sources` target generator does, only that the `sources` field has a different default. So it is valid to use `python_sources` instead. However, this target can be helpful to better model your code by keeping separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test_*.py', '*_test.py', 'tests.py']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo_test.py\": {\"timeout\": 120},\n \"bar_test.py\": {\"timeout\": 200},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_pytype", + "default": "False", + "description": "If true, don't run pytype on this target's code.", + "provider": "pants.backend.experimental.python.typecheck.pytype", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pydocstyle", + "default": "False", + "description": "If true, don't run pydocstyle on this target's code.", + "provider": "pants.backend.python.lint.pydocstyle", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "provider": "pants.backend.python.lint.black", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_ruff", + "default": "False", + "description": "If true, don't run ruff on this target's code.", + "provider": "pants.backend.experimental.python.lint.ruff", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_add_trailing_comma", + "default": "False", + "description": "If true, don't run add-trailing-comma on this target's code.", + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "provider": "pants.backend.python.lint.flake8", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "provider": "pants.backend.python.lint.isort", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "provider": "pants.backend.python.lint.bandit", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "provider": "pants.backend.python.lint.autoflake", + "required": false, + "type_hint": "bool" + }, + { + "alias": "stevedore_namespaces", + "default": null, + "description": "List the stevedore namespaces required by this target.\n\nCode for all `entry_points` on `python_distribution` targets with these namespaces will be added as dependencies so that they are available on PYTHONPATH during tests. Note that this is only a subset of the `python_distribution`s dependencies, so the `entry_points` only need to be defined on one `python_distribution` even if the test only needs some of the `entry_points` namespaces on it.\n\nPlus, an `entry_points.txt` file will be generated in the sandbox so that each of the `python_distribution`s appear to be \"installed\". The `entry_points.txt` file will only include the namespaces requested on this field. Without this, stevedore would not be able to look up plugins in the setuptools `entry_points` metadata.\n\nNOTE: Each `python_distribution` must opt-in to being included in this repo-wide inference by tagging the namespaces with `stevedore_namespace(\"my.stevedore.extension\")`.\n\nThe stevedore namespace format (`my.stevedore.extension`) is similar to a Python namespace.", + "provider": "pants.backend.experimental.python.framework.stevedore", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "provider": "pants.backend.python.typecheck.mypy", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "provider": "pants.backend.python.lint.docformatter", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "provider": "pants.backend.python.lint.pyupgrade", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "provider": "pants.backend.python.lint.yapf", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "provider": "pants.backend.python.lint.pylint", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "run_goal_use_sandbox", + "default": null, + "description": "Whether to use a sandbox when `run`ning this target. Defaults to `[python].run_goal_use_sandbox`.\n\nIf true, runs of this target with the `run` goal will copy the needed first-party sources into a temporary sandbox and run from there.\n\nIf false, runs of this target with the `run` goal will use the in-repo sources directly.\n\nNote that this field only applies when running a target with the `run` goal. No other goals (such as `test`, if applicable) consult this field.\n\nThe former mode is more hermetic, and is closer to building and running the source as it were packaged in a `pex_binary`. Additionally, it may be necessary if your sources depend transitively on \"generated\" files which will be materialized in the sandbox in a source root, but are not in-repo.\n\nThe latter mode is similar to creating, activating, and using a virtual environment when running your files. It may also be necessary if the source being run writes files into the repo and computes their location relative to the executed files. Django's `makemigrations` command is an example of such a process.", + "provider": "", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "xdist_concurrency", + "default": null, + "description": "Maximum number of CPUs to allocate to run each test file belonging to this target.\n\nTests are spread across multiple CPUs using `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/index.html). Use of `pytest-xdist` must be enabled using the `[pytest].xdist_enabled` option for this field to have an effect.\n\nIf `pytest-xdist` is enabled and this field is unset, Pants will attempt to derive the concurrency for test sources by counting the number of tests in each file.\n\nSet this field to `0` to explicitly disable use of `pytest-xdist` for a target.", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "batch_compatibility_tag", + "default": null, + "description": "An arbitrary value used to mark the test files belonging to this target as valid for batched execution.\n\nIt's _sometimes_ safe to run multiple `python_test`s within a single test runner process, and doing so can give significant wins by allowing reuse of expensive test setup / teardown logic. To opt into this behavior, set this field to an arbitrary non-empty string on all the `python_test` targets that are safe/compatible to run in the same process.\n\nIf this field is left unset on a target, the target is assumed to be incompatible with all others and will run in a dedicated `pytest` process.\n\nIf this field is set on a target, and its value is different from the value on some other test `python_test`, then the two targets are explicitly incompatible and are guaranteed to not run in the same `pytest` process.\n\nIf this field is set on a target, and its value is the same as the value on some other `python_test`, then the two targets are explicitly compatible and _may_ run in the same test runner process. Compatible tests may not end up in the same test runner batch if:\n\n * There are \"too many\" compatible tests in a partition, as determined by the `[test].batch_size` config parameter, or\n * Compatible tests have some incompatibility in Pants metadata (i.e. different `resolve`s or `extra_env_vars`).\n\nWhen tests with the same `batch_compatibility_tag` have incompatibilities in some other Pants metadata, they will be automatically split into separate batches. This way you can set a high-level `batch_compatibility_tag` using `__defaults__` and then have tests continue to work as you tweak BUILD metadata on specific targets.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.python", + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "provider": "", + "required": true, + "type_hint": "str" + } + ], + "provider": "pants.core", + "summary": "Loose files with path manipulation applied." + }, + "remote_environment": { + "alias": "remote_environment", + "description": "Configuration of a remote execution environment used for building your code.\n\nEnvironment configuration includes platform properties and a fallback environment, as well as environment-aware options (such as environment variables and search paths) used by Pants to execute processes in this remote environment.\n\nNote that you must also configure remote execution with the global options like `remote_execution` and `remote_execution_address`.\n\nTo use this environment, map this target's address with a memorable name in `[environments-preview].names`. You can then consume this environment by specifying the name in the `environment` field defined on other targets.\n\nOften, it is only necessary to have a single `remote_environment` target for your repository, but it can be useful to have >1 so that you can set different `extra_platform_properties`. For example, with some servers, you could use this to configure a different Docker image per environment.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platform", + "default": "'linux_x86_64'", + "description": "The platform used by the remote execution environment.", + "provider": "", + "required": false, + "type_hint": "'linux_arm64' | 'linux_x86_64' | 'macos_arm64' | 'macos_x86_64' | None" + }, + { + "alias": "extra_platform_properties", + "default": "()", + "description": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fallback_environment", + "default": null, + "description": "The environment to fallback to when remote execution is disabled via the global option `--remote-execution`.\n\nMust be an environment name from the option `[environments-preview].names`, the special string `__local__` to use the relevant local environment, or the Python value `None` to error when remote execution is disabled.\n\nTip: if you are using a Docker image with your remote execution environment (usually enabled by setting the field `extra_platform_properties`), then it can be useful to fallback to an equivalent `docker_image` target so that you have a consistent execution environment.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "cache_binary_discovery", + "default": "False", + "description": "If true, will cache system binary discovery, e.g. finding Python interpreters.\n\nWhen safe to do, it is preferable to set this option to `True` for faster performance by avoiding wasted work. Otherwise, Pants will search for system binaries whenever the Pants daemon is restarted.\n\nHowever, it is only safe to set this to `True` if the remote execution environment has a stable environment, e.g. the server will not change versions of installed system binaries. Otherwise, you risk caching results that become stale when the server changes its environment, which may break your builds. With some remote execution servers, you can specify a Docker image to run with via the field `extra_platform_properties`; if you are able to specify what Docker image to use, and also use a pinned tag of the image, it is likely safe to set this field to true.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "nodejs_corepack_env_vars", + "default": null, + "description": "Overrides the default value from the option `[nodejs].corepack_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_ld_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].ld_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gcc_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gcc_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "python_bootstrap_search_path", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].search_path` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "nodejs_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[nodejs].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "system_binaries_system_binary_paths", + "default": null, + "description": "Overrides the default value from the option `[system-binaries].system_binary_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "shell_setup_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[shell-setup].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.shell", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_c_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_c_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_tool_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_tool_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_fortran_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_fortran_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jvm_global_options", + "default": null, + "description": "Overrides the default value from the option `[jvm].global_options` when this environment target is active.", + "provider": "pants.backend.experimental.java", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[docker].executable_search_paths` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "apache_thrift_thrift_search_paths", + "default": null, + "description": "Overrides the default value from the option `[apache-thrift].thrift_search_paths` when this environment target is active.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "docker_env_vars", + "default": null, + "description": "Overrides the default value from the option `[docker].env_vars` when this environment target is active.", + "provider": "pants.backend.docker", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_subprocess_env_vars", + "default": null, + "description": "Overrides the default value from the option `[golang].subprocess_env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_gxx_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_gxx_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "nodejs_search_path", + "default": null, + "description": "Overrides the default value from the option `[nodejs].search_path` when this environment target is active.", + "provider": "pants.backend.experimental.openapi.lint.spectral", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "subprocess_environment_env_vars", + "default": null, + "description": "Overrides the default value from the option `[subprocess-environment].env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_linker_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_linker_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_cgo_cxx_flags", + "default": null, + "description": "Overrides the default value from the option `[golang].cgo_cxx_flags` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_go_search_paths", + "default": null, + "description": "Overrides the default value from the option `[golang].go_search_paths` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_native_code_cpp_flags", + "default": null, + "description": "Overrides the default value from the option `[python-native-code].cpp_flags` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_bootstrap_names", + "default": null, + "description": "Overrides the default value from the option `[python-bootstrap].names` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "golang_external_linker_binary_name", + "default": null, + "description": "Overrides the default value from the option `[golang].external_linker_binary_name` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "pex_executable_search_paths", + "default": null, + "description": "Overrides the default value from the option `[pex].executable_search_paths` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_extra_env_vars", + "default": null, + "description": "Overrides the default value from the option `[test].extra_env_vars` when this environment target is active.", + "provider": "pants.core", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "go_generate_env_vars", + "default": null, + "description": "Overrides the default value from the option `[go-generate].env_vars` when this environment target is active.", + "provider": "pants.backend.experimental.go", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Configuration of a remote execution environment used for building your code." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "The source of this target.\n\nIf a string is provided, represents a path that is relative to the BUILD file's directory, e.g. `source='example.ext'`.\n\nIf an `http_source` is provided, represents the network location to download the source from. The downloaded file will exist in the sandbox in the same directory as the target.\n\n`http_source` has the following signature:\n\n http_source(url: str, *, len: int, sha256: str, filename: str = \"\")\n\nThe filename defaults to the last part of the URL path (e.g. `example.ext`), but can also be specified if you wish to have control over the file name. You cannot, however, specify a path separator to download the file into a subdirectory (you must declare a target in desired subdirectory).\n\nYou can easily get the len and checksum with the following command:\n\n curl -L $URL | tee >(wc -c) >(shasum -a 256) >/dev/null\n\nIf a `per_platform` is provided, represents a mapping from platform to `http_source`, where the platform is one of (`linux_arm64`, `linux_x86_64`, `macos_arm64`, `macos_x86_64`) and is resolved in the execution target. Each `http_source` value MUST have the same filename provided.", + "provider": "", + "required": true, + "type_hint": "str | http_source | pants.core.target_types.per_platform[pants.core.target_types.http_source]" + } + ], + "provider": "pants.core", + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.txt', 'new_*.md', '!old_ignore.csv']`", + "provider": "", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `resource` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "run_shell_command": { + "alias": "run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n execution_dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `shell_command`, in addition to `workdir` you only have the `command` and `execution_dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful.\n\nSee also `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "scala_artifact": { + "alias": "scala_artifact", + "description": "A third-party Scala artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `resolve` field.\n\nBeing a Scala artifact, the final artifact name will be inferred using the Scala version configured for the given resolve.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible Scala-versioned coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `org.typelevel:cats-core_2.13:2.9.0`, the artifact is `cats-core`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "crossversion", + "default": "'partial'", + "description": "Whether to use the full Scala version or the partial one to determine the artifact name suffix.\n\nDefault is `partial`.", + "provider": "", + "required": false, + "type_hint": "'full' | 'partial' | None" + }, + { + "alias": "exclusions", + "default": null, + "description": "A list of exclusions for unversioned coordinates that should be excluded as dependencies when this artifact is resolved.\n\nThis does not prevent this artifact from being included in the resolve as a dependency of other artifacts that depend on it, and is currently intended as a way to resolve version conflicts in complex resolves.\n\nSupported exclusions are:\n * `jvm_exclude`: Exclude the given `artifact` and `group`, or all artifacts from the given `group`.\n * `scala_exclude`: Exclude the given `artifact` and `group`, or all artifacts from the given `group`. You can also use the `crossversion` field to help resolve the final artifact name.", + "provider": "", + "required": false, + "type_hint": "Iterable[pants.jvm.target_types.JvmArtifactExclusion] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` also declare which resolve they use via the `resolve` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve used by that code.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A third-party Scala artifact, as identified by its Maven-compatible coordinate." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Test.scala', '!TestIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scala_junit_tests` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_junit_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['Example.scala', 'New*.scala', '!OldIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scala_sources` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scala_sources` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this target. If not supplied, this will be calculated automatically, either by inspecting the existing manifest (for 3rd-party JARs), or by inspecting the classes inside the JAR, looking for a valid `main` method. If a value cannot be calculated automatically, you must supply a value for `run` to succeed.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of either a `jvm_artifact` or a `scala_artifact` that defines a plugin for `scalac`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching `('*Spec.scala', '*Suite.scala')`).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['*Spec.scala', '!SuiteIgnore.scala']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `scalatest_tests` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"Foo.scala\": {\"dependencies\": [\":files\"]},\n \"Bar.scala\": {\"skip_scalafmt\": True},\n (\"Foo.scala\", \"Bar.scala\"): {\"tags\": [\"linter_disabled\"]},\n }\"\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `scalatest_tests` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "scalac_plugins", + "default": null, + "description": "The names of Scala plugins that this source file requires.\n\nThe plugin must be defined by a corresponding `scalac_plugin` AND `jvm_artifact` target, and must be present in this target's resolve's lockfile.\n\nIf not specified, this will default to the plugins specified in `[scalac].plugins_for_resolve` for this target's resolve.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.\n\nThis will be merged with and override values from `[test].extra_env_vars`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "jdk", + "default": null, + "description": "The major version of the JDK that this target should be built with. If not defined, will default to `[jvm].default_source_jdk`.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The resolve from `[jvm].resolves` to use when compiling this target.\n\nIf not defined, will default to `[jvm].default_resolve`.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.scala", + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching `('*Spec.scala', '*Suite.scala')`)." + }, + "shell_command": { + "alias": "shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n execution_dependencies=[\":scripts\"],\n output_files=[\"logs/my-script.log\"],\n output_directories=[\"results\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_dependencies", + "default": null, + "description": "Any dependencies that need to be present (as transitive dependencies) whenever the outputs of this target are consumed (including as dependencies).\n\nSee also `execution_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "execution_dependencies", + "default": null, + "description": "The execution dependencies for this command.\n\nDependencies specified here are those required to make the command complete successfully (e.g. file inputs, packages compiled from other targets, etc), but NOT required to make the outputs of the command useful. Dependencies that are required to use the outputs produced by this command should be specified using the `output_dependencies` field.\n\nIf this field is specified, dependencies from `output_dependencies` will not be added to the execution sandbox.\n\nSee also `output_dependencies` and `runnable_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runnable_dependencies", + "default": null, + "description": "The runnable dependencies for this command.\n\nDependencies specified here are those required to exist on the `PATH` to make the command complete successfully (interpreters specified in a `#!` command, etc). Note that these dependencies will be made available on the `PATH` with the name of the target.\n\nSee also `output_dependencies` and `execution_dependencies`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as `'bash -c '` by default. If you want to invoke a binary use `exec -a $0 ` as the command so that the binary gets the correct `argv[0]` set.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output logged to the console.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "output_files", + "default": "()", + "description": "Specify the output files to capture, relative to the value of `workdir`.\n\nFor directories, use `output_directories`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_directories", + "default": "()", + "description": "Specify full directories (including recursive descendants) of output to capture, relative to the value of `workdir`.\n\nFor individual files, use `output_files`. At least one of `output_files` and`output_directories` must be specified.\n\nRelative paths (including `..`) may be used, as long as the path does not ascend further than the build root.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": "()", + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by `[shell-setup].executable_search_paths` (which defaults to the system PATH).", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to provide to the process.\n\nEntries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the working directory for the process.\n\nValues are relative to the build root, except in the following cases:\n\n* `.` specifies the location of the `BUILD` file.\n* Values beginning with `./` are relative to the location of the `BUILD` file.\n* `/` or the empty string specifies the build root.\n* Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_named_caches", + "default": null, + "description": "Named caches to construct for the execution. See https://www.pantsbuild.org/docs/reference-global#named_caches_dir.\n\nThe keys of the mapping are the directory name to be created in the named caches dir. The values are the name of the symlink (relative to the sandbox root) in the sandbox which points to the subdirectory in the named caches dir\n\nNOTE: The named caches MUST be handled with great care. Processes accessing the named caches can be run in parallel, and can be cancelled at any point in their execution (and potentially restarted). That means that _every_ operation modifying the contents of the cache MUST be concurrency and cancellation safe.", + "provider": "", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "root_output_directory", + "default": "'/'", + "description": "Adjusts the location of files output by this target, when consumed as a dependency.\n\nValues are relative to the build root, except in the following cases:\n\n * `.` specifies the location of the `BUILD` file.\n * Values beginning with `./` are relative to the location of the `BUILD` file.\n * `/` or the empty string specifies the build root.\n * Values beginning with `/` are also relative to the build root.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "environment", + "default": "'__local__'", + "description": "Specify which environment target to consume environment-sensitive options from.\n\nOnce environments are defined in `[environments-preview].names`, you can specify the environment for this target by its name. Any fields that are defined in that environment will override the values from options set by `pants.toml`, command line values, or environment variables.\n\nYou can specify multiple valid environments by using `parametrize`. If `__local__` is specified, Pants will fall back to the `local_environment` defined for the current platform, or no environment if no such environment exists.", + "provider": "", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Execute any external tool for its side effects." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.sh', 'new_*.sh', '!old_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shell_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + } + ], + "provider": "pants.backend.shell", + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['test.sh', 'test_*.sh', '!test_ignore.sh']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shunit2_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"foo_test.sh\": {\"timeout\": 120},\n \"bar_test.sh\": {\"timeout\": 200},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "provider": "pants.backend.shell.lint.shfmt", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "provider": "pants.backend.shell.lint.shellcheck", + "required": false, + "type_hint": "bool" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[test].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[test].timeout_maximum`. Only applies if the option `--test-timeouts` is set to true (the default).", + "provider": "", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "provider": "", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "provider": "", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `scie-pants-linux-x86_64 package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `scie-pants-linux-x86_64 package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `scie-pants-linux-x86_64 package`, e.g. a `pex_binary`, `python_aws_lambda_function`, or an `archive`.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.shell", + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "system_binary": { + "alias": "system_binary", + "description": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`.\n\nPants will search for binaries with name `binary_name` in the search paths provided, as well as default search paths. If `fingerprint` is specified, each binary that is located will be executed with the arguments from `fingerprint_args`. Any binaries whose output does not match the pattern will be excluded.\n\nThe first non-excluded binary will be the one that is resolved.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "binary_name", + "default": null, + "description": "The name of the binary to find.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "extra_search_paths", + "default": "()", + "description": "Extra search paths to look for the binary. These take priority over Pants' default search paths.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint", + "default": null, + "description": "A regular expression which will be used to match the fingerprint outputs from candidate binaries found during the search process.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "fingerprint_args", + "default": "()", + "description": "Specifies arguments that will be used to run the binary during the search process.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "fingerprint_dependencies", + "default": null, + "description": "Specifies any runnable dependencies that need to be available on the `PATH` when the binary is run, so that the search process may complete successfully. The name of the target must be the name of the runnable dependency that is called by this binary.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.adhoc", + "summary": "A system binary that can be run with `pants run` or consumed by `adhoc_tool`." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.core", + "summary": "A generic target with no specific type." + }, + "terraform_deployment": { + "alias": "terraform_deployment", + "description": "A deployment of Terraform", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "root_module", + "default": null, + "description": "The Terraform module to use as the root module.\n\nExample: `root_module=\":my_module\"`", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "backend_config", + "default": null, + "description": "Configuration to be merged with what is in the configuration file's 'backend' block", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "var_files", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `var_files=['common.tfvars', 'prod.tfvars']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A deployment of Terraform" + }, + "terraform_module": { + "alias": "terraform_module", + "description": "A single Terraform module corresponding to a directory.\n\nThere must only be one `terraform_module` in a directory.\n\nUse `terraform_modules` to generate `terraform_module` targets for less boilerplate.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.tf',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.tf', 'new_*.tf', '!old_ignore.tf']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.experimental.terraform", + "summary": "A single Terraform module corresponding to a directory." + }, + "thrift_source": { + "alias": "thrift_source", + "description": "A single Thrift file used to generate various languages.\n\nSee language-specific docs:\n Python: https://www.pantsbuild.org/v2.19/docs/thrift-python", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "A single Thrift file used to generate various languages." + }, + "thrift_sources": { + "alias": "thrift_sources", + "description": "Generate a `thrift_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*.thrift',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.thrift', 'new_*.thrift', '!old_ignore.thrift']`", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `thrift_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n overrides={\n \"bar.thrift\": {\"description\": \"our user model\"]},\n (\"foo.thrift\", \"bar.thrift\"): {\"tags\": [\"overridden\"]},\n }\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `thrift_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "provider": "", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.codegen.thrift.apache.python", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. `['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django']`.\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `scie-pants-linux-x86_64 dependencies` or `scie-pants-linux-x86_64 peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.19/docs/targets for more about how addresses are formed, including for generated targets. You can also run `scie-pants-linux-x86_64 list ::` to find all addresses in your project, or `scie-pants-linux-x86_64 list dir` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "provider": "pants.backend.codegen.thrift.apache.python", + "summary": "Generate a `thrift_source` target for each file in the `sources` field." + }, + "vcs_version": { + "alias": "vcs_version", + "description": "Generates a version string from VCS state.\n\nUses a constrained but useful subset of the full functionality of setuptools_scm (https://github.com/pypa/setuptools_scm). These constraints avoid pitfalls in the interaction of setuptools_scm with Pants's hermetic environments.\n\nIn particular, we ignore any existing setuptools_scm config. Instead you must provide a subset of that config in this target's fields.\n\nIf you need functionality that is not currently exposed here, please reach out to us at https://www.pantsbuild.org/v2.19/docs/getting-help.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `scie-pants-linux-x86_64 --tag='integration_test' test ::` to only run on targets with that tag.", + "provider": "", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `scie-pants-linux-x86_64 list --documented ::` to see all targets with descriptions.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "tag_regex", + "default": "'^(?:[\\\\w-]+-)?(?P[vV]?\\\\d+(?:\\\\.\\\\d+){0,2}[^\\\\+]*)(?:\\\\+.*)?$'", + "description": "A Python regex string to extract the version string from a VCS tag.\n\nThe regex needs to contain either a single match group, or a group named version, that captures the actual version information.\n\nNote that this is unrelated to the tags field and Pants's own tags concept.\n\nSee https://github.com/pypa/setuptools_scm for implementation details.", + "provider": "", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "generate_to", + "default": null, + "description": "Generate the version data to this relative path, using the template field.\n\nNote that the generated output will not be written to disk in the source tree, but will be available as a generated dependency to code that depends on this target.", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "template", + "default": null, + "description": "Generate the version data using this format string, which takes a version format kwarg.\n\nE.g., `'version = \"{version}\"'`", + "provider": "", + "required": true, + "type_hint": "str" + }, + { + "alias": "python_resolve", + "default": null, + "description": "The resolve from `[python].resolves` to use.\n\nIf not defined, will default to `[python].default_resolve`.\n\nAll dependencies must share the same value for their `resolve` field.", + "provider": "pants.backend.experimental.python", + "required": false, + "type_hint": "str | None" + } + ], + "provider": "pants.backend.experimental.python", + "summary": "Generates a version string from VCS state." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "fromfile": false, + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.build_files.fix.deprecations", + "pants.backend.build_files.fmt.black", + "pants.backend.build_files.fmt.buildifier", + "pants.backend.build_files.fmt.yapf", + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.lint.buf", + "pants.backend.codegen.protobuf.python", + "pants.backend.codegen.thrift.apache.python", + "pants.backend.docker", + "pants.backend.docker.lint.hadolint", + "pants.backend.experimental.adhoc", + "pants.backend.experimental.codegen.protobuf.go", + "pants.backend.experimental.codegen.protobuf.java", + "pants.backend.experimental.codegen.protobuf.scala", + "pants.backend.experimental.go", + "pants.backend.experimental.helm", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.kotlin", + "pants.backend.experimental.kotlin.lint.ktlint", + "pants.backend.experimental.openapi", + "pants.backend.experimental.openapi.lint.openapi_format", + "pants.backend.experimental.openapi.lint.spectral", + "pants.backend.experimental.python", + "pants.backend.experimental.python.framework.stevedore", + "pants.backend.experimental.python.lint.add_trailing_comma", + "pants.backend.experimental.python.lint.ruff", + "pants.backend.experimental.python.packaging.pyoxidizer", + "pants.backend.experimental.python.typecheck.pytype", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.experimental.terraform", + "pants.backend.experimental.tools.semgrep", + "pants.backend.experimental.tools.workunit_logger", + "pants.backend.experimental.tools.yamllint", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.autoflake", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pydocstyle", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.pyupgrade", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.tools.preamble" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "fromfile": false, + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "fromfile": false, + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "fromfile": false, + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with `--log-levels-by-target`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "fromfile": false, + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with `--level`. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "fromfile": false, + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "fromfile": false, + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "fromfile": false, + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `scie-pants-linux-x86_64` script from https://www.pantsbuild.org/v2.19/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `scie-pants-linux-x86_64 --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.19.0rc1" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.19.0rc1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "fromfile": false, + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.TG08L3iBWC/.pants.d/workdir", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "fromfile": false, + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/.pants.d/workdir" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "fromfile": false, + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.TG08L3iBWC/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "fromfile": false, + "help": "Write end products, such as the results of `pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.TG08L3iBWC/.pants.d/pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "fromfile": false, + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.TG08L3iBWC/.pants.d/pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.TG08L3iBWC/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "fromfile": false, + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.TG08L3iBWC/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "fromfile": false, + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "fromfile": false, + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc", + ".pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "fromfile": false, + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "fromfile": false, + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "fromfile": false, + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/", + "__pycache__", + "!.semgrep/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "fromfile": false, + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc).\n\nPatterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored.\n\n`pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/", + "__pycache__", + "!.semgrep/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "fromfile": false, + "help": "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.\n\nPatterns from `[GLOBAL].pants_ignore` take precedence over these files' rules. For example, you can use `!my_pattern` in `pants_ignore` to have Pants operate on files that are gitignored.\n\nWarning: this does not yet support reading nested gitignore files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "fromfile": false, + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--logdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "fromfile": false, + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "4GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "fromfile": false, + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "fromfile": false, + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "target_field_name": null, + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "fromfile": false, + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "fromfile": false, + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "fromfile": false, + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "fromfile": false, + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "fromfile": false, + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "fromfile": false, + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "fromfile": false, + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "fromfile": false, + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "fromfile": false, + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": [ + "fetch", + "validate", + "defer" + ], + "comma_separated_choices": "fetch, validate, defer", + "comma_separated_display_args": "--cache-content-behavior=", + "config_key": "cache_content_behavior", + "default": "fetch", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cache-content-behavior=" + ], + "env_var": "PANTS_CACHE_CONTENT_BEHAVIOR", + "fromfile": false, + "help": "Controls how the content of cache entries is handled during process execution.\n\nWhen using a remote cache, the `fetch` behavior will fetch remote cache content from the remote store before considering the cache lookup a hit, while the `validate` behavior will only validate (for either a local or remote cache) that the content exists, without fetching it.\n\nThe `defer` behavior, on the other hand, will neither fetch nor validate the cache content before calling a cache hit a hit. This \"defers\" actually fetching the cache entry until Pants needs it (which may be never).\n\nThe `defer` mode is the most network efficient (because it will completely skip network requests in many cases), followed by the `validate` mode (since it can still skip fetching the content if no consumer ends up needing it). But both the `validate` and `defer` modes rely on an experimental feature called \"backtracking\" to attempt to recover if content later turns out to be missing (`validate` has a much narrower window for backtracking though, since content would need to disappear between validation and consumption: generally, within one `pantsd` session).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "target_field_name": null, + "typ": "CacheContentBehavior", + "unscoped_cmd_line_args": [ + "--cache-content-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "fetch" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.19/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-total-child-memory-usage=", + "config_key": "process_total_child_memory_usage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-total-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_TOTAL_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The maximum memory usage for all \"pooled\" child processes.\n\nWhen set, this value participates in precomputing the pool size of child processes used by Pants (pooling is currently used only for the JVM). When not set, Pants will default to spawning `2 * --process-execution-local-parallelism` pooled processes.\n\nA high value would result in a high number of child processes spawned, potentially overconsuming your resources and triggering the OS' OOM killer. A low value would mean a low number of child processes launched and therefore less parallelism for the tasks that need those processes.\n\nIf setting this value, consider also adjusting the value of the `--process-per-child-memory-usage` option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-total-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-per-child-memory-usage=", + "config_key": "process_per_child_memory_usage", + "default": "512MiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-per-child-memory-usage=" + ], + "env_var": "PANTS_PROCESS_PER_CHILD_MEMORY_USAGE", + "fromfile": false, + "help": "The default memory usage for a single \"pooled\" child process.\n\nCheck the documentation for the `--process-total-child-memory-usage` for advice on how to choose an appropriate value for this option.\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "target_field_name": null, + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--process-per-child-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 536870912 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "fromfile": false, + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "fromfile": false, + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "fromfile": false, + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-graceful-shutdown-timeout=", + "config_key": "process_execution_graceful_shutdown_timeout", + "default": 3, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-graceful-shutdown-timeout=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_GRACEFUL_SHUTDOWN_TIMEOUT", + "fromfile": false, + "help": "The time in seconds to wait when gracefully shutting down an interactive process (such as one opened using `scie-pants-linux-x86_64 run`) before killing it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-graceful-shutdown-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "fromfile": false, + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use a Pants plugin which provides remote authentication to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-certs-path=", + "config_key": "remote_client_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-client-certs-path=" + ], + "env_var": "PANTS_REMOTE_CLIENT_CERTS_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_key_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-client-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-client-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-client-key-path=", + "config_key": "remote_client_key_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-client-key-path=" + ], + "env_var": "PANTS_REMOTE_CLIENT_KEY_PATH", + "fromfile": false, + "help": "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).\n\nIf unspecified, will use regular TLS. Requires `remote_client_certs_path` to also be specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-client-key-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-client-key-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "fromfile": false, + "help": "Path to a file containing an oauth token to use for gGRPC connections to `[GLOBAL].remote_execution_address` and `[GLOBAL].remote_store_address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `[GLOBAL].remote_execution_headers` and `[GLOBAL].remote_store_headers`, or use `[GLOBAL].remote_auth_plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "fromfile": false, + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "fromfile": false, + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_execution_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.19.0rc1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "fromfile": false, + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "fromfile": false, + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-timeout-millis=", + "config_key": "remote_store_rpc_timeout_millis", + "default": 30000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote store RPCs (not including streaming requests) in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-timeout-millis" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 30000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "fromfile": false, + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "backoff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "fromfile": false, + "help": "How frequently to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "target_field_name": null, + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "backoff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-timeout-millis=", + "config_key": "remote_cache_rpc_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_TIMEOUT_MILLIS", + "fromfile": false, + "help": "Timeout value for remote cache RPCs in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-timeout-millis" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "fromfile": false, + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `[GLOBAL].remote_store_address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": "{'user-agent': 'pants/'}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "fromfile": false, + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `[GLOBAL].remote_store_headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.19.0rc1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "fromfile": false, + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "fromfile": false, + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-append-only-caches-base-path=", + "config_key": "remote_execution_append_only_caches_base_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-append-only-caches-base-path=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_APPEND_ONLY_CACHES_BASE_PATH", + "fromfile": false, + "help": "Sets the base path to use when setting up an append-only cache for a process running remotely. If this option is not set, then append-only caches will not be used with remote execution. The option should be set to the absolute path of a writable directory in the remote execution environment where Pants can create append-only caches for use with remotely executing processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-append-only-caches-base-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "fromfile": false, + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-build-file-globs=", + "config_key": "unmatched_build_file_globs", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-build-file-globs=" + ], + "env_var": "PANTS_UNMATCHED_BUILD_FILE_GLOBS", + "fromfile": false, + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": [ + "--unmatched-build-file-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--unmatched-cli-globs=", + "config_key": "unmatched_cli_globs", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--unmatched-cli-globs=" + ], + "env_var": "PANTS_UNMATCHED_CLI_GLOBS", + "fromfile": false, + "help": "What to do when command line arguments, e.g. files and globs like `dir::`, cannot be found.\n\nThis usually happens when the files do not exist on your machine. It can also happen if they are ignored by the `[GLOBAL].pants_ignore` option, which causes the files to be invisible to Pants.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "target_field_name": null, + "typ": "GlobMatchErrorBehavior", + "unscoped_cmd_line_args": [ + "--unmatched-cli-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "fromfile": false, + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "fromfile": false, + "help": "Path globs or literals to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "fromfile": false, + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.19/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "fromfile": false, + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "fromfile": false, + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "fromfile": false, + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "--streaming-workunits-level=", + "config_key": "streaming_workunits_level", + "default": "debug", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-level=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_LEVEL", + "fromfile": false, + "help": "The level of workunits that will be reported to streaming workunit event receivers.\n\nWorkunits form a tree, and even when workunits are filtered out by this setting, the workunit tree structure will be preserved (by adjusting the parent pointers of the remaining workunits).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "--streaming-workunits-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debug" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "fromfile": false, + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-execution", + "config_key": "docker_execution", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-execution" + ], + "env_var": "PANTS_DOCKER_EXECUTION", + "fromfile": false, + "help": "If true, `docker_environment` targets can be used to run builds inside a Docker container.\n\nIf false, anytime a `docker_environment` target is used, Pants will instead fallback to whatever the target's `fallback_environment` field is set to.\n\nThis can be useful, for example, if you want to always use Docker locally, but disable it in CI, or vice versa.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--docker-execution", + "--no-docker-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "fromfile": false, + "help": "Platform properties to set on remote execution requests.\n\nFormat: `property=value`. Multiple values should be specified as multiple occurrences of this flag.\n\nPants itself may add additional platform properties.\n\nIf you are using the `remote_environment` target mechanism, set this value as a field on the target instead. This option will be ignored.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "fromfile": false, + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "target_field_name": null, + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "fromfile": false, + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "fromfile": false, + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "fromfile": false, + "help": "Enable concurrent runs of Pants. With this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. As a result, enabling this option will increase the per-run startup cost, but will not block subsequent invocations.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "fromfile": false, + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "always", + "on_failure", + "never" + ], + "comma_separated_choices": "always, on_failure, never", + "comma_separated_display_args": "--keep-sandboxes=", + "config_key": "keep_sandboxes", + "default": "never", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--keep-sandboxes=" + ], + "env_var": "PANTS_KEEP_SANDBOXES", + "fromfile": false, + "help": "Controls whether Pants will clean up local directories used as chroots for running processes.\n\nPants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "target_field_name": null, + "typ": "KeepSandboxes", + "unscoped_cmd_line_args": [ + "--keep-sandboxes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "never" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--session-end-tasks-timeout=", + "config_key": "session_end_tasks_timeout", + "default": 3.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--session-end-tasks-timeout=" + ], + "env_var": "PANTS_SESSION_END_TASKS_TIMEOUT", + "fromfile": false, + "help": "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 invocation to a configured remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--session-end-tasks-timeout" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--session-end-tasks-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "fromfile": false, + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `[GLOBAL].remote_cache_read` and `[GLOBAL].remote_cache_write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "fromfile": false, + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "fromfile": false, + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `[GLOBAL].remote_execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "fromfile": false, + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "fromfile": false, + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "indicatif-spinner", + "experimental-prodash" + ], + "comma_separated_choices": "indicatif-spinner, experimental-prodash", + "comma_separated_display_args": "--dynamic-ui-renderer=", + "config_key": "dynamic_ui_renderer", + "default": "indicatif-spinner", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dynamic-ui-renderer=" + ], + "env_var": "PANTS_DYNAMIC_UI_RENDERER", + "fromfile": false, + "help": "If `--dynamic-ui` is enabled, selects the renderer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "target_field_name": null, + "typ": "DynamicUIRenderer", + "unscoped_cmd_line_args": [ + "--dynamic-ui-renderer" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "indicatif-spinner" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "fromfile": false, + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.19/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "fromfile": false, + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "fromfile": false, + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use the `keep_sandboxes` option instead.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "provider": "pants.core", + "scope": "" + }, + "add-trailing-comma": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-install-from-resolve=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `add-trailing-comma` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-console-script=", + "config_key": "console_script", + "default": "add-trailing-comma", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-console-script=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "add-trailing-comma" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-entry-point=" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]add-trailing-comma-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]add-trailing-comma-skip" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_SKIP", + "fromfile": false, + "help": "If true, don't use add-trailing-comma when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-skip", + "--no-add-trailing-comma-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--add-trailing-comma-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--add-trailing-comma-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ADD_TRAILING_COMMA_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to add-trailing-comma, e.g. `--add-trailing-comma-args='--py36-plus'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--add-trailing-comma-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The add-trailing-comma Python code formatter (https://github.com/asottile/add-trailing-comma).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.add_trailing_comma", + "scope": "add-trailing-comma" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "fromfile": false, + "help": "Whether to send anonymous telemetry to the Pants project.\n\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\n\nSee https://www.pantsbuild.org/v2.19/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "fromfile": false, + "help": "An anonymized ID representing this repo.\n\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\n\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\n\nSee https://www.pantsbuild.org/v2.19/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "provider": "pants.core", + "scope": "anonymous-telemetry" + }, + "apache-thrift": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-expected-version=", + "config_key": "expected_version", + "default": "0.15", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-expected-version=" + ], + "env_var": "PANTS_APACHE_THRIFT_EXPECTED_VERSION", + "fromfile": false, + "help": "The major/minor version of Apache Thrift that you are using, such as `0.15`.\n\nPants will only use Thrift binaries from `--thrift-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-expected-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.15" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--apache-thrift-thrift-search-paths=\"['', '', ...]\"", + "config_key": "thrift_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--apache-thrift-thrift-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_APACHE_THRIFT_THRIFT_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Thrift.\n\nSpecify absolute paths to directories with the `thrift` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--apache-thrift-thrift-search-paths" + ], + "target_field_name": "apache_thrift_thrift_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--thrift-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Apache Thrift IDL compiler (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "apache-thrift" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-install-from-resolve=" + ], + "env_var": "PANTS_AUTOFLAKE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `autoflake` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "fromfile": false, + "help": "If true, don't use Autoflake when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [ + "--remove-all-unused-imports" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args='--remove-all-unused-imports --target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "--remove-all-unused-imports" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "provider": "pants.backend.python.lint.autoflake", + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-install-from-resolve=" + ], + "env_var": "PANTS_BANDIT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `bandit` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "fromfile": false, + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "fromfile": false, + "help": "If true, don't use Bandit when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args='--skip B101,B308 --confidence'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "provider": "pants.backend.python.lint.bandit", + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-install-from-resolve=" + ], + "env_var": "PANTS_BLACK_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `black` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "fromfile": false, + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "fromfile": false, + "help": "If true, don't use Black when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Black, e.g. `--black-args='--target-version=py37 --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "provider": "pants.core", + "scope": "black" + }, + "buf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-version=", + "config_key": "version", + "default": "v1.3.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-version=" + ], + "env_var": "PANTS_BUF_VERSION", + "fromfile": false, + "help": "Use this version of Buf.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v1.3.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUF_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v1.3.0|linux_arm64 |fbfd53c501451b36900247734bfa4cbe86ae05d0f51bc298de8711d5ee374ee5|13940828", + "v1.3.0|linux_x86_64|e29c4283b1cd68ada41fa493171c41d7605750d258fcd6ecdf692a63fae95213|15267162", + "v1.3.0|macos_arm64 |147985d7f2816a545792e38b26178ff4027bf16cd3712f6e387a4e3692a16deb|15391890", + "v1.3.0|macos_x86_64|3b6bd2e5a5dd758178aee01fb067261baf5d31bfebe93336915bfdf7b21928c4|15955291" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-template=", + "config_key": "url_template", + "default": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-template=" + ], + "env_var": "PANTS_BUF_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bufbuild/buf/releases/download/{version}/buf-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUF_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-aarch64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-arm64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buf-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-use-unsupported-version=" + ], + "env_var": "PANTS_BUF_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buf is not supported.\n\nSupported Buf versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-config=" + ], + "env_var": "PANTS_BUF_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Buf (https://docs.buf.build/configuration/overview).\n\nSetting this option will disable `[buf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-config-discovery" + ], + "env_var": "PANTS_BUF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant root config files during runs (`buf.yaml`). If the json format is preferred, the path to the `buf.json` file should be provided in the config option.\n\nUse `[buf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-config-discovery", + "--no-buf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-format-skip", + "config_key": "format_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-format-skip" + ], + "env_var": "PANTS_BUF_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-skip", + "--no-buf-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--format-skip", + "--no-format-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buf-lint-skip", + "config_key": "lint_skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buf-lint-skip" + ], + "env_var": "PANTS_BUF_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use Buf when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-skip", + "--no-buf-lint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-skip", + "--no-lint-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-format-args=\"[, , ...]\"", + "config_key": "format_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-format-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--format-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buf-lint-args=\"[, , ...]\"", + "config_key": "lint_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buf-lint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUF_LINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buf, e.g. `--buf-args='--error-format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buf-lint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--lint-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter and formatter for Protocol Buffers (https://github.com/bufbuild/buf).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.lint.buf", + "scope": "buf" + }, + "build-deprecations-fixer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]build-deprecations-fixer-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]build-deprecations-fixer-skip" + ], + "env_var": "PANTS_BUILD_DEPRECATIONS_FIXER_SKIP", + "fromfile": false, + "help": "If true, don't use BUILD Deprecations Fixer when running `scie-pants-linux-x86_64 fix`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-deprecations-fixer-skip", + "--no-build-deprecations-fixer-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool/plugin for fixing BUILD file deprecations (where possible).\n\nThis includes deprecations for:\n\n - Renamed targets\n - Renamed fields", + "is_goal": false, + "provider": "pants.backend.build_files.fix.deprecations", + "scope": "build-deprecations-fixer" + }, + "buildifier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-version=", + "config_key": "version", + "default": "5.1.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-version=" + ], + "env_var": "PANTS_BUILDIFIER_VERSION", + "fromfile": false, + "help": "Use this version of Buildifier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.1.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "5.1.0|macos_x86_64|c9378d9f4293fc38ec54a08fbc74e7a9d28914dae6891334401e59f38f6e65dc|7125968", + "5.1.0|macos_arm64 |745feb5ea96cb6ff39a76b2821c57591fd70b528325562486d47b5d08900e2e4|7334498", + "5.1.0|linux_x86_64|52bf6b102cb4f88464e197caac06d69793fa2b05f5ad50a7e7bf6fbd656648a3|7226100", + "5.1.0|linux_arm64 |917d599dbb040e63ae7a7e1adb710d2057811902fdc9e35cce925ebfd966eeb8|7171938" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-template=", + "config_key": "url_template", + "default": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-template=" + ], + "env_var": "PANTS_BUILDIFIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/bazelbuild/buildtools/releases/download/{version}/buildifier-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_BUILDIFIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--buildifier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-use-unsupported-version=" + ], + "env_var": "PANTS_BUILDIFIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Buildifier is not supported.\n\nSupported Buildifier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]buildifier-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]buildifier-skip" + ], + "env_var": "PANTS_BUILDIFIER_SKIP", + "fromfile": false, + "help": "If true, don't use Buildifier when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-skip", + "--no-buildifier-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--buildifier-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--buildifier-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BUILDIFIER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Buildifier, e.g. `--buildifier-args='-lint=fix'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--buildifier-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Buildifier is a tool for formatting BUILD files with a standard convention.\n\nPants supports running Buildifier on your Pants BUILD files for several reasons:\n - You might like the style that buildifier uses.\n - You might be incrementally adopting Pants from Bazel, and are already using buildifier.\n\nPlease note that there are differences from Bazel's BUILD files (which are Starlark) and Pants' BUILD files (which are Python), so buildifier may issue a syntax error. In practice, these errors should be rare. See https://bazel.build/rules/language#differences_with_python.", + "is_goal": false, + "provider": "pants.backend.build_files.fmt.buildifier", + "scope": "buildifier" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "fromfile": false, + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "fromfile": false, + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependents=", + "config_key": "dependents", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependents=" + ], + "env_var": "PANTS_CHANGED_DEPENDENTS", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependents" + ], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": [ + "--dependents" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [ + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.23.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "fromfile": false, + "help": "Include direct or transitive dependents of changed targets.", + "removal_hint": "Use --dependents instead", + "removal_version": "2.23.0.dev0", + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "target_field_name": null, + "typ": "DependentsOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.19/docs/advanced-target-selection.", + "is_goal": false, + "provider": "", + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--check-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--check-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_CHECK_ONLY", + "fromfile": false, + "help": "Only run these checkers and skip all others.\n\nThe checker names are outputted at the final summary of running this goal, e.g. `mypy` and `javac`. You can also run `check --only=fake` to get a list of all activated checkers.\n\nYou can repeat this option, e.g. `check --only=mypy --only=javac` or `check --only=['mypy', 'javac']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--check-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "provider": "pants.core", + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "fromfile": false, + "help": "Register command line aliases.\n\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependents=transitive\"\n\nThis would allow you to run `scie-pants-linux-x86_64 green all-changed`, which is shorthand for `scie-pants-linux-x86_64 fmt lint check --changed-since=HEAD --changed-dependents=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "provider": "", + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Count lines of code.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "fromfile": false, + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.6|macos_arm64 |746b3e346fa2c0107fdbc8a627890d495cb09dee4f8dcc87146bdb45941088cf|20829782|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-apple-darwin.gz", + "v2.1.6|linux_arm64 |33330ca433781c9db9458e15d2d32e5d795de3437771647e26835e8b1391af82|20899290|https://github.com/VirtusLab/coursier-m1/releases/download/v2.1.6/cs-aarch64-pc-linux.gz", + "v2.1.6|linux_x86_64|af7234f8802107f5e1130307ef8a5cc90262d392f16ddff7dce27a4ed0ddd292|20681688", + "v2.1.6|macos_x86_64|36a5d42a0724be2ac39d0ebd8869b985e3d58ceb121bc60389ee2d6d7408dd56|20037412", + "v2.1.0-M5-18-gfebf9838c|linux_arm64 |d4ad15ba711228041ad8a46d848c83c8fbc421d7b01c415d8022074dd609760f|19264005", + "v2.1.0-M5-18-gfebf9838c|linux_x86_64|3e1a1ad1010d5582e9e43c5a26b273b0147baee5ebd27d3ac1ab61964041c90b|19551533", + "v2.1.0-M5-18-gfebf9838c|macos_arm64 |d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.1.0-M5-18-gfebf9838c|macos_x86_64|d13812c5a5ef4c9b3e25cc046d18addd09bacd149f95b20a14e4d2a73e358ecf|18826510", + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "fromfile": false, + "help": "Maven style repositories to resolve artifacts from.\n\nCoursier will resolve these repositories in the order in which they are specifed, and re-ordering repositories will cause artifacts to be re-downloaded. This can result in artifacts in lockfiles becoming invalid.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A dependency resolver for the Maven ecosystem. (https://get-coursier.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "coursier" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-install-from-resolve=" + ], + "env_var": "PANTS_COVERAGE_PY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `coverage-py` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "{distdir}/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Pytest Coverage report to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "fromfile": false, + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "fromfile": false, + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil']`.\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json", + "lcov" + ], + "comma_separated_choices": "console, xml, html, raw, json, lcov", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "fromfile": false, + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "fromfile": false, + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "fromfile": false, + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting `fail_under` in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set `[report] precision` properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "target_field_name": null, + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "coverage-py" + }, + "debug-adapter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-host=", + "config_key": "host", + "default": "127.0.0.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-host=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_HOST", + "fromfile": false, + "help": "The hostname to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-host" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--host" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "127.0.0.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debug-adapter-port=", + "config_key": "port", + "default": 5678, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debug-adapter-port=" + ], + "env_var": "PANTS_DEBUG_ADAPTER_PORT", + "fromfile": false, + "help": "The port to use when launching the server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debug-adapter-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5678 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to configure and launch a Debug Adapter server.\n\nSee https://microsoft.github.io/debug-adapter-protocol/ for more information.", + "is_goal": false, + "provider": "pants.core", + "scope": "debug-adapter" + }, + "debugpy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-install-from-resolve=" + ], + "env_var": "PANTS_DEBUGPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `debugpy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DEBUGPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-console-script=" + ], + "env_var": "PANTS_DEBUGPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-entry-point=", + "config_key": "entry_point", + "default": "debugpy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-entry-point=" + ], + "env_var": "PANTS_DEBUGPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "debugpy" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--debugpy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--debugpy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DEBUGPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to debugpy, e.g. `--debugpy-args='--log-to-stderr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--debugpy-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An implementation of the Debug Adapter Protocol for Python (https://github.com/microsoft/debugpy).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "debugpy" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependencies" + }, + "dependents": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependents-output-file=" + ], + "env_var": "PANTS_DEPENDENTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependents-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependents-sep=" + ], + "env_var": "PANTS_DEPENDENTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependents-transitive" + ], + "env_var": "PANTS_DEPENDENTS_TRANSITIVE", + "fromfile": false, + "help": "List all transitive dependents. If unspecified, list direct dependents only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-transitive", + "--no-dependents-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependents-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependents-closed" + ], + "env_var": "PANTS_DEPENDENTS_CLOSED", + "fromfile": false, + "help": "Include the input targets in the output, along with the dependents.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependents-closed", + "--no-dependents-closed" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": "dependees", + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "dependents" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-install-from-resolve=" + ], + "env_var": "PANTS_DOCFORMATTER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `docformatter` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "fromfile": false, + "help": "If true, don't use docformatter when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args='--wrap-summaries=100 --pre-summary-newline'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "provider": "pants.backend.python.lint.docformatter", + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-tools=\"['', '', ...]\"", + "config_key": "tools", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-tools=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_TOOLS", + "fromfile": false, + "help": "List any additional executable tools required for Docker to work. The paths to these tools will be included in the PATH used in the execution sandbox, so that they may be used by the Docker client.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tools" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tools" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-tailor" + ], + "env_var": "PANTS_DOCKER_TAILOR", + "fromfile": false, + "help": "If true, add `docker_image` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-tailor", + "--no-docker-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find the Docker client and any tools required. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-executable-search-paths" + ], + "target_field_name": "docker_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "target_field_name": "docker_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "fromfile": true, + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n \"extra_image_tags\": [],\n \"skip_push\": bool,\n \"repository\": str,\n \"use_local_alias\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\n\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nA `docker_image` may be pushed to a subset of registries using the per registry `skip_push` option rather then the all or nothing toggle of the field option `skip_push` on the `docker_image` target.\n\nAny image tags that should only be added for specific registries may be provided as the `extra_image_tags` option. The tags may use value formatting the same as for the `image_tags` field of the `docker_image` target.\n\nWhen a registry provides a `repository` value, it will be used instead of the `docker_image.repository` or the default repository. Using the placeholders `{target_repository}` or `{default_repository}` those overridden values may be incorporated into the registry specific repository value.\n\nIf `use_local_alias` is true, a built image is additionally tagged locally using the registry alias as the value for repository (i.e. the additional image tag is not pushed) and will be used for any `pants run` requests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "fromfile": false, + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables (in addition to the normal placeheolders derived from the Dockerfile and build args etc):\n\n * name\n * directory\n * parent_directory\n * target_repository\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\n\nRegistries may override the repository value for a specific registry.\n\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-context-root=", + "config_key": "default_context_root", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-context-root=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_CONTEXT_ROOT", + "fromfile": false, + "help": "Provide a default Docker build context root path for `docker_image` targets that does not specify their own `context_root` field.\n\nThe context root is relative to the build root by default, but may be prefixed with `./` to be relative to the directory of the BUILD file of the `docker_image`.\n\nExamples:\n\n --default-context-root=src/docker\n --default-context-root=./relative_to_the_build_file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-context-root" + ], + "target_field_name": null, + "typ": "workspace_path", + "unscoped_cmd_line_args": [ + "--default-context-root" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-use-buildx", + "config_key": "use_buildx", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-use-buildx" + ], + "env_var": "PANTS_DOCKER_USE_BUILDX", + "fromfile": false, + "help": "Use [buildx](https://github.com/docker/buildx#buildx) (and BuildKit) for builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-use-buildx", + "--no-docker-use-buildx" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-buildx", + "--no-use-buildx" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "fromfile": false, + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "fromfile": false, + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "build_hosts", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-hosts=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_BUILD_HOSTS", + "fromfile": false, + "help": "Hosts entries to be added to the `/etc/hosts` file in all built images.\n\nExample:\n\n [docker]\n build_hosts = {\"docker\": \"10.180.0.1\", \"docker2\": \"10.180.0.2\"}\n\nUse the `extra_build_hosts` field on a `docker_image` target for additional image specific host entries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-hosts" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--build-hosts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-no-cache", + "config_key": "build_no_cache", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-no-cache" + ], + "env_var": "PANTS_DOCKER_BUILD_NO_CACHE", + "fromfile": false, + "help": "Do not use the Docker cache when building images.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-no-cache", + "--no-docker-build-no-cache" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-no-cache", + "--no-build-no-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docker-build-verbose", + "config_key": "build_verbose", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docker-build-verbose" + ], + "env_var": "PANTS_DOCKER_BUILD_VERBOSE", + "fromfile": false, + "help": "Whether to log the Docker output to the console. If false, only the image ID is logged.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-verbose", + "--no-docker-build-verbose" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--build-verbose", + "--no-build-verbose" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "fromfile": false, + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ scie-pants-linux-x86_64 run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for interacting with Docker.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-install-from-resolve=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `dockerfile-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.docker", + "scope": "dockerfile-parser" + }, + "download-terraform": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-version=", + "config_key": "version", + "default": "1.4.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_VERSION", + "fromfile": false, + "help": "Use this version of terraform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.4.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.4.6|macos_x86_64|5d8332994b86411b049391d31ad1a0785dfb470db8b9c50617de28ddb5d1f25d|22051279", + "1.4.6|macos_arm64|30a2f87298ff9f299452119bd14afaa8d5b000c572f62fa64baf432e35d9dec1|20613318", + "1.4.6|linux_x86_64|e079db1a8945e39b1f8ba4e513946b3ab9f32bd5a2bdf19b9b186d22c5a3d53b|20779821", + "1.4.6|linux_arm64|b38f5db944ac4942f11ceea465a91e365b0636febd9998c110fbbe95d61c3b26|18834675", + "1.4.5|macos_x86_64|808e54d826737e9a0ca79bbe29330e50d3622bbeeb26066c63b371a291731711|22031074", + "1.4.5|macos_arm64|7104d9d13632aa61b494a349c589048d21bd550e579404c3a41c4932e4d6aa97|20592841", + "1.4.5|linux_x86_64|ce10e941cd11554b15a189cd00191c05abc20dff865599d361bdb863c5f406a9|20767621", + "1.4.5|linux_arm64|ca2c48f518f72fef668255150cc5e63b92545edc62a05939bbff8a350bceb357|18813058", + "1.4.4|macos_x86_64|0303ed9d7e5a225fc2e6fa9bf76fc6574c0c0359f22d5dfc04bc8b3234444f7c|22032187", + "1.4.4|macos_arm64|75602d9ec491982ceabea813569579b2991093a4e0d76b7ca86ffd9b7a2a1d1e|20594012", + "1.4.4|linux_x86_64|67541c1f6631befcc25b764028e5605e59234d4424e60a256518ee1e8dd50593|20767354", + "1.4.4|linux_arm64|f0b4e092f2aa6de3324e5e4b5b51260ecf5e8c2f5335ff7a2ffdc4fb54a8922d|18814310", + "1.4.3|macos_x86_64|89bdb242bfacf24167f365ef7a3bf0ad0e443ddd27ebde425fb71d77ce1a2597|22032267", + "1.4.3|macos_arm64|20b9d484bf99ada6c0de89316176ba33f7c87f64c0738991188465147bba221b|20574247", + "1.4.3|linux_x86_64|2252ee6ac8437b93db2b2ba341edc87951e2916afaeb50a88b858e80796e9111|20781685", + "1.4.3|linux_arm64|d3d9464953d390970e7f4f7cbcd94dbf63136da6fe1cbb4955d944a9315bdcdb|18814307", + "1.4.2|macos_x86_64|c218a6c0ef6692b25af16995c8c7bdf6739e9638fef9235c6aced3cd84afaf66|22030042", + "1.4.2|macos_arm64|af8ff7576c8fc41496fdf97e9199b00d8d81729a6a0e821eaf4dfd08aa763540|20588400", + "1.4.2|linux_x86_64|9f3ca33d04f5335472829d1df7785115b60176d610ae6f1583343b0a2221a931|20234129", + "1.4.2|linux_arm64|39c182670c4e63e918e0a16080b1cc47bb16e158d7da96333d682d6a9cb8eb91|18206088", + "1.4.1|macos_x86_64|96466364a7e66e3d456ecb6c85a63c83e124c004f8835fb8ea9b7bbb7542a9d0|22077050", + "1.4.1|macos_arm64|61f76e130b97c8a9017d8aaff15d252af29117e35ea1a0fc30bcaab7ceafce73|20634145", + "1.4.1|linux_x86_64|9e9f3e6752168dea8ecb3643ea9c18c65d5a52acc06c22453ebc4e3fc2d34421|20276168", + "1.4.1|linux_arm64|53322cc70b6e50ac1985bf26a78ffa2814789a4704880f071eaf3e67a463d6f6|18248378", + "1.4.0|macos_x86_64|e897a4217f1c3bfe37c694570dcc6371336fbda698790bb6b0547ec8daf1ffb3|21935694", + "1.4.0|macos_arm64|d4a1e564714c6acf848e86dc020ff182477b49f932e3f550a5d9c8f5da7636fb|20508091", + "1.4.0|linux_x86_64|5da60da508d6d1941ffa8b9216147456a16bbff6db7622ae9ad01d314cbdd188|20144407", + "1.4.0|linux_arm64|33e0f4f0b75f507fc19012111de008308df343153cd6a3992507f4566c0bb723|18130960", + "1.3.9|macos_x86_64|a73326ea8fb06f6976597e005f8047cbd55ac76ed1e517303d8f6395db6c7805|21194871", + "1.3.9|macos_arm64|d8a59a794a7f99b484a07a0ed2aa6520921d146ac5a7f4b1b806dcf5c4af0525|19793371", + "1.3.9|linux_x86_64|53048fa573effdd8f2a59b726234c6f450491fe0ded6931e9f4c6e3df6eece56|19477757", + "1.3.9|linux_arm64|da571087268c5faf884912c4239c6b9c8e1ed8e8401ab1dcb45712df70f42f1b|17513770", + "1.3.8|macos_x86_64|1a27a6fac31ecb05de610daf61a29fe83d304d7c519d773afbf56c11c3b6276b|21189878", + "1.3.8|macos_arm64|873b05ac81645cd7289d6ccfd3e73d4735af1a453f2cd19da0650bdabf7d2eb6|19780134", + "1.3.8|linux_x86_64|9d9e7d6a9b41cef8b837af688441d4fbbd84b503d24061d078ad662441c70240|19479266", + "1.3.8|linux_arm64|a42bf3c7d6327f45d2b212b692ab4229285fb44dbb8adb7c39e18be2b26167c8|17507360", + "1.3.7|macos_x86_64|eeae48adcd55212b34148ed203dd5843e9b2a84a852a9877f3386fadb0514980|21185288", + "1.3.7|macos_arm64|01d553db5f7b4cf0729b725e4402643efde5884b1dabf5eb80af328ce5e447cf|19774151", + "1.3.7|linux_x86_64|b8cf184dee15dfa89713fe56085313ab23db22e17284a9a27c0999c67ce3021e|19464102", + "1.3.7|linux_arm64|5b491c555ea8a62dda551675fd9f27d369f5cdbe87608d2a7367d3da2d38ea38|17499971", + "1.3.6|macos_x86_64|13881fe0100238577394243a90c0631783aad21b77a9a7ee830404f86c0d37bb|21183111", + "1.3.6|macos_arm64|dbff0aeeaeee877c254f5414bef5c9d186e159aa0019223aac678abad9442c53|19779986", + "1.3.6|linux_x86_64|bb44a4c2b0a832d49253b9034d8ccbd34f9feeb26eda71c665f6e7fa0861f49b|19466755", + "1.3.6|linux_arm64|f4b1af29094290f1b3935c29033c4e5291664ee2c015ca251a020dd425c847c3|17501845", + "1.3.5|macos_x86_64|e6c9836188265b20c2588e9c9d6b1727094b324a379337e68ba58a6d26be8b51|21182319", + "1.3.5|macos_arm64|fcec1cbff229fbe59b03257ba2451d5ad1f5129714f08ccf6372b2737647c063|19780547", + "1.3.5|linux_x86_64|ac28037216c3bc41de2c22724e863d883320a770056969b8d211ca8af3d477cf|19469337", + "1.3.5|linux_arm64|ba5b1761046b899197bbfce3ad9b448d14550106d2cc37c52a60fc6822b584ed|17502759", + "1.3.4|macos_x86_64|2a75c69ec5ed8506658b266a40075256b62a7d245ff6297df7e48fa72af23879|21181585", + "1.3.4|macos_arm64|a1f740f92afac6db84421a3ec07d9061c34a32f88b4b0b47d243de16c961169f|19773343", + "1.3.4|linux_x86_64|b24210f28191fa2a08efe69f54e3db2e87a63369ac4f5dcaf9f34dc9318eb1a8|19462529", + "1.3.4|linux_arm64|65381c6b61b2d1a98892199f649a5764ff5a772080a73d70f8663245e6402c39|17494667", + "1.3.3|macos_x86_64|2b3cf653cd106becdea562b6c8d3f8939641e5626c5278729cbef81678fa9f42|21163874", + "1.3.3|macos_arm64|51e94ecf88059e8a53c363a048b658230f560574f99b0d8396ebacead894d159|19755200", + "1.3.3|linux_x86_64|fa5cbf4274c67f2937cabf1a6544529d35d0b8b729ce814b40d0611fd26193c1|19451941", + "1.3.3|linux_arm64|b940a080c698564df5e6a2f1c4e1b51b2c70a5115358d2361e3697d3985ecbfe|17488660", + "1.3.2|macos_x86_64|3639461bbc712dc130913bbe632afb449fce8c0df692429d311e7cb808601901|21163990", + "1.3.2|macos_arm64|80480acbfee2e2d0b094f721f7568a40b790603080d6612e19b797a16b8ba82d|19757201", + "1.3.2|linux_x86_64|6372e02a7f04bef9dac4a7a12f4580a0ad96a37b5997e80738e070be330cb11c|19451510", + "1.3.2|linux_arm64|ce1a8770aaf27736a3352c5c31e95fb10d0944729b9d81013bf6848f8657da5f|17485206", + "1.3.1|macos_x86_64|4282ebe6d1d72ace0d93e8a4bcf9a6f3aceac107966216355bb516b1c49cc203|21161667", + "1.3.1|macos_arm64|f0514f29b08da2f39ba4fff0d7eb40093915c9c69ddc700b6f39b78275207d96|19756039", + "1.3.1|linux_x86_64|0847b14917536600ba743a759401c45196bf89937b51dd863152137f32791899|19450765", + "1.3.1|linux_arm64|7ebb3d1ff94017fbef8acd0193e0bd29dec1a8925e2b573c05a92fdb743d1d5b|17486534", + "1.3.0|macos_x86_64|80e55182d4495da867c93c25dc6ae29be83ece39d3225e6adedecd55b72d6bbf|21163947", + "1.3.0|macos_arm64|df703317b5c7f80dc7c61e46de4697c9f440e650a893623351ab5e184995b404|19741011", + "1.3.0|linux_x86_64|380ca822883176af928c80e5771d1c0ac9d69b13c6d746e6202482aedde7d457|19450952", + "1.3.0|linux_arm64|0a15de6f934cf2217e5055412e7600d342b4f7dcc133564690776fece6213a9a|17488551", + "1.2.9|macos_x86_64|84a678ece9929cebc34c7a9a1ba287c8b91820b336f4af8437af7feaa0117b7c|21672810", + "1.2.9|macos_arm64|bc3b94b53cdf1be3c4988faa61aad343f48e013928c64bfc6ebeb61657f97baa|20280541", + "1.2.9|linux_x86_64|0e0fc38641addac17103122e1953a9afad764a90e74daf4ff8ceeba4e362f2fb|19906116", + "1.2.9|linux_arm64|6da7bf01f5a72e61255c2d80eddeba51998e2bb1f50a6d81b0d3b71e70e18531|17946045", + "1.2.8|macos_x86_64|efd3e21a9bb1cfa68303f8d119ea8970dbb616f5f99caa0fe21d796e0cd70252|21678594", + "1.2.8|macos_arm64|2c83bfea9e1c202c449e91bee06a804afb45cb8ba64a73da48fb0f61df51b327|20277152", + "1.2.8|linux_x86_64|3e9c46d6f37338e90d5018c156d89961b0ffb0f355249679593aff99f9abe2a2|19907515", + "1.2.8|linux_arm64|26c05cadb05cdaa8ac64b90b982b4e9350715ec2e9995a6b03bb964d230de055|17947439", + "1.2.7|macos_x86_64|74e47b54ea78685be24c84e0e17b22b56220afcdb24ec853514b3863199f01e4|21673162", + "1.2.7|macos_arm64|ec4e623914b411f8cc93a1e71396a1e7f1fe1e96bb2e532ba3e955d2ca5cc442|20278743", + "1.2.7|linux_x86_64|dfd7c44a5b6832d62860a01095a15b53616fb3ea4441ab89542f9364e3fca718|19907183", + "1.2.7|linux_arm64|80d064008d57ba5dc97e189215c87275bf39ca14b1234430eae2f114394ea229|17943724", + "1.2.6|macos_x86_64|d896d2776af8b06cd4acd695ad75913040ce31234f5948688fd3c3fde53b1f75|21670957", + "1.2.6|macos_arm64|c88ceb34f343a2bb86960e32925c5ec43b41922ee9ede1019c5cf7d7b4097718|20279669", + "1.2.6|linux_x86_64|9fd445e7a191317dcfc99d012ab632f2cc01f12af14a44dfbaba82e0f9680365|19905977", + "1.2.6|linux_arm64|322755d11f0da11169cdb234af74ada5599046c698dccc125859505f85da2a20|17943213", + "1.2.5|macos_x86_64|2520fde736b43332b0c2648f4f6dde407335f322a3085114dc4f70e6e50eadc0|21659883", + "1.2.5|macos_arm64|92ad40db4a0930bdf872d6336a7b3a18b17c6fd04d9fc769b554bf51c8add505|20266441", + "1.2.5|linux_x86_64|281344ed7e2b49b3d6af300b1fe310beed8778c56f3563c4d60e5541c0978f1b|19897064", + "1.2.5|linux_arm64|0544420eb29b792444014988018ae77a7c8df6b23d84983728695ba73e38f54a|17938208", + "1.2.4|macos_x86_64|e7d2c66264a3da94854ae6ff692bbb9a1bc11c36bb5658e3ef19841388a07430|21658356", + "1.2.4|macos_arm64|c31754ff5553707ef9fd2f913b833c779ab05ce192eb14913f51816a077c6798|20263133", + "1.2.4|linux_x86_64|705ea62a44a0081594dad6b2b093eefefb12d54fa5a20a66562f9e082b00414c|19895510", + "1.2.4|linux_arm64|11cfa2233dc708b51b16d5b923379db67e35c22b1b988773e5b31a7c2e251471|17936883", + "1.2.3|macos_x86_64|bdc22658463237530dc120dadb0221762d9fb9116e7a6e0dc063d8ae649c431e|21658937", + "1.2.3|macos_arm64|6f06debac2ac54951464bf490e1606f973ab53ad8ba5decea76646e8f9309512|20256836", + "1.2.3|linux_x86_64|728b6fbcb288ad1b7b6590585410a98d3b7e05efe4601ef776c37e15e9a83a96|19891436", + "1.2.3|linux_arm64|a48991e938a25bfe5d257f4b6cbbdc73d920cc34bbc8f0e685e28b9610ad75fe|17933271", + "1.2.2|macos_x86_64|1d22663c1ab22ecea774ae63aee21eecfee0bbc23b953206d889a5ba3c08525a|21656824", + "1.2.2|macos_arm64|b87716b55a3b10cced60db5285bae57aee9cc0f81c555dccdc4f54f62c2a3b60|20254768", + "1.2.2|linux_x86_64|2934a0e8824925beb956b2edb5fef212a6141c089d29d8568150a43f95b3a626|19889133", + "1.2.2|linux_arm64|9c6202237d7477412054dcd36fdc269da9ee66ecbc45bb07d0d63b7d36af7b21|17932829", + "1.2.1|macos_x86_64|31c0fd4deb7c6a77c08d2fdf59c37950e6df7165088c004e1dd7f5e09fbf6307|21645582", + "1.2.1|macos_arm64|70159b3e3eb49ee71193815943d9217c59203fd4ee8c6960aeded744094a2250|20253448", + "1.2.1|linux_x86_64|8cf8eb7ed2d95a4213fbfd0459ab303f890e79220196d1c4aae9ecf22547302e|19881618", + "1.2.1|linux_arm64|972ea512dac822274791dedceb6e7f8b9ac2ed36bd7759269b6806d0ab049128|17922073", + "1.2.0|macos_x86_64|1b102ba3bf0c60ff6cbee74f721bf8105793c1107a1c6d03dcab98d7079f0c77|21645732", + "1.2.0|macos_arm64|f5e46cabe5889b60597f0e9c365cbc663e4c952c90a16c10489897c2075ae4f0|20253335", + "1.2.0|linux_x86_64|b87de03adbdfdff3c2552c8c8377552d0eecd787154465100cf4e29de4a7be1f|19880608", + "1.2.0|linux_arm64|ee80b8635d8fdbaed57beffe281cf87b8b1fd1ddb29c08d20e25a152d9f0f871|17920355", + "1.1.9|macos_x86_64|685258b525eae94fb0b406faf661aa056d31666256bf28e625365a251cb89fdc|20850638", + "1.1.9|macos_arm64|39fac4be74462be86b2290dd09fe1092f73dfb48e2df92406af0e199cfa6a16c|20093184", + "1.1.9|linux_x86_64|9d2d8a89f5cc8bc1c06cb6f34ce76ec4b99184b07eb776f8b39183b513d7798a|19262029", + "1.1.9|linux_arm64|e8a09d1fe5a68ed75e5fabe26c609ad12a7e459002dea6543f1084993b87a266|17521011", + "1.1.8|macos_x86_64|48f1f1e04d0aa8f5f1a661de95e3c2b8fd8ab16b3d44015372aff7693d36c2cf|20354970", + "1.1.8|macos_arm64|943e1948c4eae82cf8b490bb274939fe666252bbc146f098e7da65b23416264a|19631574", + "1.1.8|linux_x86_64|fbd37c1ec3d163f493075aa0fa85147e7e3f88dd98760ee7af7499783454f4c5|18796132", + "1.1.8|linux_arm64|10b2c063dcff91329ee44bce9d71872825566b713308b3da1e5768c6998fb84f|17107405", + "1.1.7|macos_x86_64|6e56eea328683541f6de0d5f449251a974d173e6d8161530956a20d9c239731a|20351873", + "1.1.7|macos_arm64|8919ceee34f6bfb16a6e9ff61c95f4043c35c6d70b21de27e5a153c19c7eba9c|19625836", + "1.1.7|linux_x86_64|e4add092a54ff6febd3325d1e0c109c9e590dc6c38f8bb7f9632e4e6bcca99d4|18795309", + "1.1.7|linux_arm64|2f72982008c52d2d57294ea50794d7c6ae45d2948e08598bfec3e492bce8d96e|17109768", + "1.1.6|macos_x86_64|7a499c1f08d89548ae4c0e829eea43845fa1bd7b464e7df46102b35e6081fe44|20303856", + "1.1.6|macos_arm64|f06a14fdb610ec5a7f18bdbb2f67187230eb418329756732d970b6ca3dae12c3|19577273", + "1.1.6|linux_x86_64|3e330ce4c8c0434cdd79fe04ed6f6e28e72db44c47ae50d01c342c8a2b05d331|18751464", + "1.1.6|linux_arm64|a53fb63625af3572f7252b9fb61d787ab153132a8984b12f4bb84b8ee408ec53|17069580", + "1.1.5|macos_x86_64|dcf7133ebf61d195e432ddcb70e604bf45056163d960e991881efbecdbd7892b|20300006", + "1.1.5|macos_arm64|6e5a8d22343722dc8bfcf1d2fd7b742f5b46287f87171e8143fc9b87db32c3d4|19581167", + "1.1.5|linux_x86_64|30942d5055c7151f051c8ea75481ff1dc95b2c4409dbb50196419c21168d6467|18748879", + "1.1.5|linux_arm64|2fb6324c24c14523ae63cedcbc94a8e6c1c317987eced0abfca2f6218d217ca5|17069683", + "1.1.4|macos_x86_64|4f3bc78fedd4aa17f67acc0db4eafdb6d70ba72392aaba65fe72855520f11f3d|20242050", + "1.1.4|macos_arm64|5642b46e9c7fb692f05eba998cd4065fb2e48aa8b0aac9d2a116472fbabe34a1|19498408", + "1.1.4|linux_x86_64|fca028d622f82788fdc35c1349e78d69ff07c7bb68c27d12f8b48c420e3ecdfb|18695508", + "1.1.4|linux_arm64|3c1982cf0d16276c82960db60c998d79ba19e413af4fa2c7f6f86e4994379437|16996040", + "1.1.3|macos_x86_64|016bab760c96d4e64d2140a5f25c614ccc13c3fe9b3889e70c564bd02099259f|20241648", + "1.1.3|macos_arm64|02ba769bb0a8d4bc50ff60989b0f201ce54fd2afac2fb3544a0791aca5d3f6d5|19493636", + "1.1.3|linux_x86_64|b215de2a18947fff41803716b1829a3c462c4f009b687c2cbdb52ceb51157c2f|18692580", + "1.1.3|linux_arm64|ad5a1f2c132bedc5105e3f9900e4fe46858d582c0f2a2d74355da718bbcef65d|16996972", + "1.1.2|macos_x86_64|78faa76db5dc0ecfe4bf7c6368dbf5cca019a806f9d203580a24a4e0f8cd8353|20240584", + "1.1.2|macos_arm64|cc3bd03b72db6247c9105edfeb9c8f674cf603e08259075143ffad66f5c25a07|19486800", + "1.1.2|linux_x86_64|734efa82e2d0d3df8f239ce17f7370dabd38e535d21e64d35c73e45f35dfa95c|18687805", + "1.1.2|linux_arm64|088e2226d1ddb7f68a4f65c704022a1cfdbf20fe40f02e0c3646942f211fd746|16994702", + "1.1.1|macos_x86_64|d125dd2e92b9245f2202199b52f234035f36bdcbcd9a06f08e647e14a9d9067a|20237718", + "1.1.1|macos_arm64|4cb6e5eb4f6036924caf934c509a1dfd61cd2c651bb3ee8fbfe2e2914dd9ed17|19488315", + "1.1.1|linux_x86_64|07b8dc444540918597a60db9351af861335c3941f28ea8774e168db97dd74557|18687006", + "1.1.1|linux_arm64|d6fd14da47af9ec5fa3ad5962eaef8eed6ff2f8a5041671f9c90ec5f4f8bb554|16995635", + "1.1.0|macos_x86_64|6e0ba9afb8795a544e70dc0459f0095fea7df15e38f5d88a7dd3f620d50f8bfe|20226329", + "1.1.0|macos_arm64|7955e173c7eadb87123fc0633c3ee67d5ba3b7d6c7f485fe803efed9f99dce54|19491369", + "1.1.0|linux_x86_64|763378aa75500ce5ba67d0cba8aa605670cd28bf8bafc709333a30908441acb5|18683106", + "1.1.0|linux_arm64|6697e9a263e264310373f3c91bf83f4cbfeb67b13994d2a8f7bcc492b554552e|16987201", + "1.0.11|macos_x86_64|551a16b612edaae1037925d0e2dba30d16504ff4bd66606955172c2ed8d76131|19422757", + "1.0.11|macos_arm64|737e1765afbadb3d76e1929d4b4af8da55010839aa08e9e730d46791eb8ea5a6|18467868", + "1.0.11|linux_x86_64|eeb46091a42dc303c3a3c300640c7774ab25cbee5083dafa5fd83b54c8aca664|18082446", + "1.0.11|linux_arm64|30c650f4bc218659d43e07d911c00f08e420664a3d12c812228e66f666758645|16148492", + "1.0.10|macos_x86_64|077479e98701bc9be88db21abeec684286fd85a3463ce437d7739d2a4e372f18|33140832", + "1.0.10|macos_arm64|776f2e144039ece66ae326ebda0884254848a2e11f0590757d02e3a74f058c81|32013985", + "1.0.10|linux_x86_64|a221682fcc9cbd7fde22f305ead99b3ad49d8303f152e118edda086a2807716d|32674953", + "1.0.10|linux_arm64|b091dbe5c00785ae8b5cb64149d697d61adea75e495d9e3d910f61d8c9967226|30505040", + "1.0.9|macos_x86_64|be122ff7fb925643c5ebf4e5704b18426e18d3ca49ab59ae33d208c908cb6d5a|33140006", + "1.0.9|macos_arm64|89b2b4fd1a0c57fabc08ad3180ad148b1f7c1c0492ed865408f75f12e11a083b|32010657", + "1.0.9|linux_x86_64|f06ac64c6a14ed6a923d255788e4a5daefa2b50e35f32d7a3b5a2f9a5a91e255|32674820", + "1.0.9|linux_arm64|457ac590301126e7b151ea08c5b9586a882c60039a0605fb1e44b8d23d2624fd|30510941", + "1.0.8|macos_x86_64|909781ee76250cf7445f3b7d2b82c701688725fa1db3fb5543dfeed8c47b59de|33140123", + "1.0.8|macos_arm64|92fa31b93d736fab6f3d105beb502a9da908445ed942a3d46952eae88907c53e|32011344", + "1.0.8|linux_x86_64|a73459d406067ce40a46f026dce610740d368c3b4a3d96591b10c7a577984c2e|32681118", + "1.0.8|linux_arm64|01aaef769f4791f9b28530e750aadbc983a8eabd0d55909e26392b333a1a26e4|30515501", + "1.0.7|macos_x86_64|23b85d914465882b027d3819cc05cd114a1aaf39b550de742e81a99daa998183|33140742", + "1.0.7|macos_arm64|d9062959f28ba0f934bfe2b6e0b021e0c01a48fa065102554ca103b8274e8e0c|32012708", + "1.0.7|linux_x86_64|bc79e47649e2529049a356f9e60e06b47462bf6743534a10a4c16594f443be7b|32671441", + "1.0.7|linux_arm64|4e71a9e759578020750be41e945c086e387affb58568db6d259d80d123ac80d3|30529105", + "1.0.6|macos_x86_64|5ac4f41d5e28f31817927f2c5766c5d9b98b68d7b342e25b22d053f9ecd5a9f1|33141677", + "1.0.6|macos_arm64|613020f90a6a5d0b98ebeb4e7cdc4b392aa06ce738fbb700159a465cd27dcbfa|32024047", + "1.0.6|linux_x86_64|6a454323d252d34e928785a3b7c52bfaff1192f82685dfee4da1279bb700b733|32677516", + "1.0.6|linux_arm64|2047f8afc7d0d7b645a0422181ba3fe47b3547c4fe658f95eebeb872752ec129|30514636" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-template=", + "config_key": "url_template", + "default": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://releases.hashicorp.com/terraform/{version}/terraform_{version}_{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-terraform-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of terraform is not supported.\n\nSupported terraform versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Terraform processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-extra-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]download-terraform-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]download-terraform-tailor" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_TAILOR", + "fromfile": false, + "help": "If true, add `terraform_module` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-tailor", + "--no-download-terraform-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-terraform-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-terraform-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_DOWNLOAD_TERRAFORM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to terraform, e.g. `--download-terraform-args='-auto-approve'`.\n\nAdditional arguments to pass to the Terraform command line.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-terraform-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform (https://terraform.io)", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "download-terraform" + }, + "environments-preview": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "names", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--environments-preview-names=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_ENVIRONMENTS_PREVIEW_NAMES", + "fromfile": false, + "help": "A mapping of logical names to addresses to environment targets. For example:\n\n [environments-preview.names]\n linux_local = \"//:linux_env\"\n macos_local = \"//:macos_env\"\n centos6 = \"//:centos6_docker_env\"\n linux_ci = \"build-support:linux_ci_env\"\n macos_ci = \"build-support:macos_ci_env\"\n\nTo use an environment for a given target, specify the name in the `environment` field on that target. Pants will consume the environment target at the address mapped from that name.\n\nPants will ignore any environment targets that are not given a name via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--environments-preview-names" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A highly experimental subsystem to allow setting environment variables and executable search paths for different environments, e.g. macOS vs. Linux.", + "is_goal": false, + "provider": "", + "scope": "environments-preview" + }, + "experimental-bsp": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]experimental-bsp-server", + "config_key": "server", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]experimental-bsp-server" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_SERVER", + "fromfile": false, + "help": "Run the Build Server Protocol server. Pants will receive BSP RPC requests via the console. This should only ever be invoked via the IDE.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-server", + "--no-experimental-bsp-server" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--server", + "--no-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-runner-env-vars=\"['', '', ...]\"", + "config_key": "runner_env_vars", + "default": [ + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-runner-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_RUNNER_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set in the BSP runner script when setting up BSP in a repository. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants' own environment when the experimental-bsp goal was run.\n\nThis option only takes effect when the BSP runner script is written. If the option changes, you must run `scie-pants-linux-x86_64 experimental-bsp` again to write a new copy of the BSP runner script.\n\nNote: The environment variables passed to the Pants BSP server will be those set for your IDE and not your shell. For example, on macOS, the IDE is generally launched by `launchd` after clicking on a Dock icon, and not from the shell. Thus, any environment variables set for your shell will likely not be seen by the Pants BSP server. At the very least, on macOS consider writing an explicit PATH into the BSP runner script via this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-runner-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--runner-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-bsp-groups-config-files=\"[, , ...]\"", + "config_key": "groups_config_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-bsp-groups-config-files=\"[, , ...]\"" + ], + "env_var": "PANTS_EXPERIMENTAL_BSP_GROUPS_CONFIG_FILES", + "fromfile": false, + "help": "A list of config files that define groups of Pants targets to expose to IDEs via Build Server Protocol.\n\nPants generally uses fine-grained targets to define the components of a build (in many cases on a file-by-file basis). Many IDEs, however, favor coarse-grained targets that contain large numbers of source files. To accommodate this distinction, the Pants BSP server will compute a set of BSP build targets to use from the groups specified in the config files set for this option. Each group will become one or more BSP build targets.\n\nEach config file is a TOML file with a `groups` dictionary with the following format for an entry:\n\n # The dictionary key is used to identify the group. It must be unique.\n [groups.ID1]:\n # One or more Pants address specs defining what targets to include in the group.\n addresses = [\n \"src/jvm::\",\n \"tests/jvm::\",\n ]\n # Filter targets to a specific resolve. Targets in a group must be from a single resolve.\n # Format of filter is `TYPE:RESOLVE_NAME`. The only supported TYPE is `jvm`. RESOLVE_NAME must be\n # a valid resolve name.\n resolve = \"jvm:jvm-default\"\n display_name = \"Display Name\" # (Optional) Name shown to the user in the IDE.\n base_directory = \"path/from/build/root\" # (Optional) Hint to the IDE for where the build target should \"live.\"\n\nPants will merge the contents of the config files together. If the same ID is used for a group definition, in multiple config files, the definition in the latter config file will take effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-bsp-groups-config-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--groups-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Setup repository for Build Server Protocol (https://build-server-protocol.github.io/).", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-bsp" + }, + "experimental-deploy": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Perform a deployment process.", + "is_goal": true, + "provider": "pants.core", + "scope": "experimental-deploy" + }, + "experimental-explorer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-address=", + "config_key": "address", + "default": "localhost", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-address=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_ADDRESS", + "fromfile": false, + "help": "Server address to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-address" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "localhost" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--experimental-explorer-port=", + "config_key": "port", + "default": 8000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--experimental-explorer-port=" + ], + "env_var": "PANTS_EXPERIMENTAL_EXPLORER_PORT", + "fromfile": false, + "help": "Server port to bind to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--experimental-explorer-port" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 8000 + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run the Pants Explorer Web UI server.", + "is_goal": true, + "provider": "pants.goal", + "scope": "experimental-explorer" + }, + "export": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-py-editable-in-resolve=\"['', '', ...]\"", + "config_key": "py_editable_in_resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-editable-in-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_PY_EDITABLE_IN_RESOLVE", + "fromfile": false, + "help": "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.\n\nIf a resolve name is not in this list, 'python_distribution' targets will not be installed in the virtualenv. This defaults to an empty list for backwards compatibility and to prevent unnecessary work to generate and install the PEP-660 editable wheels.\n\nThis only applies when '[python].enable_resolves' is true and when exporting a 'mutable_virtualenv' ('symlinked_immutable_virtualenv' exports are not \"full\" virtualenvs because they must not be edited, and do not include 'pip').\n\nNOTE: If you are using legacy exports (not using the '--resolve' option), then this option has no effect. Legacy exports will not include any editable installs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-py-editable-in-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--py-editable-in-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--export-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_EXPORT_RESOLVE", + "fromfile": false, + "help": "Export the specified resolve(s). The export format is backend-specific, e.g., Python resolves are exported as virtualenvs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "mutable_virtualenv", + "symlinked_immutable_virtualenv" + ], + "comma_separated_choices": "mutable_virtualenv, symlinked_immutable_virtualenv", + "comma_separated_display_args": "--export-py-resolve-format=", + "config_key": "py_resolve_format", + "default": "mutable_virtualenv", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--export-py-resolve-format=" + ], + "env_var": "PANTS_EXPORT_PY_RESOLVE_FORMAT", + "fromfile": false, + "help": "Export Python resolves using this format. Options are:\n - `mutable_virtualenv`: Export a standalone mutable virtualenv that you can\n further modify.\n - `symlinked_immutable_virtualenv`: Export a symlink into a cached Python virtualenv.\n This virtualenv will have no pip binary, and will be immutable. Any attempt to\n modify it will corrupt the cache! It may, however, take significantly less time\n to export than a standalone, mutable virtualenv.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--export-py-resolve-format" + ], + "target_field_name": null, + "typ": "PythonResolveExportFormat", + "unscoped_cmd_line_args": [ + "--py-resolve-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mutable_virtualenv" + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]export-symlink-python-virtualenv", + "config_key": "symlink_python_virtualenv", + "default": false, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 2.20.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]export-symlink-python-virtualenv" + ], + "env_var": "PANTS_EXPORT_SYMLINK_PYTHON_VIRTUALENV", + "fromfile": false, + "help": "Export a symlink into a cached Python virtualenv. This virtualenv will have no pip binary, and will be immutable. Any attempt to modify it will corrupt the cache! It may, however, take significantly less time to export than a standalone, mutable virtualenv will.", + "removal_hint": "Set the `[export].py_resolve_format` option to 'symlinked_immutable_virtualenv'", + "removal_version": "2.20.0.dev0", + "scoped_cmd_line_args": [ + "--export-symlink-python-virtualenv", + "--no-export-symlink-python-virtualenv" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--symlink-python-virtualenv", + "--no-symlink-python-virtualenv" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "provider": "pants.core", + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "provider": "pants.core", + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "fromfile": false, + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "fromfile": false, + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "fromfile": false, + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "fromfile": false, + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "fromfile": false, + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "target_field_name": null, + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "fromfile": false, + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "fromfile": false, + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "filter" + }, + "fix": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fix-batch-size=" + ], + "env_var": "PANTS_FIX_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each fixer batch.\n\nFixer processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in fixer processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fix-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fix-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FIX_ONLY", + "fromfile": false, + "help": "Only run these fixers and skip all others.\n\nThe fixer names are outputted at the final summary of running this goal, e.g. `autoflake` and `pyupgrade`. You can also run `fix --only=fake` to get a list of all activated fixers.\n\nYou can repeat this option, e.g. `fix --only=autoflake --only=pyupgrade` or `fix --only=['autoflake', 'pyupgrade']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fix-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fix-skip-formatters" + ], + "env_var": "PANTS_FIX_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters.\n\nFYI: when running `scie-pants-linux-x86_64 fix fmt ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `fix` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fix-skip-formatters", + "--no-fix-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autofix source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fix" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-install-from-resolve=" + ], + "env_var": "PANTS_FLAKE8_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `flake8` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "fromfile": false, + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-files=\"[, , ...]\"", + "config_key": "extra_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-files=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_FILES", + "fromfile": false, + "help": "Paths to extra files to include in the sandbox. This can be useful for Flake8 plugins,\n like including config files for the `flake8-bandit` plugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-files" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/flake8/custom_plugin.py`, add `'build-support/flake8'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Flake8 to discover your plugin. See https://www.pantsbuild.org/v2.19/docs/source-roots\n\nYou must also set `[flake8:local-plugins]` in your Flake8 config file.\n\nFor example:\n\n [flake8:local-plugins]\n extension =\n CUSTOMCODE = custom_plugin:MyChecker\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside flake8 itself, as described in https://www.pantsbuild.org/v2.19/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "fromfile": false, + "help": "If true, don't use Flake8 when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args='--ignore E123,W456 --enable-extensions H111'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.flake8", + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-batch-size=" + ], + "env_var": "PANTS_FMT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each formatter batch.\n\nFormatter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in formatter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--fmt-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--fmt-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_FMT_ONLY", + "fromfile": false, + "help": "Only run these formatters and skip all others.\n\nThe formatter names are outputted at the final summary of running this goal, e.g. `isort` and `shfmt`. You can also run `fmt --only=fake` to get a list of all activated formatters.\n\nYou can repeat this option, e.g. `fmt --only=isort --only=shfmt` or `fmt --only=['isort', 'shfmt']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Autoformat source code.", + "is_goal": true, + "provider": "pants.core", + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "fromfile": false, + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `scie-pants-linux-x86_64 generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "fromfile": false, + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from backend-specific configuration such as `[python].resolves`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `scie-pants-linux-x86_64 generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff", + "config_key": "diff", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]generate-lockfiles-diff" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF", + "fromfile": false, + "help": "Print a summary of changed distributions after generating the lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff", + "--no-generate-lockfiles-diff" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff", + "--no-diff" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]generate-lockfiles-diff-include-unchanged", + "config_key": "diff_include_unchanged", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]generate-lockfiles-diff-include-unchanged" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_DIFF_INCLUDE_UNCHANGED", + "fromfile": false, + "help": "Include unchanged distributions in the diff summary output. Implies `diff=true`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-diff-include-unchanged", + "--no-generate-lockfiles-diff-include-unchanged" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--diff-include-unchanged", + "--no-diff-include-unchanged" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate lockfiles for third-party dependencies.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-lockfiles" + }, + "generate-snapshots": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Generate test snapshots.", + "is_goal": true, + "provider": "pants.core", + "scope": "generate-snapshots" + }, + "go-generate": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-generate-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-generate-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_GENERATE_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking generator programs. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-generate-env-vars" + ], + "target_field_name": "go_generate_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Run each command in a package described by a `//go:generate` directive. This is equivalent to running `go generate` on a Go package.\n\nNote: Just like with `go generate`, the `go-generate` goal is never run as part of the build and must be run manually to invoke the commands described by the `//go:generate` directives.\n\nSee https://go.dev/blog/generate for details.", + "is_goal": true, + "provider": "pants.backend.experimental.go", + "scope": "go-generate" + }, + "go-test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-output-dir=", + "config_key": "coverage_output_dir", + "default": "{distdir}/coverage/go/{target_spec}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-output-dir=" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_OUTPUT_DIR", + "fromfile": false, + "help": "Path to write the Go coverage reports to. Must be relative to the build root.\n\nReplacements:\n\n - `{distdir}` is replaced with the Pants `distdir`.\n - `{target_spec}` is replaced with the address of the applicable `go_package` target with `/`\n characters replaced with dots (`.`).\n - `{import_path}` is replaced with the applicable package's import path. Subdirectories will be made\n for any path components separated by `/` characters.\n - `{import_path_escaped}` is replaced with the applicable package's import path but with\n slashes converted to underscores. This is deprecated and only exists to support behavior from\n earlier versions.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-output-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--coverage-output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/coverage/go/{target_spec}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-output-test-binary", + "config_key": "output_test_binary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-output-test-binary" + ], + "env_var": "PANTS_GO_TEST_OUTPUT_TEST_BINARY", + "fromfile": false, + "help": "Write the test binary to the test extra output directory.\n\nThis is similar to the `go test -c` option, but will still run the underlying test.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-output-test-binary", + "--no-go-test-output-test-binary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--output-test-binary", + "--no-output-test-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Go test binary, e.g. `--go-test-args='-run TestFoo -v'`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": [ + "set", + "count", + "atomic" + ], + "comma_separated_choices": "set, count, atomic", + "comma_separated_display_args": "--go-test-cover-mode=", + "config_key": "cover_mode", + "default": "set", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-cover-mode=" + ], + "env_var": "PANTS_GO_TEST_COVER_MODE", + "fromfile": false, + "help": "Coverage mode to use when running Go tests with coverage analysis enabled via `--test-use-coverage`. Valid values are `set`, `count`, and `atomic`:\n\n * `set`: bool: does this statement run?\n * `count`: int: how many times does this statement run?\n * `atomic`: int: count, but correct in multithreaded tests; significantly more expensive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cover-mode" + ], + "target_field_name": null, + "typ": "GoCoverMode", + "unscoped_cmd_line_args": [ + "--cover-mode" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "set" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-coverage-html", + "config_key": "coverage_html", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-coverage-html" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_HTML", + "fromfile": false, + "help": "If true, then convert coverage reports to HTML format and write a `coverage.html` file next to the raw coverage data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-html", + "--no-go-test-coverage-html" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--coverage-html", + "--no-coverage-html" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-coverage-packages=\"['', '', ...]\"", + "config_key": "coverage_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-coverage-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_GO_TEST_COVERAGE_PACKAGES", + "fromfile": false, + "help": "A list of \"import path patterns\" for determining which import paths will be instrumented for code coverage.\n\nFrom `go help packages`:\n\nAn import path is a pattern if it includes one or more \"...\" wildcards, each of which can match any string, including the empty string and strings containing slashes. Such a pattern expands to all package directories found in the GOPATH trees with names matching the patterns.\n\nTo make common patterns more convenient, there are two special cases. First, /... at the end of the pattern can match an empty string, so that net/... matches both net and packages in its subdirectories, like net/http. Second, any slash-separated pattern element containing a wildcard never participates in a match of the \"vendor\" element in the path of a vendored package, so that ./... does not match packages in subdirectories of ./vendor or ./mycode/vendor, but ./vendor/... and ./mycode/vendor/... do. Note, however, that a directory named vendor that itself contains code is not a vendored package: cmd/vendor would be a command named vendor, and the pattern cmd/... matches it. See golang.org/s/go15vendor for more about vendoring.\n\nThis option is similar to the `go test -coverpkg` option, but without support currently for reserved import path patterns like `std` and `all`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-coverage-packages" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--coverage-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-skip" + ], + "env_var": "PANTS_GO_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Go test binary when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-skip", + "--no-go-test-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-race", + "config_key": "force_race", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-force-race" + ], + "env_var": "PANTS_GO_TEST_FORCE_RACE", + "fromfile": false, + "help": "If true, then always enable the Go data race detector when running tests regardless of the test-by-test `test_race` field on the relevant `go_package` target.\n\nSee https://go.dev/doc/articles/race_detector for additional information about the Go data race detector.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-race", + "--no-go-test-force-race" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-race", + "--no-force-race" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-msan", + "config_key": "force_msan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-force-msan" + ], + "env_var": "PANTS_GO_TEST_FORCE_MSAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"memory sanitizer\" when running tests regardless of the test-by-test `msan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/MemorySanitizer for additional information about the C/C++ memory sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-msan", + "--no-go-test-force-msan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-msan", + "--no-force-msan" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-force-asan", + "config_key": "force_asan", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-force-asan" + ], + "env_var": "PANTS_GO_TEST_FORCE_ASAN", + "fromfile": false, + "help": "If true, then always enable interoperation between Go and the C/C++ \"address sanitizer\" when running tests regardless of the test-by-test `asan` field on the relevant `go_package` target.\n\nSee https://github.com/google/sanitizers/wiki/AddressSanitizer for additional information about the C/C++ address sanitizer.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-force-asan", + "--no-go-test-force-asan" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-asan", + "--no-force-asan" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-block-profile", + "config_key": "block_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-block-profile" + ], + "env_var": "PANTS_GO_TEST_BLOCK_PROFILE", + "fromfile": false, + "help": "Capture a goroutine blocking profile from the execution of the test runner. The profile will be written to the file `block.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-block-profile", + "--no-go-test-block-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--block-profile", + "--no-block-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-cpu-profile", + "config_key": "cpu_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-cpu-profile" + ], + "env_var": "PANTS_GO_TEST_CPU_PROFILE", + "fromfile": false, + "help": "Capture a CPU profile from the execution of the test runner. The profile will be written to the file `cpu.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-cpu-profile", + "--no-go-test-cpu-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cpu-profile", + "--no-cpu-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mem-profile", + "config_key": "mem_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-mem-profile" + ], + "env_var": "PANTS_GO_TEST_MEM_PROFILE", + "fromfile": false, + "help": "Capture an allocation profile from the execution of the test runner after tests have passed. The profile will be written to the file `mem.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mem-profile", + "--no-go-test-mem-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mem-profile", + "--no-mem-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-mutex-profile", + "config_key": "mutex_profile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-mutex-profile" + ], + "env_var": "PANTS_GO_TEST_MUTEX_PROFILE", + "fromfile": false, + "help": "Capture a mutex contention profile from the execution of the test runner when all tests are complete. The profile will be written to the file `mutex.out` in the test extra output directory. The test binary will also be written to the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-mutex-profile", + "--no-go-test-mutex-profile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mutex-profile", + "--no-mutex-profile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]go-test-trace", + "config_key": "trace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]go-test-trace" + ], + "env_var": "PANTS_GO_TEST_TRACE", + "fromfile": false, + "help": "Capture an execution trace from the execution of the test runner. The trace will be written to the file `trace.out` in the test extra output directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-trace", + "--no-go-test-trace" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--trace", + "--no-trace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Go tests.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "fromfile": false, + "help": "If true, don't use gofmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--gofmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--gofmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_GOFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to gofmt, e.g. `--gofmt-args='-s -e'`.\n\nOnly the following style related options are supported: `-e`, `-r`, `-s`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Gofmt-specific options.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-go-mod-targets", + "config_key": "tailor_go_mod_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-go-mod-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_GO_MOD_TARGETS", + "fromfile": false, + "help": "If true, add a `go_mod` target with the `tailor` goal wherever there is a `go.mod` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-go-mod-targets", + "--no-golang-tailor-go-mod-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-go-mod-targets", + "--no-tailor-go-mod-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-package-targets", + "config_key": "tailor_package_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-package-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_PACKAGE_TARGETS", + "fromfile": false, + "help": "If true, add a `go_package` target with the `tailor` goal in every directory with a `.go` file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-package-targets", + "--no-golang-tailor-package-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-package-targets", + "--no-tailor-package-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-tailor-binary-targets", + "config_key": "tailor_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-tailor-binary-targets" + ], + "env_var": "PANTS_GOLANG_TAILOR_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add a `go_binary` target with the `tailor` goal in every directory with a `.go` file with `package main`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-tailor-binary-targets", + "--no-golang-tailor-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-binary-targets", + "--no-tailor-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-tool-name=", + "config_key": "asdf_tool_name", + "default": "go-sdk", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-tool-name=" + ], + "env_var": "PANTS_GOLANG_ASDF_TOOL_NAME", + "fromfile": false, + "help": "The ASDF tool name to use when searching for installed Go distributions using the ASDF tool manager (https://asdf-vm.com/). The default value for this option is for the `go-sdk` ASDF plugin (https://github.com/yacchi/asdf-go-sdk.git). There are other plugins. If you wish to use one of them, then set this option to the ASDF tool name under which that other plugin was installed into ASDF.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-tool-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-tool-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "go-sdk" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-asdf-bin-relpath=", + "config_key": "asdf_bin_relpath", + "default": "bin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-asdf-bin-relpath=" + ], + "env_var": "PANTS_GOLANG_ASDF_BIN_RELPATH", + "fromfile": false, + "help": "The path relative to an ASDF install directory to use to find the `bin` directory within an installed Go distribution. The default value for this option works for the `go-sdk` ASDF plugin. Other ASDF plugins that install Go may have a different relative path to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-asdf-bin-relpath" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--asdf-bin-relpath" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "target_field_name": "golang_subprocess_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gcc-binary-name=", + "config_key": "cgo_gcc_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-gcc-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_GCC_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-gcc-binary-name" + ], + "target_field_name": "golang_cgo_gcc_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-gcc-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-gxx-binary-name=", + "config_key": "cgo_gxx_binary_name", + "default": "g++", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-gxx-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_GXX_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile C++ code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-gxx-binary-name" + ], + "target_field_name": "golang_cgo_gxx_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-gxx-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "g++" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-binary-name=", + "config_key": "cgo_fortran_binary_name", + "default": "gfortran", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-binary-name=" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use to compile fortran code included via CGo in a Go package. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-fortran-binary-name" + ], + "target_field_name": "golang_cgo_fortran_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--cgo-fortran-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gfortran" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-external-linker-binary-name=", + "config_key": "external_linker_binary_name", + "default": "gcc", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-external-linker-binary-name=" + ], + "env_var": "PANTS_GOLANG_EXTERNAL_LINKER_BINARY_NAME", + "fromfile": false, + "help": "Name of the tool to use as the \"external linker\" when invoking `go tool link`. Pants will search for the tool using the paths specified by the `[golang].cgo_tool_search_paths` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-external-linker-binary-name" + ], + "target_field_name": "golang_external_linker_binary_name", + "typ": "str", + "unscoped_cmd_line_args": [ + "--external-linker-binary-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "gcc" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-c-flags=\"['', '', ...]\"", + "config_key": "cgo_c_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-c-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_C_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C code when Cgo is enabled. Equivalent to setting the CGO_CFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-c-flags" + ], + "target_field_name": "golang_cgo_c_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-c-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-cxx-flags=\"['', '', ...]\"", + "config_key": "cgo_cxx_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-cxx-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_CXX_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling C++ code when Cgo is enabled. Equivalent to setting the CGO_CXXFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-cxx-flags" + ], + "target_field_name": "golang_cgo_cxx_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-cxx-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-fortran-flags=\"['', '', ...]\"", + "config_key": "cgo_fortran_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-fortran-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_FORTRAN_FLAGS", + "fromfile": false, + "help": "Compiler options used when compiling Fortran code when Cgo is enabled. Equivalent to setting the CGO_FFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-fortran-flags" + ], + "target_field_name": "golang_cgo_fortran_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-fortran-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-linker-flags=\"['', '', ...]\"", + "config_key": "cgo_linker_flags", + "default": [ + "-g", + "-O2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-linker-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_LINKER_FLAGS", + "fromfile": false, + "help": "Compiler options used when linking native code when Cgo is enabled. Equivalent to setting the CGO_LDFLAGS environment variable when invoking `go`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-linker-flags" + ], + "target_field_name": "golang_cgo_linker_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-linker-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "-g", + "-O2" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-minimum-expected-version=", + "config_key": "minimum_expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-minimum-expected-version=" + ], + "env_var": "PANTS_GOLANG_MINIMUM_EXPECTED_VERSION", + "fromfile": false, + "help": "The minimum Go version the distribution discovered by Pants must support.\n\nFor example, if you set `'1.17'`, then Pants will look for a Go binary that is 1.17+, e.g. 1.17 or 1.18.\n\nYou should still set the Go version for each module in your `go.mod` with the `go` directive.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-minimum-expected-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--minimum-expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]golang-cgo-enabled", + "config_key": "cgo_enabled", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]golang-cgo-enabled" + ], + "env_var": "PANTS_GOLANG_CGO_ENABLED", + "fromfile": false, + "help": "Enable Cgo support, which allows Go and C code to interact. This option must be enabled for any packages making use of Cgo to actually be compiled with Cgo support.\n\nSee https://go.dev/blog/cgo and https://pkg.go.dev/cmd/cgo for additional information about Cgo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-enabled", + "--no-golang-cgo-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cgo-enabled", + "--no-cgo-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable\n* ``, all Go versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binary with the version in `BUILD_ROOT/.tool-versions`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "target_field_name": "golang_go_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-cgo-tool-search-paths=\"['', '', ...]\"", + "config_key": "cgo_tool_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-cgo-tool-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_CGO_TOOL_SEARCH_PATHS", + "fromfile": false, + "help": "A list of paths to search for tools needed by CGo (e.g., gcc, g++).\n\nSpecify absolute paths to directories with tools needed by CGo , e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH environment variable", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-cgo-tool-search-paths" + ], + "target_field_name": "golang_cgo_tool_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cgo-tool-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Golang support.", + "is_goal": false, + "provider": "pants.backend.experimental.go", + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=google-java-format`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `google-java-format` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use Google Java Format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "fromfile": false, + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "provider": "pants.backend.experimental.java.lint.google_java_format", + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "fromfile": false, + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.10.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "fromfile": false, + "help": "Use this version of Hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.10.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.10.0|macos_x86_64|59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|macos_arm64 |59f0523069a857ae918b8ac0774230013f7bcc00c1ea28119c2311353120867a|2514960", + "v2.10.0|linux_x86_64|8ee6ff537341681f9e91bae2d5da451b15c575691e33980893732d866d3cefc4|2301804", + "v2.10.0|linux_arm64 |b53d5ab10707a585c9e72375d51b7357522300b5329cfa3f91e482687176e128|27954520" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "Linux-arm64", + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Hadolint is not supported.\n\nSupported Hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "fromfile": false, + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Hadolint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for Dockerfiles.", + "is_goal": false, + "provider": "pants.backend.docker.lint.hadolint", + "scope": "hadolint" + }, + "helm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-version=", + "config_key": "version", + "default": "3.12.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-version=" + ], + "env_var": "PANTS_HELM_VERSION", + "fromfile": false, + "help": "Use this version of helmsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.12.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.12.3|linux_arm64|79ef06935fb47e432c0c91bdefd140e5b543ec46376007ca14a52e5ed3023088|14355040", + "3.12.3|linux_x86_64|1b2313cd198d45eab00cc37c38f6b1ca0a948ba279c29e322bdf426d406129b5|16028423", + "3.12.3|macos_arm64|240b0a7da9cae208000eff3d3fb95e0fa1f4903d95be62c3f276f7630b12dae1|16019570", + "3.12.3|macos_x86_64|1bdbbeec5a12dd0c1cd4efd8948a156d33e1e2f51140e2a51e1e5e7b11b81d47|16828211", + "3.12.2|linux_arm64|cfafbae85c31afde88c69f0e5053610c8c455826081c1b2d665d9b44c31b3759|14350624", + "3.12.2|linux_x86_64|2b6efaa009891d3703869f4be80ab86faa33fa83d9d5ff2f6492a8aebe97b219|16028750", + "3.12.2|macos_arm64|b60ee16847e28879ae298a20ba4672fc84f741410f438e645277205824ddbf55|16021202", + "3.12.2|macos_x86_64|6e8bfc84a640e0dc47cc49cfc2d0a482f011f4249e2dff2a7e23c7ef2df1b64e|16824814", + "3.11.3|linux_arm64|0816db0efd033c78c3cc1c37506967947b01965b9c0739fe13ec2b1eea08f601|14475471", + "3.11.3|linux_x86_64|ca2d5d40d4cdfb9a3a6205dd803b5bc8def00bd2f13e5526c127e9b667974a89|15489735", + "3.11.3|macos_arm64|267e4d50b68e8854b9cc44517da9ab2f47dec39787fed9f7eba42080d61ac7f8|15451086", + "3.11.3|macos_x86_64|9d029df37664b50e427442a600e4e065fa75fd74dac996c831ac68359654b2c4|16275303", + "3.11.2|linux_arm64|444b65100e224beee0a3a3a54cb19dad37388fa9217ab2782ba63551c4a2e128|14090242", + "3.11.2|linux_x86_64|781d826daec584f9d50a01f0f7dadfd25a3312217a14aa2fbb85107b014ac8ca|15026301", + "3.11.2|macos_arm64|f61a3aa55827de2d8c64a2063fd744b618b443ed063871b79f52069e90813151|14932800", + "3.11.2|macos_x86_64|404938fd2c6eff9e0dab830b0db943fca9e1572cd3d7ee40904705760faa390f|15759988", + "3.11.1|linux_arm64 |919173e8fb7a3b54d76af9feb92e49e86d5a80c5185020bae8c393fa0f0de1e8|13484900", + "3.11.1|linux_x86_64|0b1be96b66fab4770526f136f5f1a385a47c41923d33aab0dcb500e0f6c1bf7c|15023104", + "3.11.1|macos_arm64 |43d0198a7a2ea2639caafa81bb0596c97bee2d4e40df50b36202343eb4d5c46b|14934852", + "3.11.1|macos_x86_64|2548a90e5cc957ccc5016b47060665a9d2cd4d5b4d61dcc32f5de3144d103826|15757902", + "3.10.0|linux_arm64 |3b72f5f8a60772fb156d0a4ab93272e8da7ef4d18e6421a7020d7c019f521fc1|13055719", + "3.10.0|linux_x86_64|bf56beb418bb529b5e0d6d43d56654c5a03f89c98400b409d1013a33d9586474|14530566", + "3.10.0|macos_arm64 |f7f6558ebc8211824032a7fdcf0d55ad064cb33ec1eeec3d18057b9fe2e04dbe|14446277", + "3.10.0|macos_x86_64|1e7fd528482ac2ef2d79fe300724b3e07ff6f846a2a9b0b0fe6f5fa05691786b|15237557", + "3.8.0|linux_arm64 |23e08035dc0106fe4e0bd85800fd795b2b9ecd9f32187aa16c49b0a917105161|12324642", + "3.8.0|linux_x86_64|8408c91e846c5b9ba15eb6b1a5a79fc22dd4d33ac6ea63388e5698d1b2320c8b|13626774", + "3.8.0|macos_arm64 |751348f1a4a876ffe089fd68df6aea310fd05fe3b163ab76aa62632e327122f3|14078604", + "3.8.0|macos_x86_64|532ddd6213891084873e5c2dcafa577f425ca662a6594a3389e288fc48dc2089|14318316" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-template=", + "config_key": "url_template", + "default": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-template=" + ], + "env_var": "PANTS_HELM_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://get.helm.sh/helm-v{version}-{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-amd64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmsubsystem is not supported.\n\nSupported helmsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables that would be made available to all Helm processes or during value interpolation.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-extra-env-vars" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-charts", + "config_key": "tailor_charts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-tailor-charts" + ], + "env_var": "PANTS_HELM_TAILOR_CHARTS", + "fromfile": false, + "help": "If true, add `helm_chart` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-charts", + "--no-helm-tailor-charts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-charts", + "--no-tailor-charts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-tailor-unittests", + "config_key": "tailor_unittests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-tailor-unittests" + ], + "env_var": "PANTS_HELM_TAILOR_UNITTESTS", + "fromfile": false, + "help": "If true, add `helm_unittest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-tailor-unittests", + "--no-helm-tailor-unittests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-unittests", + "--no-tailor-unittests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_REGISTRIES", + "fromfile": true, + "help": "Configure Helm OCI registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"oci://registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in either a `helm_chart` target, then all default addresses will be used, if any.\n\nThe `helm_chart.registries` may be provided with a list of registry addresses and registry alias prefixed with `@` to be used instead of the defaults.\n\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.\n\nRegistries also participate in resolving third party Helm charts uplodaded to those registries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-registries" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-lint-strict", + "config_key": "lint_strict", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-lint-strict" + ], + "env_var": "PANTS_HELM_LINT_STRICT", + "fromfile": false, + "help": "Enables strict linting of Helm charts", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-lint-strict", + "--no-helm-lint-strict" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--lint-strict", + "--no-lint-strict" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-default-registry-repository=", + "config_key": "default_registry_repository", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-default-registry-repository=" + ], + "env_var": "PANTS_HELM_DEFAULT_REGISTRY_REPOSITORY", + "fromfile": false, + "help": "Default location where to push Helm charts in the available registries when no specific one has been given.\n\nIf no registry repository is given, charts will be pushed to the root of the OCI registry.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-default-registry-repository" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-registry-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_HELM_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to helmsubsystem, e.g. `--helm-args='--dry-run'`.\n\nAdditional arguments to pass to Helm command line.\n\nOnly a subset of Helm arguments are considered valid as passthrough arguments as most of them have equivalents in the form of fields of the different target types.\n\nThe list of valid arguments is as follows:\n\n * --atomic\n * --cleanup-on-fail\n * --create-namespace\n * --debug\n * --dry-run\n * --force\n * --wait\n * --wait-for-jobs\n * --kubeconfig\n * --kube-context\n * --kube-apiserver\n * --kube-as-group\n * --kube-as-user\n * --kube-ca-file\n * --kube-token\n\nBefore attempting to use passthrough arguments, check the reference of each of the available target types to see what fields are accepted in each of them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Helm command line (https://helm.sh)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm" + }, + "helm-k8s-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-install-from-resolve=" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-k8s-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-k8s-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_K8S_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-k8s-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Analyses K8S manifests rendered by Helm.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-k8s-parser" + }, + "helm-post-renderer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-install-from-resolve=" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `helm-post-renderer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-post-renderer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_POST_RENDERER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-post-renderer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used perform modifications to the final output produced by Helm charts when they've been fully rendered.", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-post-renderer" + }, + "helm-unittest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-version=", + "config_key": "version", + "default": "0.3.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_VERSION", + "fromfile": false, + "help": "Use this version of helmunittestsubsystem.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.3.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HELM_UNITTEST_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "0.3.3|linux_x86_64|8ebe20f77012a5d4e7139760cabe36dd1ea38e40b26f57de3f4165d96bd486ff|21685365", + "0.3.3|linux_arm64 |7f5e4426428cb9678f971576103df410e6fa38dd19b87fce4729f5217bd5c683|19944514", + "0.3.3|macos_x86_64|b2298a513b3cb6482ba2e42079c93ad18be8a31a230bd4dffdeb01ec2881d0f5|21497144", + "0.3.3|macos_arm64 |2365f5b3a99e6fc83218457046378b14039a3992e9ae96a4192bc2e43a33c742|20479438", + "0.2.8|linux_x86_64|d7c452559ad4406a1197435394fbcffe51198060de1aa9b4cb6feaf876776ba0|18299096", + "0.2.8|linux_arm64 |c793e241b063f0540ad9b4acc0a02e5a101bd9daea5bdf4d8562e9b2337fedb2|16943867", + "0.2.8|macos_x86_64|1dc95699320894bdebf055c4f4cc084c2cfa0133d3cb7fd6a4c0adca94df5c96|18161928", + "0.2.8|macos_arm64 |436e3167c26f71258b96e32c2877b4f97c051064db941de097cf3db2fc861342|17621648" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-template=", + "config_key": "url_template", + "default": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-template=" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/helm-unittest/helm-unittest/releases/download/v{version}/helm-unittest-{platform}-{version}.tgz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HELM_UNITTEST_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-amd64", + "macos_arm64": "macos-arm64", + "macos_x86_64": "macos-amd64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--helm-unittest-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-use-unsupported-version=" + ], + "env_var": "PANTS_HELM_UNITTEST_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of helmunittestsubsystem is not supported.\n\nSupported helmunittestsubsystem versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-color", + "config_key": "color", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-unittest-color" + ], + "env_var": "PANTS_HELM_UNITTEST_COLOR", + "fromfile": false, + "help": "Enforce printing colored output even if stdout is not a tty.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-color", + "--no-helm-unittest-color" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--color", + "--no-color" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "XUnit", + "NUnit", + "JUnit" + ], + "comma_separated_choices": "XUnit, NUnit, JUnit", + "comma_separated_display_args": "--helm-unittest-output-type=", + "config_key": "output_type", + "default": "XUnit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--helm-unittest-output-type=" + ], + "env_var": "PANTS_HELM_UNITTEST_OUTPUT_TYPE", + "fromfile": false, + "help": "Output type used for the test report.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-output-type" + ], + "target_field_name": null, + "typ": "HelmUnitTestReportFormat", + "unscoped_cmd_line_args": [ + "--output-type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "XUnit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]helm-unittest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]helm-unittest-skip" + ], + "env_var": "PANTS_HELM_UNITTEST_SKIP", + "fromfile": false, + "help": "If true, don't use helmunittestsubsystem when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--helm-unittest-skip", + "--no-helm-unittest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "BDD styled unit test framework for Kubernetes Helm charts as a Helm plugin. (https://github.com/helm-unittest)", + "is_goal": false, + "provider": "pants.backend.experimental.helm", + "scope": "helm-unittest" + }, + "help": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display usage message.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help" + }, + "help-advanced": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Help for advanced options.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-advanced" + }, + "help-all": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Print a JSON object containing all help info.", + "is_goal": true, + "provider": "pants.goal", + "scope": "help-all" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-install-from-resolve=" + ], + "env_var": "PANTS_IPYTHON_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ipython` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "fromfile": false, + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-install-from-resolve=" + ], + "env_var": "PANTS_ISORT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `isort` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "fromfile": false, + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "fromfile": false, + "help": "If true, don't use isort when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to isort, e.g. `--isort-args='--case-sensitive --trailing-comma'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "provider": "pants.backend.python.lint.isort", + "scope": "isort" + }, + "jarjar": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-version=", + "config_key": "version", + "default": "1.8.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-version=" + ], + "env_var": "PANTS_JARJAR_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[jarjar].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.8.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.eed3si9n.jarjar:jarjar-assembly:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JARJAR_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[jarjar].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.eed3si9n.jarjar:jarjar-assembly:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-lockfile=" + ], + "env_var": "PANTS_JARJAR_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/jvm/shading/jarjar.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=jarjar`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jarjar-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JARJAR_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `jarjar` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jarjar-skip-manifest", + "config_key": "skip_manifest", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]jarjar-skip-manifest" + ], + "env_var": "PANTS_JARJAR_SKIP_MANIFEST", + "fromfile": false, + "help": "Skip the processing of the JAR manifest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-skip-manifest", + "--no-jarjar-skip-manifest" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-manifest", + "--no-skip-manifest" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "fatal", + "skip", + "omit", + "move" + ], + "comma_separated_choices": "fatal, skip, omit, move", + "comma_separated_display_args": "--jarjar-misplaced-class-strategy=", + "config_key": "misplaced_class_strategy", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jarjar-misplaced-class-strategy=" + ], + "env_var": "PANTS_JARJAR_MISPLACED_CLASS_STRATEGY", + "fromfile": false, + "help": "The strategy to use when processing class files that are in the wrong package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jarjar-misplaced-class-strategy" + ], + "target_field_name": null, + "typ": "MisplacedClassStrategy", + "unscoped_cmd_line_args": [ + "--misplaced-class-strategy" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Jar Jar Abrams tool (https://github.com/eed3si9n/jarjar-abrams)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jarjar" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "fromfile": false, + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "java-infer" + }, + "javac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]javac-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]javac-tailor-source-targets" + ], + "env_var": "PANTS_JAVAC_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `java_sources` and `java_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-tailor-source-targets", + "--no-javac-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to javac, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The javac Java source compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=junit`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `junit` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to JUnit, e.g. `--junit-args='--disable-ansi-colors'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]junit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]junit-skip" + ], + "env_var": "PANTS_JUNIT_SKIP", + "fromfile": false, + "help": "If true, don't use JUnit when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-skip", + "--no-junit-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-tool-jdk=", + "config_key": "tool_jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-tool-jdk=" + ], + "env_var": "PANTS_JVM_TOOL_JDK", + "fromfile": false, + "help": "The JDK to use when building and running Pants' internal JVM support code and other non-compiler tools. See `jvm` help for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-tool-jdk" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--tool-jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "temurin:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "fromfile": false, + "help": "The JDK to use.\n\nThis string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "temurin:1.11" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]jvm-reproducible-jars", + "config_key": "reproducible_jars", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]jvm-reproducible-jars" + ], + "env_var": "PANTS_JVM_REPRODUCIBLE_JARS", + "fromfile": false, + "help": "When enabled, JAR files produced by JVM tools will have timestamps stripped.\n\nBecause some compilers do not support this step as a native operation, it can have a performance cost, and is not enabled by default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-reproducible-jars", + "--no-jvm-reproducible-jars" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--reproducible-jars", + "--no-reproducible-jars" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-nailgun-remote-cache-speculation-delay=", + "config_key": "nailgun_remote_cache_speculation_delay", + "default": 1000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-nailgun-remote-cache-speculation-delay=" + ], + "env_var": "PANTS_JVM_NAILGUN_REMOTE_CACHE_SPECULATION_DELAY", + "fromfile": false, + "help": "The time in milliseconds to delay speculation of nailgun processes while reading from the remote cache.\n\nWhen speculating, a remote cache hit will cancel the local copy of a process. But because nailgun does not natively support cancellation, that requires killing a nailgun server, which will mean that future processes take longer to warm up.\n\nThis setting allows for trading off waiting for potentially slow cache entries against potentially having to warm up a new nailgun server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-nailgun-remote-cache-speculation-delay" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--nailgun-remote-cache-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-global-options=\"['', '', ...]\"", + "config_key": "global_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-global-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_GLOBAL_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to all JVM processes.\n\nOptions set here will be used by any JVM processes required by Pants, with the exception of heap memory settings like `-Xmx`, which need to be set using `[GLOBAL].process_total_child_memory_usage` and `[GLOBAL].process_per_child_memory_usage`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-global-options" + ], + "target_field_name": "jvm_global_options", + "typ": "list", + "unscoped_cmd_line_args": [ + "--global-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "fromfile": false, + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "fromfile": false, + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like `['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for general JVM functionality.\n\nJDK strings will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\nIf the string `'system'` is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "is_goal": false, + "provider": "pants.backend.experimental.java", + "scope": "jvm" + }, + "kotlin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-tailor-source-targets" + ], + "env_var": "PANTS_KOTLIN_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `kotlin_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-tailor-source-targets", + "--no-kotlin-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlin-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLIN_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Kotlin version to use for all Kotlin targets consuming that resolve.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-version-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin" + }, + "kotlin-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-imports" + ], + "env_var": "PANTS_KOTLIN_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-imports", + "--no-kotlin-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]kotlin-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]kotlin-infer-consumed-types" + ], + "env_var": "PANTS_KOTLIN_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlin-infer-consumed-types", + "--no-kotlin-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Kotlin targets.", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlin-infer" + }, + "kotlinc": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-args=\"[, , ...]\"" + ], + "env_var": "PANTS_KOTLINC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to kotlinc, e.g. `--kotlinc-args='-Werror'`.\n\nSee https://kotlinlang.org/docs/compiler-reference.html for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--kotlinc-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_KOTLINC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `kotlinc` plugins, and the value is a comma-separated string consisting of kotlinc plugin names. Each specified plugin must have a corresponding `kotlinc_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--kotlinc-plugins-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Kotlin programming language (https://kotlinlang.org/).", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin", + "scope": "kotlinc" + }, + "ktlint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-version=", + "config_key": "version", + "default": "0.45.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-version=" + ], + "env_var": "PANTS_KTLINT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[ktlint].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.45.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.pinterest:ktlint:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[ktlint].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.pinterest:ktlint:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-lockfile=" + ], + "env_var": "PANTS_KTLINT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/kotlin/lint/ktlint/ktlint.lock for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=ktlint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ktlint-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ktlint-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_KTLINT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `ktlint` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ktlint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ktlint-skip" + ], + "env_var": "PANTS_KTLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Ktlint when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ktlint-skip", + "--no-ktlint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Ktlint, the anti-bikeshedding Kotlin linter with built-in formatter (https://ktlint.github.io/)", + "is_goal": false, + "provider": "pants.backend.experimental.kotlin.lint.ktlint", + "scope": "ktlint" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-batch-size=" + ], + "env_var": "PANTS_LINT_BATCH_SIZE", + "fromfile": false, + "help": "The target number of files to be included in each linter batch.\n\nLinter processes are batched for a few reasons:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch.\n 3. to allow for parallelism in linter processes which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly.\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" batch size (rather than an exact value).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-only=\"['', '', ...]\"", + "config_key": "only", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-only=\"['', '', ...]\"" + ], + "env_var": "PANTS_LINT_ONLY", + "fromfile": false, + "help": "Only run these linters and skip all others.\n\nThe linter names are outputted at the final summary of running this goal, e.g. `flake8` and `shellcheck`. You can also run `lint --only=fake` to get a list of all activated linters.\n\nYou can repeat this option, e.g. `lint --only=flake8 --only=shellcheck` or `lint --only=['flake8', 'shellcheck']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-only" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--only" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-formatters", + "config_key": "skip_formatters", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-formatters" + ], + "env_var": "PANTS_LINT_SKIP_FORMATTERS", + "fromfile": false, + "help": "If true, skip running all formatters in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fmt lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fmt` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-formatters", + "--no-lint-skip-formatters" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-formatters", + "--no-skip-formatters" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-skip-fixers", + "config_key": "skip_fixers", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-skip-fixers" + ], + "env_var": "PANTS_LINT_SKIP_FIXERS", + "fromfile": false, + "help": "If true, skip running all fixers in check-only mode.\n\nFYI: when running `scie-pants-linux-x86_64 fix lint ::`, there should be diminishing performance benefit to using this flag. Pants attempts to reuse the results from `fix` when running `lint` where possible.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-skip-fixers", + "--no-lint-skip-fixers" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip-fixers", + "--no-skip-fixers" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run linters/formatters/fixers in check mode.", + "is_goal": true, + "provider": "pants.core", + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "fromfile": false, + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-install-from-resolve=" + ], + "env_var": "PANTS_MYPY_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].install_from_resolve` to a resolve whose lockfile includes those plugins, and set the `plugins` option in `mypy.ini`. See https://www.pantsbuild.org/v2.19/docs/python-check-goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "fromfile": false, + "help": "If true, don't use MyPy when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to MyPy, e.g. `--mypy-args='--python-version 3.7 --disallow-any-expr'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "provider": "pants.backend.python.typecheck.mypy", + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-install-from-resolve=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `mypy-protobuf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "mypy-protobuf" + }, + "nodejs": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-version=", + "config_key": "version", + "default": "v16.15.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-version=" + ], + "env_var": "PANTS_NODEJS_VERSION", + "fromfile": false, + "help": "Use this version of nodejs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v16.15.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_NODEJS_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v16.15.0|macos_arm64|ad8d8fc5330ef47788f509c2af398c8060bb59acbe914070d0df684cd2d8d39b|29126014", + "v16.15.0|macos_x86_64|a6bb12bbf979d32137598e49d56d61bcddf8a8596c3442b44a9b3ace58dd4de8|30561503", + "v16.15.0|linux_arm64|b4080b86562c5397f32da7a0723b95b1df523cab4c757688a184e3f733a7df56|21403276", + "v16.15.0|linux_x86_64|ebdf4dc9d992d19631f0931cca2fc33c6d0d382543639bc6560d31d5060a8372|22031988" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-template=", + "config_key": "url_template", + "default": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-template=" + ], + "env_var": "PANTS_NODEJS_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://nodejs.org/dist/{version}/node-{version}-{platform}.tar" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-arm64", + "linux_x86_64": "linux-x64", + "macos_arm64": "darwin-arm64", + "macos_x86_64": "darwin-x64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_RESOLVES", + "fromfile": false, + "help": "A mapping of names to lockfile paths used in your project.\n\nSpecifying a resolve name is optional. If unspecified, the default resolve name is calculated by taking the path from the source root to the directory containing the lockfile and replacing '/' with '.' in that path.\n\nExample: An npm lockfile located at `src/js/package/package-lock.json' will result in a resolve named `js.package`, assuming src/ is a source root.\n\nRun `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find any tools required to run nodejs processes. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-executable-search-paths" + ], + "target_field_name": "nodejs_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Node.js distributions.\n\nThis option is only used if a templated url download specified via [nodejs].known_versions does not contain a version matching the configured [nodejs].version range.\n\nYou can specify absolute paths to binaries and/or to directories containing binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Node.js versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF binaries with the version in `BUILD_ROOT/.tool-versions`\n* ``, all NodeJS versions under $NVM_DIR/versions/node\n* ``, the nvm installation with the version in BUILD_ROOT/.nvmrc\nNote that the version in the .nvmrc file has to be on the form \"vX.Y.Z\".", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-search-path" + ], + "target_field_name": "nodejs_search_path", + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-corepack-env-vars=\"[, , ...]\"", + "config_key": "corepack_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-corepack-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_NODEJS_COREPACK_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for `corepack` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nReview https://github.com/nodejs/corepack#environment-variables for available variables.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-corepack-env-vars" + ], + "target_field_name": "nodejs_corepack_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--corepack-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-manager=", + "config_key": "package_manager", + "default": "npm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-package-manager=" + ], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGER", + "fromfile": false, + "help": "Default Node.js package manager to use.\n\nYou can either rely on this default together with the [nodejs].package_managers option, or specify the `package.json#packageManager` tool and version in the package.json of your project.\n\nSpecifying conflicting package manager versions within a multi-package workspace is an error.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-package-manager" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--package-manager" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "npm" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "package_managers", + "default": { + "npm": "8.5.5" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--nodejs-package-managers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_NODEJS_PACKAGE_MANAGERS", + "fromfile": false, + "help": "A mapping of package manager versions to semver releases.\n\nMany organizations only need a single version of a package manager, which is a good default and often the simplest thing to do.\n\nThe version download is managed by Corepack. This mapping corresponds to the https://github.com/nodejs/corepack#known-good-releases setting, using the `--activate` flag.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-package-managers" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--package-managers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "npm": "8.5.5" + } + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Node.js Javascript runtime (including Corepack).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "nodejs" + }, + "nodejs-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]nodejs-infer-imports" + ], + "env_var": "PANTS_NODEJS_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `// pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-imports", + "--no-nodejs-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]nodejs-infer-package-json-entry-points", + "config_key": "package_json_entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]nodejs-infer-package-json-entry-points" + ], + "env_var": "PANTS_NODEJS_INFER_PACKAGE_JSON_ENTRY_POINTS", + "fromfile": false, + "help": "Infer a `package_json`'s dependencies by parsing entry point statements from the package.json file.\n\nTo ignore a false positive, you can put `!{bad_address}` in the `dependencies` field of the `package_json` target.\n\nSee https://nodejs.org/api/packages.html#package-entry-points and\n https://docs.npmjs.com/cli/v9/configuring-npm/package-json#browser.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--nodejs-infer-package-json-entry-points", + "--no-nodejs-infer-package-json-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-json-entry-points", + "--no-package-json-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for javascript targets.", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "nodejs-infer" + }, + "openapi": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-tailor-targets", + "config_key": "tailor_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]openapi-tailor-targets" + ], + "env_var": "PANTS_OPENAPI_TAILOR_TARGETS", + "fromfile": false, + "help": "If true, add `openapi_documents` and `openapi_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-tailor-targets", + "--no-openapi-tailor-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-targets", + "--no-tailor-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The OpenAPI Specification (https://swagger.io/specification/).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi", + "scope": "openapi" + }, + "openapi-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-version=", + "config_key": "version", + "default": "openapi-format@1.13.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--openapi-format-version=" + ], + "env_var": "PANTS_OPENAPI_FORMAT_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "openapi-format@1.13.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--openapi-format-install-from-resolve=" + ], + "env_var": "PANTS_OPENAPI_FORMAT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]openapi-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]openapi-format-skip" + ], + "env_var": "PANTS_OPENAPI_FORMAT_SKIP", + "fromfile": false, + "help": "If true, don't use openapi-format when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-skip", + "--no-openapi-format-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--openapi-format-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--openapi-format-args=\"[, , ...]\"" + ], + "env_var": "PANTS_OPENAPI_FORMAT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to openapi-format, e.g. `--openapi-format-args='--no-sort'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--openapi-format-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format an OpenAPI document by ordering, formatting and filtering fields (https://github.com/thim81/openapi-format).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.openapi_format", + "scope": "openapi-format" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Create a distributable package.", + "is_goal": true, + "provider": "pants.core", + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "from", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FROM", + "fromfile": false, + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "fromfile": false, + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the paths between two addresses. Either address may represent a group of targets, e.g. `--from=src/app/main.py --to=src/library::`.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "fromfile": false, + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-include-dep-rules", + "config_key": "include_dep_rules", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-include-dep-rules" + ], + "env_var": "PANTS_PEEK_INCLUDE_DEP_RULES", + "fromfile": false, + "help": "Whether to include `_dependencies_rules`, `_dependents_rules` and `_applicable_dep_rules` that apply to the target and its dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-include-dep-rules", + "--no-peek-include-dep-rules" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--include-dep-rules", + "--no-include-dep-rules" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Display BUILD target info", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "fromfile": false, + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "fromfile": false, + "help": "When possible, use venvs whose site-packages directories are populated with symlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "target_field_name": "pex_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "fromfile": false, + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "fromfile": false, + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pex-binary-defaults" + }, + "pex-cli": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-version=", + "config_key": "version", + "default": "v2.1.148", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-version=" + ], + "env_var": "PANTS_PEX_CLI_VERSION", + "fromfile": false, + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.135,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.148" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.148|macos_arm64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|macos_x86_64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|linux_x86_64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|linux_arm64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PEX_CLI_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.148|macos_arm64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|macos_x86_64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|linux_x86_64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604", + "v2.1.148|linux_arm64|5b1dee5a89fff25747753e917f96b8707ea62eed404d037d5f8cf8f2e80a13b7|4197604" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-template=" + ], + "env_var": "PANTS_PEX_CLI_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PEX_CLI_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--pex-cli-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-cli-use-unsupported-version=" + ], + "env_var": "PANTS_PEX_CLI_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.135,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-cli-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "provider": "pants.core", + "scope": "pex-cli" + }, + "preamble": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]preamble-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]preamble-skip" + ], + "env_var": "PANTS_PREAMBLE_SKIP", + "fromfile": false, + "help": "If true, don't use preamble when running `scie-pants-linux-x86_64 fmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--preamble-skip", + "--no-preamble-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "template_by_globs", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--preamble-template-by-globs=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PREAMBLE_TEMPLATE_BY_GLOBS", + "fromfile": true, + "help": "Which preamble template to use based on the path globs (relative to the build root).\n\nExample:\n\n {\n '*.rs': '// Copyright (c) $year\\n// Line 2\\n'\n '*.py:!__init__.py': '# Copyright (c) $year\\n# Line 2\\n',\n }\n\nIt might be helpful to load this config from a JSON or YAML file. To do that, set `[preamble].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--preamble-template-by-globs" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--template-by-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Formats files with a preamble, with the preamble looked up based on path.\n\nThis is useful for things such as copyright headers or shebang lines.\n\nPants substitutes the following identifiers (following Python's `string.Template` substitutions): - $year: The current year (only used when actually writing the year to the file).", + "is_goal": false, + "provider": "pants.backend.tools.preamble", + "scope": "preamble" + }, + "protobuf-java-grpc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-version=", + "config_key": "version", + "default": "1.48.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-version=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[protobuf-java-grpc].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.48.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[protobuf-java-grpc].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "io.grpc:protoc-gen-grpc-java:exe:linux-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:linux-x86_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-aarch_64:{version}", + "io.grpc:protoc-gen-grpc-java:exe:osx-x86_64:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-lockfile=" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/codegen/protobuf/java/grpc-java.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=protobuf-java-grpc`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protobuf-java-grpc-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOBUF_JAVA_GRPC_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `protobuf-java-grpc` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protobuf-java-grpc-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "gRPC support for Java Protobuf (https://github.com/grpc/grpc-java)", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.java", + "scope": "protobuf-java-grpc" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.20.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "fromfile": false, + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.20.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "24.4|linux_arm64 |83ac000ff540e242b6a2ff221a3ac88d2d8e55443801b7a28e9697e5f40e8937|2971447", + "24.4|linux_x86_64|5871398dfd6ac954a6adebf41f1ae3a4de915a36a6ab2fd3e8f2c00d45b50dec|3005774", + "24.4|macos_arm64 |d80544480397fe8a05d966fba291cf1233ad0db0ebc24ec72d7bd077d6e7ac59|2088802", + "24.4|macos_x86_64|6c3b6bf4038d733b6d31f1cc4516a656570b5b5aafb966b650f8182afd0b98cf|2121366", + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "24.4|linux_arm64 |83ac000ff540e242b6a2ff221a3ac88d2d8e55443801b7a28e9697e5f40e8937|2971447", + "24.4|linux_x86_64|5871398dfd6ac954a6adebf41f1ae3a4de915a36a6ab2fd3e8f2c00d45b50dec|3005774", + "24.4|macos_arm64 |d80544480397fe8a05d966fba291cf1233ad0db0ebc24ec72d7bd077d6e7ac59|2088802", + "24.4|macos_x86_64|6c3b6bf4038d733b6d31f1cc4516a656570b5b5aafb966b650f8182afd0b98cf|2121366", + "3.20.1|linux_arm64 |8a5a51876259f934cd2acc2bc59dba0e9a51bd631a5c37a4b9081d6e4dbc7591|1804837", + "3.20.1|linux_x86_64|3a0e900f9556fbcac4c3a913a00d07680f0fdf6b990a341462d822247b265562|1714731", + "3.20.1|macos_arm64 |b362acae78542872bb6aac8dba73aaf0dc6e94991b8b0a065d6c3e703fec2a8b|2708249", + "3.20.1|macos_x86_64|b4f36b18202d54d343a66eebc9f8ae60809a2a96cc2d1b378137550bbe4cf33c|2708249" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-aarch_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-tailor" + ], + "env_var": "PANTS_PROTOC_TAILOR", + "fromfile": false, + "help": "If true, add `protobuf_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-tailor", + "--no-protoc-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "fromfile": false, + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "provider": "pants.core", + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "fromfile": false, + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependents`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependents` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependents).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "provider": "pants.backend.python.mixed_interpreter_constraints", + "scope": "py-constraints" + }, + "pydocstyle": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-install-from-resolve=" + ], + "env_var": "PANTS_PYDOCSTYLE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pydocstyle` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-console-script=", + "config_key": "console_script", + "default": "pydocstyle", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-console-script=" + ], + "env_var": "PANTS_PYDOCSTYLE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pydocstyle" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-entry-point=" + ], + "env_var": "PANTS_PYDOCSTYLE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-config=" + ], + "env_var": "PANTS_PYDOCSTYLE_CONFIG", + "fromfile": false, + "help": "Path to a Pydocstyle config file (http://www.pydocstyle.org/en/stable/usage.html#configuration-files).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pydocstyle-config-discovery" + ], + "env_var": "PANTS_PYDOCSTYLE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`setup.cfg`, `tox.ini`, `.pydocstyle`, `.pydocstyle.ini`, `.pydocstylerc`, `.pydocstylerc.ini`, and `pyproject.toml`) searching for the configuration file in this particular order.\n\nPlease note that even though `pydocstyle` keeps looking for a configuration file up the directory tree until one is found, Pants will only search for the config files in the repository root (from where you would normally run the `` command).\n\nUse `[pydocstyle].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-config-discovery", + "--no-pydocstyle-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pydocstyle-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pydocstyle-skip" + ], + "env_var": "PANTS_PYDOCSTYLE_SKIP", + "fromfile": false, + "help": "If true, don't use Pydocstyle when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-skip", + "--no-pydocstyle-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pydocstyle-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pydocstyle-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYDOCSTYLE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pydocstyle, e.g. `--pydocstyle-args='--select=D101,D102'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pydocstyle-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for checking compliance with Python docstring conventions (http://www.pydocstyle.org/en/stable/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pydocstyle", + "scope": "pydocstyle" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-install-from-resolve=" + ], + "env_var": "PANTS_PYLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pylint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "fromfile": false, + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add `'build-support/pylint'` to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.19/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, add them to a custom resolve alongside pylint itself, as described in https://www.pantsbuild.org/v2.19/docs/python-lockfiles#lockfiles-for-tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Pylint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args='--ignore=foo.py,bar.py --disable=C0330,W0311'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "provider": "pants.backend.python.lint.pylint", + "scope": "pylint" + }, + "pyoxidizer": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-install-from-resolve=" + ], + "env_var": "PANTS_PYOXIDIZER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyoxidizer` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.8,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.8,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-console-script=", + "config_key": "console_script", + "default": "pyoxidizer", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-console-script=" + ], + "env_var": "PANTS_PYOXIDIZER_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyoxidizer" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-entry-point=" + ], + "env_var": "PANTS_PYOXIDIZER_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyoxidizer-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyoxidizer-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYOXIDIZER_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to PyOxidizer, e.g. `--pyoxidizer-args='--release'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyoxidizer-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The PyOxidizer utility for packaging Python code in a Rust binary (https://pyoxidizer.readthedocs.io/en/stable/pyoxidizer.html).\n\nUsed with the `pyoxidizer_binary` target.", + "is_goal": false, + "provider": "pants.backend.experimental.python.packaging.pyoxidizer", + "scope": "pyoxidizer" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-install-from-resolve=" + ], + "env_var": "PANTS_PYTEST_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytest` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "fromfile": false, + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "fromfile": false, + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-config=" + ], + "env_var": "PANTS_PYTEST_CONFIG", + "fromfile": false, + "help": "Path to a config file understood by Pytest (https://docs.pytest.org/en/latest/reference/customize.html#configuration-file-formats). Setting this option will disable `[pytest].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.\n\nUse `[pytest].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args='-k test_foo --quiet'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-xdist-enabled", + "config_key": "xdist_enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-xdist-enabled" + ], + "env_var": "PANTS_PYTEST_XDIST_ENABLED", + "fromfile": false, + "help": "If true, Pants will use `pytest-xdist` (https://pytest-xdist.readthedocs.io/en/latest/) to parallelize tests within each `python_test` target.\n\nNOTE: Enabling `pytest-xdist` can cause high-level scoped fixtures (for example `session`) to execute more than once. See the `pytest-xdist` docs for more info: https://pypi.org/project/pytest-xdist/#making-session-scoped-fixtures-execute-only-once", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-xdist-enabled", + "--no-pytest-xdist-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--xdist-enabled", + "--no-xdist-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-skip" + ], + "env_var": "PANTS_PYTEST_SKIP", + "fromfile": false, + "help": "If true, don't use Pytest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-skip", + "--no-pytest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "The Python interpreters your codebase is compatible with.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.\n\nSpecify with requirement syntax, e.g. `'CPython>=2.7,<3'` (A CPython interpreter with version >=2.7 AND version <3) or `'PyPy'` (A pypy interpreter of any version). Multiple constraint strings will be ORed together.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "fromfile": false, + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.19/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. `'2.7'` or `'3.10'`. Do not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10", + "3.11", + "3.12" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-resolves", + "config_key": "enable_resolves", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-resolves" + ], + "env_var": "PANTS_PYTHON_ENABLE_RESOLVES", + "fromfile": false, + "help": "Set to true to enable lockfiles for user code. See `[python].resolves` for an explanation of this feature.\n\nThis option is mutually exclusive with `[python].requirement_constraints`. We strongly recommend using this option because it:\n\n 1. Uses `--hash` to validate that all downloaded files are expected, which reduces the risk of supply chain attacks.\n 2. Enforces that all transitive dependencies are in the lockfile, whereas constraints allow you to leave off dependencies. This ensures your build is more stable and reduces the risk of supply chain attacks.\n 3. Allows you to have multiple lockfiles in your repository.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-resolves", + "--no-python-enable-resolves" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-resolves", + "--no-enable-resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "python-default": "3rdparty/python/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES", + "fromfile": false, + "help": "A mapping of logical names to lockfile paths used in your project.\n\nMany organizations only need a single resolve for their whole project, which is a good default and often the simplest thing to do. However, you may need multiple resolves, such as if you use two conflicting versions of a requirement in your repository.\n\nIf you only need a single resolve, run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfile.\n\nIf you need multiple resolves:\n\n 1. Via this option, define multiple resolve names and their lockfile paths. The names should be meaningful to your repository, such as `data-science` or `pants-plugins`.\n 2. Set the default with `[python].default_resolve`.\n 3. Update your `python_requirement` targets with the `resolve` field to declare which resolve they should be available in. They default to `[python].default_resolve`, so you only need to update targets that you want in non-default resolves. (Often you'll set this via the `python_requirements` or `poetry_requirements` target generators)\n 4. Run `scie-pants-linux-x86_64 generate-lockfiles` to generate the lockfiles. If the results aren't what you'd expect, adjust the prior step.\n 5. Update any targets like `python_source` / `python_sources`, `python_test` / `python_tests`, and `pex_binary` which need to set a non-default resolve with the `resolve` field.\n\nIf a target can work with multiple resolves, you can either use the `parametrize` mechanism or manually create a distinct target per resolve. See https://www.pantsbuild.org/v2.19/docs/targets for information about `parametrize`.\n\nFor example:\n\n python_sources(\n resolve=parametrize(\"data-science\", \"web-app\"),\n )\n\nYou can name the lockfile paths what you would like; Pants does not expect a certain file extension or location.\n\nOnly applies if `[python].enable_resolves` is true.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "python-default": "3rdparty/python/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-default-resolve=", + "config_key": "default_resolve", + "default": "python-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-default-resolve=" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RESOLVE", + "fromfile": false, + "help": "The default value used for the `resolve` field.\n\nThe name must be defined as a resolve in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "python-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-pip-version=", + "config_key": "pip_version", + "default": "23.1.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-pip-version=" + ], + "env_var": "PANTS_PYTHON_PIP_VERSION", + "fromfile": false, + "help": "Use this version of Pip for resolving requirements and generating lockfiles.\n\nThe value used here must be one of the Pip versions supported by the underlying PEX version. See https://www.pantsbuild.org/v2.19/docs/pex for details.\n\nN.B.: The `latest` value selects the latest of the choices listed by PEX which is not necessarily the latest Pip version released on PyPI.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-pip-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--pip-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "23.1.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_interpreter_constraints", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-interpreter-constraints=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Override the interpreter constraints to use when generating a resolve's lockfile with the `generate-lockfiles` goal.\n\nBy default, each resolve from `[python].resolves` will use your global interpreter constraints set in `[python].interpreter_constraints`. With this option, you can override each resolve to use certain interpreter constraints, such as `{'data-science': ['==3.8.*']}`.\n\nWarning: this does NOT impact the interpreter constraints used by targets within the resolve, which is instead set by the option `[python].interpreter_constraints` and the `interpreter_constraints` field. It only impacts how the lockfile is generated.\n\nPants will validate that the interpreter constraints of your code using a resolve are compatible with that resolve's own constraints. For example, if your code is set to use `['==3.9.*']` via the `interpreter_constraints` field, but it's using a resolve whose interpreter constraints are set to `['==3.7.*']`, then Pants will error explaining the incompatibility.\n\nThe keys must be defined as resolves in `[python].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-interpreter-constraints" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_constraints_file", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-constraints-file=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_CONSTRAINTS_FILE", + "fromfile": false, + "help": "When generating a resolve's lockfile, use a constraints file to pin the version of certain requirements. This is particularly useful to pin the versions of transitive dependencies of your direct requirements.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to file paths for constraints files. For example, `{'data-science': '3rdparty/data-science-constraints.txt'}`. If a resolve is not set in the dictionary, it will not use a constraints file.\n\nYou can use the key `__default__` to set a default value for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-constraints-file" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-constraints-file" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_no_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-no-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_NO_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use binary packages (i.e. wheels) for these 3rdparty project names.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on binary packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve, you can also use the value `:all:` to disable all binary packages: `{'data-science': [':all:']}`.\n\nNote that some packages are tricky to compile and may fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-no-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-no-binary" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-no-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves_to_only_binary", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolves-to-only-binary=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_RESOLVES_TO_ONLY_BINARY", + "fromfile": false, + "help": "When generating a resolve's lockfile, do not use source packages (i.e. sdists) for these 3rdparty project names, e.g `['django', 'requests']`.\n\nExpects a dictionary of resolve names from `[python].resolves` and Python tools (e.g. `black` and `pytest`) to lists of project names. For example, `{'data-science': ['requests', 'numpy']}`. If a resolve is not set in the dictionary, it will have no restrictions on source packages.\n\nYou can use the key `__default__` to set a default value for all resolves.\n\nFor each resolve you can use the value `:all:` to disable all source packages: `{'data-science': [':all:']}`.\n\nPackages without binary distributions will fail to install when this option is used on them. See https://pip.pypa.io/en/stable/cli/pip_install/#install-only-binary for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-to-only-binary" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves-to-only-binary" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "fromfile": false, + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.\n\nNote that `warn` will still expect a Pants lockfile header, it only won't error if the lockfile is stale and should be regenerated.\n\nUse `ignore` to avoid needing a lockfile header at all, e.g. if you are manually managing lockfiles rather than using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "target_field_name": null, + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolves-generate-lockfiles", + "config_key": "resolves_generate_lockfiles", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolves-generate-lockfiles" + ], + "env_var": "PANTS_PYTHON_RESOLVES_GENERATE_LOCKFILES", + "fromfile": false, + "help": "If False, Pants will not attempt to generate lockfiles for `[python].resolves` when running the `generate-lockfiles` goal.\n\nThis is intended to allow you to manually generate lockfiles for your own code, rather than using Pex lockfiles. For example, when adopting Pants in a project already using Poetry, you can use `poetry export --dev` to create a requirements.txt-style lockfile understood by Pants, then point `[python].resolves` to the file.\n\nIf you set this to False, Pants will not attempt to validate the metadata headers for your user lockfiles. This is useful so that you can keep `[python].invalid_lockfile_behavior` to `error` or `warn` if you'd like so that tool lockfiles continue to be validated, while user lockfiles are skipped.\n\nWarning: it will likely be slower to install manually generated user lockfiles than Pex ones because Pants cannot as efficiently extract the subset of requirements used for a particular task. See the option `[python].run_against_entire_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolves-generate-lockfiles", + "--no-python-resolves-generate-lockfiles" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolves-generate-lockfiles", + "--no-resolves-generate-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "fromfile": false, + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile file instead of just the relevant subset.\n\nIf you are using Pex lockfiles, we generally do not recommend this. You will already get similar performance benefits to this option, without the downsides.\n\nOtherwise, this option can improve performance and reduce cache size. But it has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile\n changes, rather than just those that depend on the changed requirement.\n2) Requirements unneeded by a test/run/repl will be present on the sys.path, which\n might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "fromfile": false, + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g. `'manylinux2010'`, or else the string `'no'` to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-source-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `python_sources`, `python_tests`, and `python_test_utils` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-source-targets", + "--no-python-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-empty-init-files", + "config_key": "tailor_ignore_empty_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-empty-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_EMPTY_INIT_FILES", + "fromfile": false, + "help": "If true, don't add `python_sources` targets for `__init__.py` files that are both empty and where there are no other Python files in the directory.\n\nEmpty and solitary `__init__.py` files usually exist as import scaffolding rather than true library code, so it can be noisy to add BUILD files.\n\nEven if this option is set to true, Pants will still ensure the empty `__init__.py` files are included in the sandbox when running processes.\n\nIf you set to false, you may also want to set `[python-infer].init_files = \"always\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-empty-init-files", + "--no-python-tailor-ignore-empty-init-files" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-empty-init-files", + "--no-tailor-ignore-empty-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "fromfile": false, + "help": "If true, add `python_requirements`, `poetry_requirements`, and `pipenv_requirements` target generators with the `tailor` goal.\n\n`python_requirements` targets are added for any file that matches the pattern `*requirements*.txt`. You will need to manually add `python_requirements` for different file names like `reqs.txt`.\n\n`poetry_requirements` targets are added for `pyproject.toml` files with `[tool.poetry` in them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "fromfile": false, + "help": "If true, add `pex_binary` targets for Python files named `__main__.py` or with a `__main__` clause with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-py-typed-targets", + "config_key": "tailor_py_typed_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-py-typed-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PY_TYPED_TARGETS", + "fromfile": false, + "help": "If true, add `resource` targets for marker files named `py.typed` with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-py-typed-targets", + "--no-python-tailor-py-typed-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-py-typed-targets", + "--no-tailor-py-typed-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "fromfile": false, + "help": "If set, and if running on macOS Big Sur, use `macosx_10_16` as the platform when building wheels. Otherwise, the default of `macosx_11_0` will be used. This may be required for `pip` to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-enable-lockfile-targets", + "config_key": "enable_lockfile_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-enable-lockfile-targets" + ], + "env_var": "PANTS_PYTHON_ENABLE_LOCKFILE_TARGETS", + "fromfile": false, + "help": "Create targets for all Python lockfiles defined in `[python].resolves`.\n\nThe lockfile targets will then be used as dependencies to the `python_requirement` targets that use them, invalidating source targets per resolve when the lockfile changes.\n\nIf another targets address is in conflict with the created lockfile target, it will shadow the lockfile target and it will not be available as a dependency for any `python_requirement` targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-enable-lockfile-targets", + "--no-python-enable-lockfile-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enable-lockfile-targets", + "--no-enable-lockfile-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-default-run-goal-use-sandbox", + "config_key": "default_run_goal_use_sandbox", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-default-run-goal-use-sandbox" + ], + "env_var": "PANTS_PYTHON_DEFAULT_RUN_GOAL_USE_SANDBOX", + "fromfile": false, + "help": "The default value used for the `run_goal_use_sandbox` field of Python targets. See the relevant field for more details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-default-run-goal-use-sandbox", + "--no-python-default-run-goal-use-sandbox" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--default-run-goal-use-sandbox", + "--no-default-run-goal-use-sandbox" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-repl-history", + "config_key": "repl_history", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-repl-history" + ], + "env_var": "PANTS_PYTHON_REPL_HISTORY", + "fromfile": false, + "help": "Whether to use the standard Python command history file when running a repl.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repl-history", + "--no-python-repl-history" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--repl-history", + "--no-repl-history" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "fromfile": false, + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nMutually exclusive with `[python].enable_resolves`, which we generally recommend as an improvement over constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "fromfile": false, + "help": "(Only relevant when using `[python].requirement_constraints.`) If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.", + "removal_hint": "We encourage instead migrating to `[python].enable_resolves` and `[python].resolves`, which is an improvement over this option. The `[python].resolves` feature ensures that your lockfiles are fully comprehensive, i.e. include all transitive dependencies; uses hashes for better supply chain security; and supports advanced features like VCS and local requirements, along with options `[python].resolves_to_only_binary`.\n\nTo migrate, stop setting `[python].requirement_constraints` and `[python].resolve_all_constraints`, and instead set `[python].enable_resolves` to `true`. Then, run `scie-pants-linux-x86_64 generate-lockfiles`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated_scope": null, + "description": "Options for Pants's Python backend.", + "is_goal": false, + "provider": "pants.core", + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "internal_python_build_standalone_info", + "default": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-internal-python-build-standalone-info=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_INTERNAL_PYTHON_BUILD_STANDALONE_INFO", + "fromfile": false, + "help": "A map from platform to the information needed to download Python Build Standalone.\n\nPython Build Standalone is used to run Python-implemented Pants tools/scripts in docker environments (so that Python doesn't need to be installed).\n\nThe version of Python provided should match the default value's version, which is the highest Python Major/Minor version compatible with the Pants package's interpreter constraints. Additionally, the downloaded file should be extractable by `tar` using `-xvf` (most likely a `.tar.gz` file).\n\nThe schema is `: (, , )` for each possible platform.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-internal-python-build-standalone-info" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--internal-python-build-standalone-info" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-unknown-linux-gnu-install_only.tar.gz", + "1ba520c0db431c84305677f56eb9a4254f5097430ed443e92fc8617f8fba973d", + 23873387 + ], + "linux_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-unknown-linux-gnu-install_only.tar.gz", + "7ba397787932393e65fc2fb9fcfabf54f2bb6751d5da2b45913cb25b2d493758", + 26129729 + ], + "macos_arm64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-aarch64-apple-darwin-install_only.tar.gz", + "d732d212d42315ac27c6da3e0b69636737a8d72086c980daf844344c010cab80", + 17084463 + ], + "macos_x86_64": [ + "https://github.com/indygreg/python-build-standalone/releases/download/20230116/cpython-3.9.16+20230116-x86_64-apple-darwin-install_only.tar.gz", + "3948384af5e8d4ee7e5ccc648322b99c1c5cf4979954ed5e6b3382c69d6db71e", + 17059474 + ] + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "fromfile": false, + "help": "A list of paths to search for Python interpreters.\n\nWhich interpreters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\nFor all runtime environment types:\n\n* ``, the contents of the PATH env var\n\nWhen the environment is a `local_environment` target:\n\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in `BUILD_ROOT/.tool-versions`\n* ``, all Python versions under `$(pyenv root)/versions`\n* ``, the Pyenv interpreter with the version in `BUILD_ROOT/.python-version`\n* ``, paths in the `PEX_PYTHON_PATH` variable in `/etc/pexrc` or `~/.pexrc`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "target_field_name": "python_bootstrap_search_path", + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "fromfile": false, + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "target_field_name": "python_bootstrap_names", + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options used to locate Python interpreters.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-bootstrap" + }, + "python-dump-source-analysis": { + "advanced": [], + "basic": [ + { + "choices": [ + "raw_dependency_inference", + "dependency_inference" + ], + "comma_separated_choices": "raw_dependency_inference, dependency_inference", + "comma_separated_display_args": "--python-dump-source-analysis-analysis-flavor=", + "config_key": "analysis_flavor", + "default": "dependency_inference", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-dump-source-analysis-analysis-flavor=" + ], + "env_var": "PANTS_PYTHON_DUMP_SOURCE_ANALYSIS_ANALYSIS_FLAVOR", + "fromfile": false, + "help": "The type of information that should be returned.\n\n* `dependency_inference`: The results of dependency inference, for every detected import in every file.\n\n* `raw_dependency_inference`: The raw intermediate results of the dependency inference process,\nat every stage they're available. Potentially useful for debugging the dependency inference process.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-dump-source-analysis-analysis-flavor" + ], + "target_field_name": null, + "typ": "AnalysisFlavor", + "unscoped_cmd_line_args": [ + "--analysis-flavor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dependency_inference" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Dump source analysis for python_source targets.", + "is_goal": true, + "provider": "pants.backend.experimental.python", + "scope": "python-dump-source-analysis" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's imported dependencies by parsing import statements from sources.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the import or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings or pytest plugins listed in the `pytest_plugins` variable in a test module or a conftest file.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "fromfile": false, + "help": "If `--string-imports` is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-assets", + "config_key": "assets", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-assets" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS", + "fromfile": false, + "help": "Infer a target's asset dependencies based on strings that look like Posix filepaths, such as those given to `open` or `pkgutil.get_data`.\n\nTo ignore a false positive, you can either put `# pants: no-infer-dep` on the line of the string or put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets", + "--no-python-infer-assets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--assets", + "--no-assets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-assets-min-slashes=", + "config_key": "assets_min_slashes", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-assets-min-slashes=" + ], + "env_var": "PANTS_PYTHON_INFER_ASSETS_MIN_SLASHES", + "fromfile": false, + "help": "If `--assets` is True, treat valid-looking strings with at least this many forward slash characters as potential assets. E.g. `'data/databases/prod.db'` will be treated as a potential candidate if this option is set to 2 but not to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-assets-min-slashes" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--assets-min-slashes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": [ + "always", + "content_only", + "never" + ], + "comma_separated_choices": "always, content_only, never", + "comma_separated_display_args": "--python-infer-init-files=", + "config_key": "init_files", + "default": "content_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-init-files=" + ], + "env_var": "PANTS_PYTHON_INFER_INIT_FILES", + "fromfile": false, + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is set to `never` or `content_only`, Pants will still always include any ancestor `__init__.py` files in the sandbox. Only, they will not be \"proper\" dependencies, e.g. they will not show up in `scie-pants-linux-x86_64 dependencies` and their own dependencies will not be used.\n\nBy default, Pants only adds a \"proper\" dependency if there is content in the `__init__.py` file. This makes sure that dependencies are added when likely necessary to build, while also avoiding adding unnecessary dependencies. While accurate, those unnecessary dependencies can complicate setting metadata like the `interpreter_constraints` and `resolve` fields.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-init-files" + ], + "target_field_name": null, + "typ": "InitFilesInference", + "unscoped_cmd_line_args": [ + "--init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "content_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "fromfile": false, + "help": "Infer a test target's dependencies on any `conftest.py` files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "fromfile": false, + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_aws_lambda_function`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "warning", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "fromfile": false, + "help": "How to handle imports that don't have an inferrable owner.\n\nUsually when an import cannot be inferred, it represents an issue like Pants not being properly configured, e.g. targets not set up. Often, missing dependencies will result in confusing runtime errors like `ModuleNotFoundError`, so this option can be helpful to error more eagerly.\n\nTo ignore any false positives, either add `# pants: no-infer-dep` to the line of the import or put the import inside a `try: except ImportError:` block.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "target_field_name": null, + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warning" + } + ] + } + }, + { + "choices": [ + "none", + "by_source_root" + ], + "comma_separated_choices": "none, by_source_root", + "comma_separated_display_args": "--python-infer-ambiguity-resolution=", + "config_key": "ambiguity_resolution", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ambiguity-resolution=" + ], + "env_var": "PANTS_PYTHON_INFER_AMBIGUITY_RESOLUTION", + "fromfile": false, + "help": "When multiple sources provide the same symbol, how to choose the provider to use.\n\n`none`: Do not attempt to resolve this ambiguity. No dependency will be inferred, and warnings will be logged.\n\n`by_source_root`: Choose the provider with the closest common ancestor to the consumer's source root. If the provider is under the same source root then this will be the source root itself. This is useful when multiple projects in different source roots provide the same symbols (because of repeated first-party module paths or overlapping requirements.txt) and you want to resolve the ambiguity locally in each project.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-ambiguity-resolution" + ], + "target_field_name": null, + "typ": "AmbiguityResolution", + "unscoped_cmd_line_args": [ + "--ambiguity-resolution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-ignored-unowned-imports=\"['', '', ...]\"", + "config_key": "ignored_unowned_imports", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-ignored-unowned-imports=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INFER_IGNORED_UNOWNED_IMPORTS", + "fromfile": false, + "help": "Unowned imports that should be ignored.\n\nIf there are any unowned import statements and adding the `# pants: no-infer-dep` to the lines of the import is impractical, you can instead provide a list of imports that Pants should ignore. You can declare a specific import or a path to a package if you would like any of the package imports to be ignored.\n\nFor example, you could ignore all the following imports of the code\n\n import src.generated.app\n from src.generated.app import load\n from src.generated.app import start\n from src.generated.client import connect\n\nby setting `ignored-unowned-imports=[\"src.generated.app\", \"src.generated.client.connect\"]`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-ignored-unowned-imports" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignored-unowned-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-use-rust-parser", + "config_key": "use_rust_parser", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-use-rust-parser" + ], + "env_var": "PANTS_PYTHON_INFER_USE_RUST_PARSER", + "fromfile": false, + "help": "Use the new Rust-based, multithreaded, in-process dependency parser.\n\nPants 2.17 introduced a new paradigm to dependency parsing for Python by leveraging a Rust-based parser that's called in the same process as Pants itself, instead of farming out to one-python-process-per-file.\n\nAs a result of the switch, cold-cache performance improved by a factor of about 12x, while hot-cache had no difference. Additionally, Pants can now infer dependencies from Python scripts with syntax errors.\n\nAfter leaving this defaulted to disabled for a release cycle, Pants 2.18 started defaulting to enabling this.\n\nIf you think the new behaviour is causing problems, it is recommended that you run `scie-pants-linux-x86_64 peek :: > before.json` and then `scie-pants-linux-x86_64 --python-infer-use-rust-parser=False peek :: > after.json` and compare the two results.\n\nIf you think there is a bug and need to disable it, please file an issue: https://github.com/pantsbuild/pants/issues/new/choose.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-use-rust-parser", + "--no-python-infer-use-rust-parser" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-rust-parser", + "--no-use-rust-parser" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "fromfile": false, + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `CPPFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "target_field_name": "python_native_code_cpp_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "fromfile": false, + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses. Use the value `['']` to inherit the value of the `LDFLAGS` environment variable from your runtime environment target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "target_field_name": "python_native_code_ld_flags", + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `protobuf` module (usually from the `protobuf` requirement). If the `protobuf_source` target sets `grpc=True`, will also add a dependency on the `python_requirement` target exposing the `grpcio` module.\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `protobuf_source` / `protobuf_sources` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or if more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-infer-runtime-dependency", + "--no-python-protobuf-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "fromfile": false, + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate `.pyi` type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.19/docs/protobuf-python.", + "is_goal": false, + "provider": "pants.backend.codegen.protobuf.python", + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "fromfile": false, + "help": "URLs of [PEP-503 compatible](https://peps.python.org/pep-0503/) code repository indexes to look for requirements.\n\nIf set to an empty list, then Pex will use no indexes (meaning it will not use PyPI).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-path-mappings=\"['', '', ...]\"", + "config_key": "path_mappings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-path-mappings=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_PATH_MAPPINGS", + "fromfile": false, + "help": "Mappings to facilitate using local Python requirements when the absolute file paths are different on different users' machines. For example, the path `file:///Users/pantsbuild/prebuilt_wheels/django-3.1.1-py3-none-any.whl` could become `file://${WHEELS_DIR}/django-3.1.1-py3-none-any.whl`, where each user can configure what `WHEELS_DIR` points to on their machine.\n\nExpects values in the form `NAME|PATH`, e.g. `WHEELS_DIR|/Users/pantsbuild/prebuilt_wheels`. You can specify multiple entries in the list.\n\nThis feature is intended to be used with `[python-repos].find_links`, rather than PEP 440 direct reference requirements (see https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#local-requirements. `[python-repos].find_links` must be configured to a valid absolute path for the current machine.\n\nTip: you can avoid each user needing to manually configure this option and `[python-repos].find_links` by using a common file location, along with Pants's interpolation support (https://www.pantsbuild.org/v2.19/docs/options#config-file-interpolation. For example, in `pants.toml`, you could set both options to `%(buildroot)s/python_wheels` to point to the directory `python_wheels` in the root of your repository; or, use the path `%(env.HOME)s/pants_wheels` for the path `~/pants_wheels`. If you are not able to use a common path like this, then we recommend setting that each user set these options via a `.pants.rc` file (https://www.pantsbuild.org/v2.19/docs/options#pantsrc-file.\n\nNote: Only takes effect if using Pex lockfiles, i.e. using the `generate-lockfiles` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-path-mappings" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--path-mappings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-find-links=\"['', '', ...]\"", + "config_key": "find_links", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-find-links=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_FIND_LINKS", + "fromfile": false, + "help": "URLs and/or file paths corresponding to pip's `--find-links` option.\n\nPer [pip's documentation](https://pip.pypa.io/en/stable/cli/pip_wheel/?highlight=find%20links#cmdoption-f), URLs should be to HTML files with links to `.whl` and/or sdist files. Local paths must be absolute, and can either be to an HTML file with links or to a directory with `.whl` and/or sdist files, e.g. `file:///Users/pantsbuild/prebuilt_wheels`.\n\nFor local paths, you may want to use the option `[python-repos].path_mappings`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-find-links" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--find-links" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": "Deprecated, is scheduled to be removed in version: 3.0.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "fromfile": false, + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": "A deprecated alias for `[python-repos].find_links`.", + "removal_version": "3.0.0.dev0", + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated_scope": null, + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom package indexes when resolving requirements.", + "is_goal": false, + "provider": "pants.core", + "scope": "python-repos" + }, + "python-thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-thrift-infer-runtime-dependency", + "config_key": "infer_runtime_dependency", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-thrift-infer-runtime-dependency" + ], + "env_var": "PANTS_PYTHON_THRIFT_INFER_RUNTIME_DEPENDENCY", + "fromfile": false, + "help": "If True, will add a dependency on a `python_requirement` target exposing the `thrift` module (usually from the `thrift` requirement).\n\nIf `[python].enable_resolves` is set, Pants will only infer dependencies on `python_requirement` targets that use the same resolve as the particular `thrift_source` / `thrift_source` target uses, which is set via its `python_resolve` field.\n\nUnless this option is disabled, Pants will error if no relevant target is found or more than one is found which causes ambiguity.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-infer-runtime-dependency", + "--no-python-thrift-infer-runtime-dependency" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--infer-runtime-dependency", + "--no-infer-runtime-dependency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-thrift-options=\"['', '', ...]\"", + "config_key": "options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-thrift-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_THRIFT_OPTIONS", + "fromfile": false, + "help": "Code generation options specific to the Python code generator to pass to the Apache `thift` binary via the `-gen py` argument. See `thrift -help` for supported values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-thrift-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options specific to generating Python from Thrift using Apache Thrift", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "python-thrift" + }, + "pytype": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-install-from-resolve=" + ], + "env_var": "PANTS_PYTYPE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pytype` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTYPE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTYPE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-console-script=", + "config_key": "console_script", + "default": "pytype", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-console-script=" + ], + "env_var": "PANTS_PYTYPE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytype" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-entry-point=" + ], + "env_var": "PANTS_PYTYPE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytype-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytype-skip" + ], + "env_var": "PANTS_PYTYPE_SKIP", + "fromfile": false, + "help": "If true, don't use Pytype when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-skip", + "--no-pytype-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTYPE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Pytype, e.g. `--pytype-args='--version'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytype-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytype-config=" + ], + "env_var": "PANTS_PYTYPE_CONFIG", + "fromfile": false, + "help": "Path to an toml config file understood by Pytype (https://github.com/google/pytype#config-file).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytype-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Pytype utility for typechecking Python code (https://github.com/google/pytype).", + "is_goal": false, + "provider": "pants.backend.experimental.python.typecheck.pytype", + "scope": "pytype" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-install-from-resolve=" + ], + "env_var": "PANTS_PYUPGRADE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `pyupgrade` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "fromfile": false, + "help": "If true, don't use pyupgrade when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args='--py39-plus --keep-runtime-typing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "provider": "pants.backend.python.lint.pyupgrade", + "scope": "pyupgrade" + }, + "regex-lint": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]regex-lint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]regex-lint-skip" + ], + "env_var": "PANTS_REGEX_LINT_SKIP", + "fromfile": false, + "help": "If true, don't use regex-lint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-skip", + "--no-regex-lint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REGEX_LINT_CONFIG", + "fromfile": true, + "help": "Config schema is as follows:\n\n ```\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n ```\n\nMeaning: if a file matches some path pattern, its content must match all the corresponding content patterns.\n\nIt's often helpful to load this config from a JSON or YAML file. To do that, set `[regex-lint].config = '@path/to/config.yaml'`, for example.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-config" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--regex-lint-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--regex-lint-detail-level=" + ], + "env_var": "PANTS_REGEX_LINT_DETAIL_LEVEL", + "fromfile": false, + "help": "How much detail to include in the result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--regex-lint-detail-level" + ], + "target_field_name": null, + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lint your code using regex patterns, e.g. to check for copyright headers.\n\nTo activate this with the `lint` goal, you must set `[regex-lint].config`.\n\nUnlike other linters, this can run on files not owned by targets, such as BUILD files.", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "regex-lint" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "fromfile": false, + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_REPL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the repl program, e.g. `--repl-args='-i helloworld/main.py'`.\n\nCurrently supported only for the ipython shell.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "fromfile": false, + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "provider": "pants.core", + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "fromfile": false, + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "fromfile": false, + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "List the repo's registered source roots.", + "is_goal": true, + "provider": "pants.backend.project_info", + "scope": "roots" + }, + "ruff": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-install-from-resolve=" + ], + "env_var": "PANTS_RUFF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `ruff` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUFF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-console-script=", + "config_key": "console_script", + "default": "ruff", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-console-script=" + ], + "env_var": "PANTS_RUFF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ruff" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-entry-point=" + ], + "env_var": "PANTS_RUFF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-config=" + ], + "env_var": "PANTS_RUFF_CONFIG", + "fromfile": false, + "help": "Path to the `pyproject.toml` or `ruff.toml` file to use for configuration (https://github.com/charliermarsh/ruff#configuration).\n\nSetting this option will disable `[ruff].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ruff-config-discovery" + ], + "env_var": "PANTS_RUFF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`pyproject.toml`, and `ruff.toml`).\n\nUse `[ruff].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-config-discovery", + "--no-ruff-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ruff-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ruff-skip" + ], + "env_var": "PANTS_RUFF_SKIP", + "fromfile": false, + "help": "If true, don't use Ruff when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-skip", + "--no-ruff-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ruff-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ruff-args=\"[, , ...]\"" + ], + "env_var": "PANTS_RUFF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Ruff, e.g. `--ruff-args='--exclude=foo --ignore=E501'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ruff-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Ruff Python formatter (https://github.com/charliermarsh/ruff).", + "is_goal": false, + "provider": "pants.backend.experimental.python.lint.ruff", + "scope": "ruff" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to the executed target, e.g. `--run-args='val1 val2 --debug'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-debug-adapter" + ], + "env_var": "PANTS_RUN_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run the interactive process using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-debug-adapter", + "--no-run-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "provider": "pants.core", + "scope": "run" + }, + "scala": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-tailor-source-targets", + "config_key": "tailor_source_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-tailor-source-targets" + ], + "env_var": "PANTS_SCALA_TAILOR_SOURCE_TARGETS", + "fromfile": false, + "help": "If true, add `scala_sources`, `scala_junit_tests`, and `scalatest_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-tailor-source-targets", + "--no-scala-tailor-source-targets" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-source-targets", + "--no-tailor-source-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "version_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALA_VERSION_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary mapping the name of a resolve to the Scala version to use for all Scala targets consuming that resolve.\n\nAll Scala-compiled jars on a resolve's classpath must be \"compatible\" with one another and with all Scala-compiled first-party sources from `scala_sources` (and other Scala target types) using that resolve. The option sets the Scala version that will be used to compile all first-party sources using the resolve. This ensures that the compatibility property is maintained for a resolve. To support multiple Scala versions, use multiple resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--version-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Scala programming language", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "fromfile": false, + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "fromfile": false, + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-package-objects", + "config_key": "package_objects", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-package-objects" + ], + "env_var": "PANTS_SCALA_INFER_PACKAGE_OBJECTS", + "fromfile": false, + "help": "Add dependency on the package object to every target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-package-objects", + "--no-scala-infer-package-objects" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--package-objects", + "--no-package-objects" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-force-add-siblings-as-dependencies", + "config_key": "force_add_siblings_as_dependencies", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-force-add-siblings-as-dependencies" + ], + "env_var": "PANTS_SCALA_INFER_FORCE_ADD_SIBLINGS_AS_DEPENDENCIES", + "fromfile": false, + "help": "If true, add a dependency on all `scala_source` targets generated by the same `scala_sources` target generator. If false, the dependencies will only be added if `[scala-infer].imports` is also set to false.\n\nSetting this option to true reduces the precision of dependency information. That means that you may end up compiling more than is necessary for a particular task, and that compilation will be invalidated more frequently than actually necessary. However, setting to true may be helpful if compilation fails due to missing dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-force-add-siblings-as-dependencies", + "--no-scala-infer-force-add-siblings-as-dependencies" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force-add-siblings-as-dependencies", + "--no-force-add-siblings-as-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scala-infer" + }, + "scalac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to scalac, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "plugins_for_resolve", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-for-resolve=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_FOR_RESOLVE", + "fromfile": false, + "help": "A dictionary, whose keys are the names of each JVM resolve that requires default `scalac` plugins, and the value is a comma-separated string consisting of scalac plugin names. Each specified plugin must have a corresponding `scalac_plugin` target that specifies that name in either its `plugin_name` field or is the same as its target name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-for-resolve" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--plugins-for-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scala compiler.", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalafmt`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalafmt` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "fromfile": false, + "help": "If true, don't use scalafmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala.lint.scalafmt", + "scope": "scalafmt" + }, + "scalapb": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-version=", + "config_key": "version", + "default": "0.11.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-version=" + ], + "env_var": "PANTS_SCALAPB_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalapb].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "0.11.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalapb].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.thesamet.scalapb:scalapbc_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-lockfile=" + ], + "env_var": "PANTS_SCALAPB_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/codegen/protobuf/scala/scalapbc.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalapb`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalapb` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalapb-jvm-plugins=\"['', '', ...]\"", + "config_key": "jvm_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalapb-jvm-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAPB_JVM_PLUGINS", + "fromfile": false, + "help": "A list of JVM-based `protoc` plugins to invoke when generating Scala code from protobuf files. The format for each plugin specifier is `NAME=ARTIFACT` where NAME is the name of the plugin and ARTIFACT is either the address of a `jvm_artifact` target or the colon-separated Maven coordinate for the plugin's jar artifact.\n\nFor example, to invoke the fs2-grpc protoc plugin, the following option would work: `--scalapb-jvm-plugins=fs2=org.typelevel:fs2-grpc-codegen_2.12:2.3.1`. (Note: you would also need to set `--scalapb-runtime-dependencies` appropriately to include the applicable runtime libraries for your chosen protoc plugins.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalapb-jvm-plugins" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The ScalaPB protocol buffer compiler (https://scalapb.github.io/).", + "is_goal": false, + "provider": "pants.backend.experimental.codegen.protobuf.scala", + "scope": "scalapb" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "fromfile": false, + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "fromfile": false, + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., `group:name:version`). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "fromfile": false, + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.19.0rc1/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `scie-pants-linux-x86_64 jvm-generate-lockfiles --resolve=scalatest`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-jvm-options=\"['', '', ...]\"", + "config_key": "jvm_options", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-jvm-options=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_JVM_OPTIONS", + "fromfile": false, + "help": "List of JVM options to pass to `scalatest` JVM processes.\n\nOptions set here will be added to those set in `[jvm].global_options`. Please check the documentation for the `jvm` subsystem to see what values are accepted here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-jvm-options" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--jvm-options" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Scalatest, e.g. `--scalatest-args='-t $testname'`.\n\nSee https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalatest-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalatest-skip" + ], + "env_var": "PANTS_SCALATEST_SKIP", + "fromfile": false, + "help": "If true, don't use Scalatest when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-skip", + "--no-scalatest-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "provider": "pants.backend.experimental.scala", + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "fromfile": false, + "help": "Use this version of SCC.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of SCC is not supported.\n\nSupported SCC versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to SCC, e.g. `--scc-args='--no-cocomo'`.\n\nRefer to to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "provider": "pants.backend.project_info", + "scope": "scc" + }, + "semgrep": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-install-from-resolve=" + ], + "env_var": "PANTS_SEMGREP_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `semgrep` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SEMGREP_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SEMGREP_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-console-script=", + "config_key": "console_script", + "default": "semgrep", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-console-script=" + ], + "env_var": "PANTS_SEMGREP_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "semgrep" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-entry-point=" + ], + "env_var": "PANTS_SEMGREP_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]semgrep-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]semgrep-force" + ], + "env_var": "PANTS_SEMGREP_FORCE", + "fromfile": false, + "help": "If true, semgrep is always run, even if the input files haven't changed. This can be used to run cloud rulesets like `pants lint --semgrep-force --semgrep-args='--config=p/python' ::`. Without `--semgrep-force`, using the cloud rulesets may give inconsistent results on different machines, due to caching, because the rulesets may change.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-force", + "--no-semgrep-force" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--semgrep-args=\"[, , ...]\"", + "config_key": "args", + "default": [ + "--quiet" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--semgrep-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SEMGREP_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Semgrep, e.g. `--semgrep-args='--verbose'`.\n\nThis includes --quiet by default to reduce the volume of output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "--quiet" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]semgrep-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]semgrep-skip" + ], + "env_var": "PANTS_SEMGREP_SKIP", + "fromfile": false, + "help": "If true, don't use Semgrep when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--semgrep-skip", + "--no-semgrep-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Lightweight static analysis for many languages. Find bug variants with patterns that look like source code. (https://semgrep.dev/)\n\nPants automatically finds config files (`.semgrep.yml`, `.semgrep.yaml`, and `.yml` or `.yaml` files within `.semgrep/` directories), and runs semgrep against all _targets_ known to Pants.", + "is_goal": false, + "provider": "pants.backend.experimental.tools.semgrep", + "scope": "semgrep" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "fromfile": false, + "help": "The default value for the `generate_setup` field on `python_distribution` targets. Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (`setup.py`, `setup.cfg` and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "fromfile": false, + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "target_field_name": null, + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-install-from-resolve=" + ], + "env_var": "PANTS_SETUPTOOLS_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "provider": "pants.backend.python", + "scope": "setuptools" + }, + "setuptools-scm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-install-from-resolve=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `setuptools-scm` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-console-script=", + "config_key": "console_script", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-console-script=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-scm-entry-point=", + "config_key": "entry_point", + "default": "setuptools_scm", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-scm-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_SCM_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-scm-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools_scm" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "A tool for generating versions from VCS metadata (https://github.com/pypa/setuptools_scm).", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "setuptools-scm" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-tailor" + ], + "env_var": "PANTS_SHELL_SETUP_TAILOR", + "fromfile": false, + "help": "If true, add `shell_sources` and `shunit2_tests` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-tailor", + "--no-shell-setup-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "fromfile": false, + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner. The special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "target_field_name": "shell_setup_executable_search_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants's Shell support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-setup" + }, + "shell-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-test-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-test-skip" + ], + "env_var": "PANTS_SHELL_TEST_SKIP", + "fromfile": false, + "help": "If true, don't use Test with shell scripts when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-test-skip", + "--no-shell-test-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Options for Pants' Shell test support.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shell-test" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.8.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "fromfile": false, + "help": "Use this version of Shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.8.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.8.0|macos_arm64 |36dffd536b801c8bab2e9fa468163037e0c7f7e0a05298e5ad6299b4dde67e31|14525367", + "v0.8.0|macos_x86_64|4e93a76ee116b2f08c88e25011830280ad0d61615d8346364a4ea564b29be3f0|6310442", + "v0.8.0|linux_arm64 |8f4810485425636eadce2ec23441fd29d5b1b58d239ffda0a5faf8dd499026f5|4884430", + "v0.8.0|linux_x86_64|01d181787ffe63ebb0a2293f63bdc8455c5c30d3a6636320664bfa278424638f|2082242" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/vscode-shellcheck/shellcheck-binaries/releases/download/{version}/shellcheck-{version}.{platform}.tar.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.aarch64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of Shellcheck is not supported.\n\nSupported Shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "fromfile": false, + "help": "If true, don't use Shellcheck when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for shell scripts.", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "fromfile": false, + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568", + "v3.6.0|macos_arm64 |633f242246ee0a866c5f5df25cbf61b6af0d5e143555aca32950059cf13d91e0|3065202", + "v3.6.0|macos_x86_64|b8c9c025b498e2816b62f0b717f6032e9ab49e725a45b8205f52f66318f17185|3047552", + "v3.6.0|linux_arm64 |fb1cf0af3dbe9aac7d98e38e3c7426765208ecfe23cb2da51037bb234776fd70|2818048", + "v3.6.0|linux_x86_64|5741a02a641de7e56b8da170e71a97e58050d66a3cf485fb268d6a5a8bb74afb|2850816" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "fromfile": false, + "help": "If true, don't use shfmt when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "provider": "pants.backend.shell.lint.shfmt", + "scope": "shfmt" + }, + "shunit2": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-version=", + "config_key": "version", + "default": "b9102bb763cc603b3115ed30a5648bf950548097", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-version=" + ], + "env_var": "PANTS_SHUNIT2_VERSION", + "fromfile": false, + "help": "Use this version of shunit2.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "b9102bb763cc603b3115ed30a5648bf950548097" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHUNIT2_KNOWN_VERSIONS", + "fromfile": false, + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length` or\n`version|platform|sha256|length|url_override`, where:\n\n - `version` is the version string\n - `platform` is one of `[linux_arm64,linux_x86_64,macos_arm64,macos_x86_64]`\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n - (Optional) `url_override` is a specific url to use instead of the normally\n generated url for this version\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\nand `3.1.2|macos_arm64 |aca5c1da0192e2fd46b7b55ab290a92c5f07309e7b0ebf4e45ba95731ae98291|50926|https://example.mac.org/bin/v3.1.2/mac-aarch64-v3.1.2.tgz`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-known-versions" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "b9102bb763cc603b3115ed30a5648bf950548097|macos_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|macos_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_x86_64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987", + "b9102bb763cc603b3115ed30a5648bf950548097|linux_arm64|1f11477b7948150d1ca50cdd41d89be4ed2acd137e26d2e0fe23966d0e272cc5|40987" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-template=", + "config_key": "url_template", + "default": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-template=" + ], + "env_var": "PANTS_SHUNIT2_URL_TEMPLATE", + "fromfile": false, + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.19/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from `--version` substituted, and `{platform}` to have a value from `--url-platform-mapping` substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-url-template" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://raw.githubusercontent.com/kward/shunit2/{version}/shunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHUNIT2_URL_PLATFORM_MAPPING", + "fromfile": false, + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn `--url-template`, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}`, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the `--url-template` option with `unknown-linux`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-url-platform-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shunit2-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shunit2-use-unsupported-version=" + ], + "env_var": "PANTS_SHUNIT2_USE_UNSUPPORTED_VERSION", + "fromfile": false, + "help": "\nWhat action to take in case the requested version of shunit2 is not supported.\n\nSupported shunit2 versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-use-unsupported-version" + ], + "target_field_name": null, + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shunit2-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shunit2-skip" + ], + "env_var": "PANTS_SHUNIT2_SKIP", + "fromfile": false, + "help": "If true, don't use shunit2 when running `scie-pants-linux-x86_64 test`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shunit2-skip", + "--no-shunit2-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "shUnit2 is a xUnit framework for Bourne based shell scripts (https://github.com/kward/shunit2)", + "is_goal": false, + "provider": "pants.backend.shell", + "scope": "shunit2" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "fromfile": false, + "help": "A list of source root suffixes.\n\nA directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc.\n\nPrepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`.\n\nA `*` wildcard will match a single path segment, E.g., `src/*` will match `/src/python` and `/src/rust`.\n\nUse `/` to signify that the buildroot itself is a source root.\n\nSee https://www.pantsbuild.org/v2.19/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py", + "src/thrift", + "src/protobuf", + "src/protos", + "src/scala", + "src/java" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "fromfile": false, + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Configuration for roots of source trees.", + "is_goal": false, + "provider": "pants.core", + "scope": "source" + }, + "spectral": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-version=", + "config_key": "version", + "default": "@stoplight/spectral-cli@6.5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-version=" + ], + "env_var": "PANTS_SPECTRAL_VERSION", + "fromfile": false, + "help": "Version string for the tool in the form package@version (e.g. prettier@2.6.2)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-version" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "@stoplight/spectral-cli@6.5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-install-from-resolve=" + ], + "env_var": "PANTS_SPECTRAL_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve, instead of the version configured in this subsystem.\n\nIf unspecified, the tool will use the default configured package manager [nodejs].package_manager`, and install the tool without a lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]spectral-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]spectral-skip" + ], + "env_var": "PANTS_SPECTRAL_SKIP", + "fromfile": false, + "help": "If true, don't use Spectral when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-skip", + "--no-spectral-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spectral-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spectral-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SPECTRAL_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Spectral, e.g. `--spectral-args='--fail-severity=warn'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spectral-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A flexible JSON/YAML linter for creating automated style guides (https://github.com/stoplightio/spectral).", + "is_goal": false, + "provider": "pants.backend.experimental.openapi.lint.spectral", + "scope": "spectral" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "fromfile": false, + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-memory-summary", + "config_key": "memory_summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-memory-summary" + ], + "env_var": "PANTS_STATS_MEMORY_SUMMARY", + "fromfile": false, + "help": "At the end of the Pants run, report a summary of memory usage.\n\nKeys are the total size in bytes, the count, and the name. Note that the total size is for all instances added together, so you can use total_size // count to get the average size.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-memory-summary", + "--no-stats-memory-summary" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--memory-summary", + "--no-memory-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "provider": "pants.core", + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "fromfile": false, + "help": "Environment variables to set for process invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nSee https://www.pantsbuild.org/v2.19/docs/options#addremove-semantics for how to add and remove Pants's default for this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "target_field_name": "subprocess_environment_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "SSL_CERT_FILE", + "SSL_CERT_DIR" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "provider": "pants.core", + "scope": "subprocess-environment" + }, + "system-binaries": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--system-binaries-system-binary-paths=\"['', '', ...]\"", + "config_key": "system_binary_paths", + "default": [ + "/usr/bin", + "/bin", + "/usr/local/bin", + "/opt/homebrew/bin" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--system-binaries-system-binary-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_SYSTEM_BINARIES_SYSTEM_BINARY_PATHS", + "fromfile": false, + "help": "The PATH value that will searched for executables.\n\nThe special string `\"\"` will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--system-binaries-system-binary-paths" + ], + "target_field_name": "system_binaries_system_binary_paths", + "typ": "list", + "unscoped_cmd_line_args": [ + "--system-binary-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/usr/bin", + "/bin", + "/usr/local/bin", + "/opt/homebrew/bin" + ] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "System binaries related settings.", + "is_goal": false, + "provider": "pants.core", + "scope": "system-binaries" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "fromfile": false, + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "fromfile": false, + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "fromfile": false, + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "fromfile": false, + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.19/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "target_field_name": null, + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "fromfile": false, + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "fromfile": false, + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Auto-generate BUILD file targets for new source files.\n\nEach specific `tailor` implementation may be disabled through language-specific options, e.g. `[python].tailor_pex_binary_targets` and `[shell-setup].tailor`.", + "is_goal": true, + "provider": "pants.core", + "scope": "tailor" + }, + "terraform-fmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-fmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-fmt-skip" + ], + "env_var": "PANTS_TERRAFORM_FMT_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform fmt` when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-fmt-skip", + "--no-terraform-fmt-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform fmt options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-fmt" + }, + "terraform-hcl2-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-install-from-resolve=" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `terraform-hcl2-parser` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--terraform-hcl2-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TERRAFORM_HCL2_PARSER_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-hcl2-parser-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Used to parse Terraform modules to infer their dependencies.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-hcl2-parser" + }, + "terraform-validate": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]terraform-validate-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]terraform-validate-skip" + ], + "env_var": "PANTS_TERRAFORM_VALIDATE_SKIP", + "fromfile": false, + "help": "If true, don't use `terraform validate` when running `scie-pants-linux-x86_64 check`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--terraform-validate-skip", + "--no-terraform-validate-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Terraform validate options.", + "is_goal": false, + "provider": "pants.backend.experimental.terraform", + "scope": "terraform-validate" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-report", + "config_key": "report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-report" + ], + "env_var": "PANTS_TEST_REPORT", + "fromfile": false, + "help": "Write test reports to `--report-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report", + "--no-test-report" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--report", + "--no-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-report-dir=", + "config_key": "report_dir", + "default": "{distdir}/test/reports", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-report-dir=" + ], + "env_var": "PANTS_TEST_REPORT_DIR", + "fromfile": false, + "help": "Path to write test reports to. Must be relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-report-dir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--report-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{distdir}/test/reports" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-default=" + ], + "env_var": "PANTS_TEST_TIMEOUT_DEFAULT", + "fromfile": false, + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-default" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-timeout-maximum=" + ], + "env_var": "PANTS_TEST_TIMEOUT_MAXIMUM", + "fromfile": false, + "help": "The maximum timeout (in seconds) that may be used on a test target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeout-maximum" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-batch-size=", + "config_key": "batch_size", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-batch-size=" + ], + "env_var": "PANTS_TEST_BATCH_SIZE", + "fromfile": false, + "help": "The target maximum number of files to be included in each run of batch-enabled test runners.\n\nSome test runners can execute tests from multiple files in a single run. Test implementations will return all tests that _can_ run together as a single group - and then this may be further divided into smaller batches, based on this option. This is done:\n\n 1. to avoid OS argument length limits (in processes which don't support argument files)\n 2. to support more stable cache keys than would be possible if all files were operated on in a single batch\n 3. to allow for parallelism in test runners which don't have internal parallelism, or -- if they do support internal parallelism -- to improve scheduling behavior when multiple processes are competing for cores and so internal parallelism cannot be used perfectly\n\nIn order to improve cache hit rates (see 2.), batches are created at stable boundaries, and so this value is only a \"target\" max batch size (rather than an exact value).\n\nNOTE: This parameter has no effect on test runners/plugins that do not implement support for batched testing.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-batch-size" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--batch-size" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "fromfile": false, + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug-adapter", + "config_key": "debug_adapter", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug-adapter" + ], + "env_var": "PANTS_TEST_DEBUG_ADAPTER", + "fromfile": false, + "help": "Run tests sequentially in an interactive process, using a Debug Adapter (https://microsoft.github.io/debug-adapter-protocol/) for the language if supported.\n\nThe interactive process used will be immediately blocked waiting for a client before continuing.\n\nThis option implies `--debug`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug-adapter", + "--no-test-debug-adapter" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug-adapter", + "--no-debug-adapter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "fromfile": false, + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "fromfile": false, + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "target_field_name": null, + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "fromfile": false, + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "fromfile": false, + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-shard=", + "config_key": "shard", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-shard=" + ], + "env_var": "PANTS_TEST_SHARD", + "fromfile": false, + "help": "A shard specification of the form \"k/N\", where N is a positive integer and k is a non-negative integer less than N.\n\nIf set, the request input targets will be deterministically partitioned into N disjoint subsets of roughly equal size, and only the k'th subset will be used, with all others discarded.\n\nUseful for splitting large numbers of test files across multiple machines in CI. For example, you can run three shards with `--shard=0/3`, `--shard=1/3`, `--shard=2/3`.\n\nNote that the shards are roughly equal in size as measured by number of files. No attempt is made to consider the size of different files, the time they have taken to run in the past, or other such sophisticated measures.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-shard" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--shard" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-timeouts" + ], + "env_var": "PANTS_TEST_TIMEOUTS", + "fromfile": false, + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a `timeout=` parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-timeouts", + "--no-test-timeouts" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-attempts-default=", + "config_key": "attempts_default", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-attempts-default=" + ], + "env_var": "PANTS_TEST_ATTEMPTS_DEFAULT", + "fromfile": false, + "help": "The number of attempts to run tests, in case of a test failure. Tests that were retried will include the number of attempts in the summary output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-attempts-default" + ], + "target_field_name": null, + "typ": "int", + "unscoped_cmd_line_args": [ + "--attempts-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "fromfile": false, + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "target_field_name": "test_extra_env_vars", + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Run tests.", + "is_goal": true, + "provider": "pants.core", + "scope": "test" + }, + "thrift": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-tailor", + "config_key": "tailor", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-tailor" + ], + "env_var": "PANTS_THRIFT_TAILOR", + "fromfile": false, + "help": "If true, add `thrift_sources` targets with the `tailor` goal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-tailor", + "--no-thrift-tailor" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor", + "--no-tailor" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]thrift-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]thrift-dependency-inference" + ], + "env_var": "PANTS_THRIFT_DEPENDENCY_INFERENCE", + "fromfile": false, + "help": "Infer Thrift dependencies on other Thrift files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--thrift-dependency-inference", + "--no-thrift-dependency-inference" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "General Thrift IDL settings (https://thrift.apache.org/).", + "is_goal": false, + "provider": "pants.backend.codegen.thrift.apache.python", + "scope": "thrift" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-install-from-resolve=" + ], + "env_var": "PANTS_TWINE_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `twine` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "fromfile": false, + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "fromfile": false, + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use any certificates.\n\nEven when using the `docker_environment` and `remote_environment` targets, this path will be read from the local host, and those certs will be used in the environment.\n\nThis option cannot be overridden via environment targets, so if you need a different value than what the rest of your organization is using, override the value via an environment variable, CLI argument, or `.pants.rc` file. See https://www.pantsbuild.org/v2.19/docs/options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "fromfile": false, + "help": "If true, don't use Twine when running `scie-pants-linux-x86_64 publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "The utility for publishing Python distributions to PyPI and other Python repositories.", + "is_goal": false, + "provider": "pants.backend.experimental.python", + "scope": "twine" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "fromfile": false, + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "fromfile": false, + "help": "Format BUILD files using Black or Yapf.\n\nSet `[black].args` / `[yapf].args`, `[black].config` / `[yapf].config` , and `[black].config_discovery` / `[yapf].config_discovery` to change Black's or Yapf's behavior. Set `[black].interpreter_constraints` / `[yapf].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run the formatter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "yapf", + "black" + ], + "comma_separated_choices": "yapf, black", + "comma_separated_display_args": "--update-build-files-formatter=", + "config_key": "formatter", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--update-build-files-formatter=" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FORMATTER", + "fromfile": false, + "help": "Which formatter Pants should use to format BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-formatter" + ], + "target_field_name": null, + "typ": "Formatter", + "unscoped_cmd_line_args": [ + "--formatter" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "fromfile": false, + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.19/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "provider": "pants.core", + "scope": "update-build-files" + }, + "version": { + "advanced": [], + "basic": [], + "deprecated": [], + "deprecated_scope": null, + "description": "Display Pants version.", + "is_goal": true, + "provider": "pants.goal", + "scope": "version" + }, + "workunit-logger": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]workunit-logger-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]workunit-logger-enabled" + ], + "env_var": "PANTS_WORKUNIT_LOGGER_ENABLED", + "fromfile": false, + "help": "Whether to enable workunit logging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--workunit-logger-enabled", + "--no-workunit-logger-enabled" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--workunit-logger-logdir=", + "config_key": "logdir", + "default": ".pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--workunit-logger-logdir=" + ], + "env_var": "PANTS_WORKUNIT_LOGGER_LOGDIR", + "fromfile": false, + "help": "Where to write the log to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--workunit-logger-logdir" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".pants.d" + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "Workunit Logger subsystem. Useful for debugging pants itself.", + "is_goal": false, + "provider": "pants.backend.experimental.tools.workunit_logger", + "scope": "workunit-logger" + }, + "yamllint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-install-from-resolve=" + ], + "env_var": "PANTS_YAMLLINT_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yamllint` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-console-script=", + "config_key": "console_script", + "default": "yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-console-script=" + ], + "env_var": "PANTS_YAMLLINT_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yamllint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-entry-point=" + ], + "env_var": "PANTS_YAMLLINT_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-config-file-name=", + "config_key": "config_file_name", + "default": ".yamllint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-config-file-name=" + ], + "env_var": "PANTS_YAMLLINT_CONFIG_FILE_NAME", + "fromfile": false, + "help": "Name of a config file understood by yamllint (https://yamllint.readthedocs.io/en/stable/configuration.html). The plugin will search the ancestors of each directory in which YAML files are found for a config file of this name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-config-file-name" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--config-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": ".yamllint" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-include=\"['', '', ...]\"", + "config_key": "include", + "default": [ + "**/*.yml", + "**/*.yaml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-include=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_INCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to lint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-include" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--include" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "**/*.yml", + "**/*.yaml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-exclude=\"['', '', ...]\"", + "config_key": "exclude", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-exclude=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAMLLINT_EXCLUDE", + "fromfile": false, + "help": "Glob for which YAML files to exclude from linting.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-exclude" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yamllint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yamllint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAMLLINT_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to Yamllint, e.g. `--yamllint-args='-d relaxed'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yamllint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yamllint-skip" + ], + "env_var": "PANTS_YAMLLINT_SKIP", + "fromfile": false, + "help": "If true, don't use Yamllint when running `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yamllint-skip", + "--no-yamllint-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A linter for YAML files (https://yamllint.readthedocs.io)", + "is_goal": false, + "provider": "pants.backend.experimental.tools.yamllint", + "scope": "yamllint" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-install-from-resolve=", + "config_key": "install_from_resolve", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-install-from-resolve=" + ], + "env_var": "PANTS_YAPF_INSTALL_FROM_RESOLVE", + "fromfile": false, + "help": "If specified, install the tool using the lockfile for this named resolve.\n\nThis resolve must be defined in `[python].resolves`, as described in https://www.pantsbuild.org/v2.19/docs/python-third-party-dependencies#user-lockfiles.\n\nThe resolve's entire lockfile will be installed, unless specific requirements are listed via the `requirements` option, in which case only those requirements will be installed. This is useful if you don't want to invalidate the tool's outputs when the resolve incurs changes to unrelated requirements.\n\nIf unspecified, and the `lockfile` option is unset, the tool will be installed using the default lockfile shipped with Pants.\n\nIf unspecified, and the `lockfile` option is set, the tool will use the custom `yapf` \"tool lockfile\" generated from the `version` and `extra_requirements` options. But note that this mechanism is deprecated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-install-from-resolve" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--install-from-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-requirements=\"['', '', ...]\"", + "config_key": "requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_REQUIREMENTS", + "fromfile": false, + "help": "If `install_from_resolve` is specified, install these requirements, at the versions provided by the specified resolve's lockfile.\n\nValues can be pip-style requirements (e.g., `tool` or `tool==1.2.3` or `tool>=1.2.3`), or addresses of `python_requirement` targets (or targets that generate or depend on `python_requirement` targets).\n\nThe lockfile will be validated against the requirements - if a lockfile doesn't provide the requirement (at a suitable version, if the requirement specifies version constraints) Pants will error.\n\nIf unspecified, install the entire lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-requirements" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "fromfile": false, + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "fromfile": false, + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an `--entry-point` since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "fromfile": false, + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a `--console-script` (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "target_field_name": null, + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "fromfile": false, + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "target_field_name": null, + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "fromfile": false, + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "fromfile": false, + "help": "If true, don't use yapf when running `scie-pants-linux-x86_64 fmt` and `scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "target_field_name": null, + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "fromfile": false, + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args='--no-local-style'`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "target_field_name": null, + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "deprecated_scope": null, + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "provider": "pants.core", + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.2.x/reference/help-all.json b/versioned_docs/version-2.2.x/reference/help-all.json new file mode 100644 index 000000000..1759b359b --- /dev/null +++ b/versioned_docs/version-2.2.x/reference/help-all.json @@ -0,0 +1,10727 @@ +{ + "name_to_goal_info": { + "count-loc": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "scc", + "source", + "subprocess-environment" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen" + }, + "filedeps": { + "consumed_scopes": [ + "", + "download-pex-bin", + "filedeps", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "black", + "docformatter", + "download-pex-bin", + "fmt", + "grpc_python_plugin", + "isort", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "lint": { + "consumed_scopes": [ + "", + "bandit", + "black", + "docformatter", + "download-pex-bin", + "flake8", + "grpc_python_plugin", + "isort", + "lint", + "pex", + "protoc", + "pylint", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "py-constraints", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "ipython", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "repl", + "source", + "subprocess-environment" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "run", + "source", + "subprocess-environment" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_implemented": true, + "name": "run" + }, + "test": { + "consumed_scopes": [ + "", + "coverage-py", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "pytest", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "mypy", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run type checkers.", + "is_implemented": true, + "name": "typecheck" + }, + "validate": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "sourcefile-validation", + "subprocess-environment", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `files` or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `files` or `relocated_files` targets. If you instead want those files included in any packages specified in the `packages` field for this target, then use a `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "files": { + "alias": "files", + "description": "Loose files that live outside code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `files` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repo root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Loose files that live outside code packages." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.2/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.2/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "The entry point for the binary, i.e. what gets run when executing `./my_binary.pex`.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nTo leave off an entry point, set to ''.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThis defaults to the current platform, but can be overridden to different platforms. You can give a list of multiple platforms to create a multiplatform PEX.\n\nTo use wheels for specific interpreter/platform tags, you can append them to the platform with hyphens like: PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\", \"pp\", \"jp\".\n - PYVER: a two-digit string representing the Python version, e.g. \"27\", \"36\".\n - ABI: the ABI tag, e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\".", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "zip_safe", + "default": "True", + "description": "Whether or not this binary is safe to run in compacted (zip-file) form.\n\nIf the PEX is not zip safe, it will be written to disk prior to execution. You may need to mark `zip_safe=False` if you're having issues loading your code.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "always_write_cache", + "default": "False", + "description": "Whether PEX should always write the .deps cache of the .pex file to disk or not. This can use less memory in RAM-constrained environments.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_library": { + "alias": "protobuf_library", + "description": "Protobuf files used to generate various languages.\n\nSee https://www.pantsbuild.org/v2.2/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.2/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the protobuf_library is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Protobuf files used to generate various languages." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.2/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.2/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nSee https://www.pantsbuild.org/v2.2/docs/python-distributions.", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "setup_py_commands", + "default": null, + "description": "The runtime commands to invoke setup.py with to create the distribution, e.g. [\"bdist_wheel\", \"--python-tag=py36.py37\", \"sdist\"].\n\nIf empty or unspecified, will just create a chroot with a setup() function.\n\nSee https://www.pantsbuild.org/v2.2/docs/python-distributions.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_library": { + "alias": "python_library", + "description": "Python source code.\n\nA `python_library` does not necessarily correspond to a distribution you publish (see `python_distribution` and `pex_binary` for that); multiple `python_library` targets may be packaged into a distribution or binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.2/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Python source code." + }, + "python_requirement_library": { + "alias": "python_requirement_library", + "description": "Python requirements installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the macro `python_requirements()` to convert each requirement into a `python_requirement_library()` target automatically.\n\nSee https://www.pantsbuild.org/v2.2/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A sequence of pip-style requirement strings, e.g. ['foo==1.8', 'bar<=3 ; python_version<'3'].", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "module_mapping", + "default": null, + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`. Any unspecified requirements will use the requirement name as the default module, e.g. \"Django\" will default to `[\"django\"]`.\n\nThis is used for Pants to be able to infer dependencies in BUILD files.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + } + ], + "summary": "Python requirements installable by pip." + }, + "python_tests": { + "alias": "python_tests", + "description": "Python tests, written in either Pytest style or unittest style.\n\nAll test util code, other than `conftest.py`, should go into a dedicated `python_library()` target and then be included in the `dependencies` field.\n\nSee https://www.pantsbuild.org/v2.2/docs/python-test-goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.2/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py', 'conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) which covers the total runtime of all tests in this target.\n\nThis only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + } + ], + "summary": "Python tests, written in either Pytest style or unittest style." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n file_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `files()` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to `` to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to \"\" to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resources": { + "alias": "resources", + "description": "Data embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's pkgutil or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Data embedded in a code package and accessed in a location-independent manner." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tags='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.pylint" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugin-cache-dir=", + "config_key": "plugin_cache_dir", + "default": "/home/josh/.cache/pants/plugins", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugin-cache-dir=" + ], + "env_var": "PANTS_PLUGIN_CACHE_DIR", + "help": "Cache resolved plugin requirements here.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugin-cache-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--plugin-cache-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/plugins" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-pants-warnings=\"['', '', ...]\"", + "config_key": "ignore_pants_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-pants-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_PANTS_WARNINGS", + "help": "Regexps matching warning strings to ignore, e.g. [\"DEPRECATED: the option `--my-opt` will be removed\"]. The regex patterns will be matched from the start of the warning string, and are case-insensitive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/v2.2/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.2.4" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-supportdir=", + "config_key": "pants_supportdir", + "default": "/tmp/tmp.MpwSc5OGVo/build-support", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-supportdir=" + ], + "env_var": "PANTS_SUPPORTDIR", + "help": "Unused. Will be deprecated in 2.2.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-supportdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-supportdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": 1073741824, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of a pantsd process (in bytes). There is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--native-engine-visualize-to=", + "config_key": "native_engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--native-engine-visualize-to=" + ], + "env_var": "PANTS_NATIVE_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": 32, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`). Values less than 2 are not currently supported. This value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-use-local-cache", + "config_key": "process_execution_use_local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-use-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_USE_LOCAL_CACHE", + "help": "Whether to keep process executions in a local cache persisted to disk.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-cleanup-local-dirs", + "config_key": "process_execution_cleanup_local_dirs", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-cleanup-local-dirs" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CLEANUP_LOCAL_DIRS", + "help": "Whether or not to cleanup directories used for local process execution (primarily useful for e.g. debugging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": 64, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-speculation-delay=", + "config_key": "process_execution_speculation_delay", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-speculation-delay=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_SPECULATION_DELAY", + "help": "Number of seconds to wait before speculating a second request for a slow process. see `--process-execution-speculation-strategy`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-speculation-delay" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--process-execution-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "remote_first", + "local_first", + "none" + ], + "comma_separated_choices": "remote_first, local_first, none", + "comma_separated_display_args": "--process-execution-speculation-strategy=", + "config_key": "process_execution_speculation_strategy", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-speculation-strategy=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_SPECULATION_STRATEGY", + "help": "Speculate a second request for an underlying process if the first one does not complete within `--process-execution-speculation-delay` seconds.\n`local_first` (default): Try to run the process locally first, and fall back to remote execution if available.\n`remote_first`: Run the process on the remote execution backend if available, and fall back to the local host if remote calls take longer than the speculation timeout.\n`none`: Do not speculate about long running processes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-speculation-strategy" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-speculation-strategy" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run the requests that are marked as nailgunnable.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-server=\"['', '', ...]\"", + "config_key": "remote_store_server", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-server=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_STORE_SERVER", + "help": "host:port of grpc server to use as remote execution file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-server" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-store-server" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-thread-count=", + "config_key": "remote_store_thread_count", + "default": 1, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-thread-count=" + ], + "env_var": "PANTS_REMOTE_STORE_THREAD_COUNT", + "help": "Thread count to use for the pool that interacts with the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-thread-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-thread-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-server=", + "config_key": "remote_execution_server", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-server=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_SERVER", + "help": "host:port of grpc server to use as remote execution scheduler.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-server" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-connection-limit=", + "config_key": "remote_store_connection_limit", + "default": 5, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-connection-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_CONNECTION_LIMIT", + "help": "Number of remote stores to concurrently allow connections to.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-connection-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-connection-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-initial-timeout=", + "config_key": "remote_store_initial_timeout", + "default": 10, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-initial-timeout=" + ], + "env_var": "PANTS_REMOTE_STORE_INITIAL_TIMEOUT", + "help": "Initial timeout (in milliseconds) when there is a failure in accessing a remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-initial-timeout" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-initial-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 10 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-timeout-multiplier=", + "config_key": "remote_store_timeout_multiplier", + "default": 2.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-timeout-multiplier=" + ], + "env_var": "PANTS_REMOTE_STORE_TIMEOUT_MULTIPLIER", + "help": "Multiplier used to increase the timeout (starting with value of --remote-store-initial-timeout) between retry attempts in accessing a remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-timeout-multiplier" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--remote-store-timeout-multiplier" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-maximum-timeout=", + "config_key": "remote_store_maximum_timeout", + "default": 10, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-maximum-timeout=" + ], + "env_var": "PANTS_REMOTE_STORE_MAXIMUM_TIMEOUT", + "help": "Maximum timeout (in millseconds) to allow between retry attempts in accessing a remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-maximum-timeout" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-maximum-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 10 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote execution instance to use. Used for routing within --remote-execution-server and --remote-store-server.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to --remote-execution-server and --remote-store-server. If not specified, TLS will not be used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for grpc connections to --remote-execution-server and --remote-store-server. If not specified, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants itself may add additional headers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets. This only sets the naming scheme, not the directory paths to look for. To add ignorepatterns, use the option `--build-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files. This does not affect any other filesystem operations; use `--pants-ignore` for that instead. Patterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.2/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants run use color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line,from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.2/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected. Alpha feature.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bootstrapdir=", + "config_key": "pants_bootstrapdir", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.3.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pants-bootstrapdir=" + ], + "env_var": "PANTS_BOOTSTRAPDIR", + "help": "Unused.", + "removal_hint": "Unused.", + "removal_version": "2.3.0.dev1", + "scoped_cmd_line_args": [ + "--pants-bootstrapdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bootstrapdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-configdir=", + "config_key": "pants_configdir", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.3.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--pants-configdir=" + ], + "env_var": "PANTS_CONFIGDIR", + "help": "Unused.", + "removal_hint": "Unused.", + "removal_version": "2.3.0.dev1", + "scoped_cmd_line_args": [ + "--pants-configdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-configdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-quit-timeout=", + "config_key": "pantsd_pailgun_quit_timeout", + "default": 5.0, + "deprecated_message": "Deprecated, will be removed in version: 2.3.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pantsd-pailgun-quit-timeout=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_QUIT_TIMEOUT", + "help": "The length of time (in seconds) to wait for further output after sending a signal to the remote pantsd process before killing it.", + "removal_hint": "The pailgun client has been rewritten to no longer use this", + "removal_version": "2.3.0.dev0", + "scoped_cmd_line_args": [ + "--pantsd-pailgun-quit-timeout" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-quit-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 5.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-handlers=\"['', '', ...]\"", + "config_key": "streaming_workunits_handlers", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.3.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--streaming-workunits-handlers=\"['', '', ...]\"" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_HANDLERS", + "help": "Use this option to name Subsystems which will receive streaming workunit events. For instance, `--streaming-workunits-handlers=\"['pants.reporting.workunit.Workunits']\"` will register a Subsystem called Workunits defined in the module \"pants.reporting.workunit\".", + "removal_hint": "To register a StreamingWorkunitHandler callback, install a UnionRule for type `WorkunitsCallbackFactoryRequest`.", + "removal_version": "2.3.0.dev0", + "scoped_cmd_line_args": [ + "--streaming-workunits-handlers" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--streaming-workunits-handlers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.6.2,<1.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.6.2,<1.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45", + "stevedore<3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45", + "stevedore<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==20.8b1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==20.8b1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": "black:patched_main", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black:patched_main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to Black's pyproject.toml config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.2/docs/advanced-target-selection.", + "is_goal": false, + "scope": "changed" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage>=5.0.3,<5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage>=5.0.3,<5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to `.coveragerc` or alternative coverage config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules to use in the coverage report, e.g. `['helloworld_test', 'helloworld.util.dirutil'].\n\nThe modules are recursive: any submodules will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees, instead of only direct dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "text", + "json" + ], + "comma_separated_choices": "text, json", + "comma_separated_display_args": "--dependees-output-format=", + "config_key": "output_format", + "default": "text", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-format=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FORMAT", + "help": "Use `text` for a flattened list of target addresses; use `json` for each key to be the address of one of the specified targets, with its value being a list of that target's dependees, e.g. `{':example': [':dep1', ':dep2']}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-format" + ], + "typ": "DependeesOutputFormat", + "unscoped_cmd_line_args": [ + "--output-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "text" + } + ] + } + } + ], + "deprecated": [], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "source", + "3rdparty", + "source-and-3rdparty" + ], + "comma_separated_choices": "source, 3rdparty, source-and-3rdparty", + "comma_separated_display_args": "--dependencies-type=", + "config_key": "type", + "default": "source", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-type=" + ], + "env_var": "PANTS_DEPENDENCIES_TYPE", + "help": "Which types of dependencies to list, where `source` means source code dependencies and `3rdparty` means third-party requirement strings.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-type" + ], + "typ": "DependencyType", + "unscoped_cmd_line_args": [ + "--type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "source" + } + ] + } + } + ], + "deprecated": [], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.3.1,<1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.3.1,<1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": "docformatter:main", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter:main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython==2.7.*", + "CPython>=3.4,<3.9" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython==2.7.*", + "CPython>=3.4,<3.9" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.34", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.34" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.34|darwin|9b1a959ccb61b3deb64ffeed43a735c7115e414f4de6f96e66adc9e7fc7a757f|3597768", + "v2.1.34|linux|9b1a959ccb61b3deb64ffeed43a735c7115e414f4de6f96e66adc9e7fc7a757f|3597768" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.34|darwin|9b1a959ccb61b3deb64ffeed43a735c7115e414f4de6f96e66adc9e7fc7a757f|3597768", + "v2.1.34|linux|9b1a959ccb61b3deb64ffeed43a735c7115e414f4de6f96e66adc9e7fc7a757f|3597768" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_library`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.7.9,<3.9", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.7.9,<3.9" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to `.flake8` or alternative Flake8 config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "Rather than formatting all files in a single batch, format each file as a separate process.\n\nWhy 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "grpc_python_plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "macos", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "macos", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "scope": "grpc_python_plugin" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": "IPython:start_ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "IPython:start_ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject]>=5.5.1,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject]>=5.5.1,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": "isort.main", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort.main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to `isort.cfg` or alternative isort config file(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://timothycrosley.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools>=50.3.0,<50.4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools>=50.3.0,<50.4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": "lambdex.bin.lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex.bin.lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.5" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.5" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into AWS Lambdas (https://github.com/wickman/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process.\n\nWhy do this? You'll get many more cache hits. Why not do this? Linters 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-reports-dir=", + "config_key": "reports_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-reports-dir=" + ], + "env_var": "PANTS_LINT_REPORTS_DIR", + "help": "Specifying a directory causes linters that support writing report files to write into this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-reports-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--reports-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-provides", + "config_key": "provides", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-provides" + ], + "env_var": "PANTS_LIST_PROVIDES", + "help": "List only targets that provide an artifact, displaying the columns specified by --provides-columns.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-provides", + "--no-list-provides" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--provides", + "--no-provides" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.782", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.782" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to `mypy.ini` or alternative MyPy config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": [ + "python", + "python3", + "python2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python-setup]` to influence where interpreters are searched for.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-bootstrap-interpreter-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--bootstrap-interpreter-names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3", + "python2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "osx", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "osx", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.4.4,<2.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.4.4,<2.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to `pylintrc` or alternative Pylint config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.2/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file, and set the `[pylint].config` option in `pants.toml`.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.0.1,<6.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for Pytest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.0.1,<6.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-pytest-plugins=\"['', '', ...]\"", + "config_key": "pytest_plugins", + "default": [ + "pytest-cov>=2.10.1,<2.11", + "zipp==2.1.0" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-pytest-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_PYTEST_PLUGINS", + "help": "Requirement strings for any plugins or additional requirements you'd like to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-pytest-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pytest-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.10.1,<2.11", + "zipp==2.1.0" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-xml-dir=", + "config_key": "junit_xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-xml-dir=" + ], + "env_var": "PANTS_PYTEST_JUNIT_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of the generated XML file. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any __init__.py files existing for the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor __init__.py files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on binary targets' entry points, e.g. `pex_binary`'s `entry_point` field and `python_awslambda`'s `handler` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-version=", + "config_key": "mypy_plugin_version", + "default": "mypy-protobuf==1.23", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-version=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_VERSION", + "help": "The pip-style requirement string for `mypy-protobuf`. You must still set `--mypy-plugin` for this option to be used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--mypy-plugin-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==1.23" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.2/docs/protobuf.", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements, use this constraints file to determine which versions to use.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "never", + "nondeployables", + "always" + ], + "comma_separated_choices": "never, nondeployables, always", + "comma_separated_display_args": "--python-setup-resolve-all-constraints=", + "config_key": "resolve_all_constraints", + "default": "nondeployables", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolve-all-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If set, and the requirements of the code being operated on are a subset of the constraints file, then the entire constraints file will be used instead of the subset. If unset, or any requirement of the code being operated on is not in the constraints file, each subset will be independently resolved as needed, which is more correct - work is only invalidated if a requirement it actually depends on changes - but also a lot slower, due to the extra resolving. \n\n* `never` will always use proper subsets, regardless of the goal being run.\n* `nondeployables` will use proper subsets for `./pants package`, but otherwise attempt to use a single resolve.\n* `always` will always attempt to use a single resolve.\n\nRequires [python-setup].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolve-all-constraints" + ], + "typ": "ResolveAllConstraintsOption", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nondeployables" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints. You can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter. The following special strings are supported:\n\n* \"\", the contents of the PATH env var\n* \"\", all Python versions under $(pyenv root)/versions\n* \"\", the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* \"\", paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": [ + "pip-legacy-resolver", + "pip-2020-resolver" + ], + "comma_separated_choices": "pip-legacy-resolver, pip-2020-resolver", + "comma_separated_display_args": "--python-setup-resolver-version=", + "config_key": "resolver_version", + "default": "pip-legacy-resolver", + "deprecated_message": "Upcoming deprecation in version: 2.3.0.dev1, will be removed in version: 2.5.0.dev1.", + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-version=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_VERSION", + "help": "The resolver implementation to use when resolving Python requirements.\n\nSupport for the 'pip-legacy-resolver' will be removed in Pants 2.5; so you're encouraged to start using the 'pip-2020-resolver' early. For more information on this change see https://pip.pypa.io/en/latest/user_guide/#changes-to-the-pip-dependency-resolver-in-20-2-2020", + "removal_hint": "", + "removal_version": "2.5.0.dev1", + "scoped_cmd_line_args": [ + "--python-setup-resolver-version" + ], + "typ": "ResolverVersion", + "unscoped_cmd_line_args": [ + "--resolver-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pip-legacy-resolver" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": 32, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with. Because Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-setup-resolver-jobs`. Setting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-http-cache-ttl=", + "config_key": "resolver_http_cache_ttl", + "default": 0, + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--python-setup-resolver-http-cache-ttl=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_HTTP_CACHE_TTL", + "help": "Unused.", + "removal_hint": "Unused.", + "removal_version": "2.4.0.dev1", + "scoped_cmd_line_args": [ + "--python-setup-resolver-http-cache-ttl" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-http-cache-ttl" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "description": "Options for Pants's Python support.", + "is_goal": false, + "scope": "python-setup" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_goal": true, + "scope": "run" + }, + "run-tracker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-stats-local-json-file=", + "config_key": "stats_local_json_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-tracker-stats-local-json-file=" + ], + "env_var": "PANTS_RUN_TRACKER_STATS_LOCAL_JSON_FILE", + "help": "Write stats to this local json file on run completion.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-tracker-stats-local-json-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--stats-local-json-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-tracker-stats-option-scopes-to-record=\"['', '', ...]\"", + "config_key": "stats_option_scopes_to_record", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-tracker-stats-option-scopes-to-record=\"['', '', ...]\"" + ], + "env_var": "PANTS_RUN_TRACKER_STATS_OPTION_SCOPES_TO_RECORD", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-tracker-stats-option-scopes-to-record" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-option-scopes-to-record" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Tracks and times the execution of a pants run.", + "is_goal": false, + "scope": "run-tracker" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "2.12.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.12.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<50.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<50.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel==0.35.1" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel==0.35.1" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.5" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.5" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The Python setuptools library (https://github.com/pypa/setuptools).", + "is_goal": false, + "scope": "setuptools" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.2/docs/source-roots", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "\nConfig schema is as follows:\n\n{\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ],\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n }\n}\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.\n\nEach ENV_VAR must be one of `LANG`, `LC_CTYPE`, `LC_ALL`, `http_proxy`, `https_proxy`, `ftp_proxy`, `all_proxy`, `no_proxy`, `HTTP_PROXY`, `HTTPS_PROXY`, `FTP_PROXY`, `ALL_PROXY`, `NO_PROXY`, `REQUESTS_CA_BUNDLE`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checkers.", + "is_goal": true, + "scope": "typecheck" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + } + } +} diff --git a/versioned_docs/version-2.3.x/reference/help-all.json b/versioned_docs/version-2.3.x/reference/help-all.json new file mode 100644 index 000000000..6650cf8fa --- /dev/null +++ b/versioned_docs/version-2.3.x/reference/help-all.json @@ -0,0 +1,10779 @@ +{ + "name_to_goal_info": { + "count-loc": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "scc", + "source", + "subprocess-environment" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen" + }, + "filedeps": { + "consumed_scopes": [ + "", + "download-pex-bin", + "filedeps", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "black", + "docformatter", + "download-pex-bin", + "fmt", + "grpc_python_plugin", + "isort", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "lint": { + "consumed_scopes": [ + "", + "bandit", + "black", + "docformatter", + "download-pex-bin", + "flake8", + "grpc_python_plugin", + "isort", + "lint", + "pex", + "protoc", + "pylint", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "py-constraints", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "ipython", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "repl", + "source", + "subprocess-environment" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "run", + "source", + "subprocess-environment" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_implemented": true, + "name": "run" + }, + "tailor": { + "consumed_scopes": [ + "", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor" + }, + "test": { + "consumed_scopes": [ + "", + "coverage-py", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "pytest", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "mypy", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run type checkers.", + "is_implemented": true, + "name": "typecheck" + }, + "validate": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "source", + "sourcefile-validation", + "subprocess-environment", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `files` or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `files` or `relocated_files` targets. If you instead want those files included in any packages specified in the `packages` field for this target, then use a `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "files": { + "alias": "files", + "description": "Loose files that live outside code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `files` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repo root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Loose files that live outside code packages." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.3/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.3/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "The entry point for the binary, i.e. what gets run when executing `./my_binary.pex`.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nTo leave off an entry point, set to ''.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThis defaults to the current platform, but can be overridden to different platforms. You can give a list of multiple platforms to create a multiplatform PEX.\n\nTo use wheels for specific interpreter/platform tags, you can append them to the platform with hyphens like: PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\", \"pp\", \"jp\".\n - PYVER: a two-digit string representing the Python version, e.g. \"27\", \"36\".\n - ABI: the ABI tag, e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\".", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "zip_safe", + "default": "True", + "description": "Whether or not this binary is safe to run in compacted (zip-file) form.\n\nIf the PEX is not zip safe, it will be written to disk prior to execution. You may need to mark `zip_safe=False` if you're having issues loading your code.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "always_write_cache", + "default": "False", + "description": "Whether PEX should always write the .deps cache of the .pex file to disk or not. This can use less memory in RAM-constrained environments.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "execution_mode", + "default": null, + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/). In general, faster cold start times can be attained using the 'unzip' mode which also has the benefit of allowing standard use of `__file__` and filesystem APIs to access code and resources in the PEX.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "required": false, + "type_hint": "'unzip' | 'venv' | 'zipapp' | None" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "required": false, + "type_hint": "bool | None" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_library": { + "alias": "protobuf_library", + "description": "Protobuf files used to generate various languages.\n\nSee https://www.pantsbuild.org/v2.3/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.3/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the protobuf_library is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Protobuf files used to generate various languages." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.3/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.3/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nSee https://www.pantsbuild.org/v2.3/docs/python-distributions.", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "setup_py_commands", + "default": null, + "description": "The runtime commands to invoke setup.py with to create the distribution, e.g. [\"bdist_wheel\", \"--python-tag=py36.py37\", \"sdist\"].\n\nIf empty or unspecified, will just create a chroot with a setup() function.\n\nSee https://www.pantsbuild.org/v2.3/docs/python-distributions.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_library": { + "alias": "python_library", + "description": "Python source code.\n\nA `python_library` does not necessarily correspond to a distribution you publish (see `python_distribution` and `pex_binary` for that); multiple `python_library` targets may be packaged into a distribution or binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.3/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Python source code." + }, + "python_requirement_library": { + "alias": "python_requirement_library", + "description": "Python requirements installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the macro `python_requirements()` to convert each requirement into a `python_requirement_library()` target automatically.\n\nSee https://www.pantsbuild.org/v2.3/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A sequence of pip-style requirement strings, e.g. ['foo==1.8', 'bar<=3 ; python_version<'3'].", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "module_mapping", + "default": null, + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`. Any unspecified requirements will use the requirement name as the default module, e.g. \"Django\" will default to `[\"django\"]`.\n\nThis is used for Pants to be able to infer dependencies in BUILD files.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + } + ], + "summary": "Python requirements installable by pip." + }, + "python_tests": { + "alias": "python_tests", + "description": "Python tests, written in either Pytest style or unittest style.\n\nAll test util code, other than `conftest.py`, should go into a dedicated `python_library()` target and then be included in the `dependencies` field.\n\nSee https://www.pantsbuild.org/v2.3/docs/python-test-goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.3/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py', 'conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) which covers the total runtime of all tests in this target.\n\nThis only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + } + ], + "summary": "Python tests, written in either Pytest style or unittest style." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n file_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `files()` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to `` to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to \"\" to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resources": { + "alias": "resources", + "description": "Data embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's pkgutil or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Data embedded in a code package and accessed in a location-independent manner." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.pylint" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-pants-warnings=\"['', '', ...]\"", + "config_key": "ignore_pants_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-pants-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_PANTS_WARNINGS", + "help": "Regexps matching warning strings to ignore, e.g. [\"DEPRECATED: the option `--my-opt` will be removed\"]. The regex patterns will be matched from the start of the warning string, and are case-insensitive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.3.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/v2.3/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.3.3" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.3.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-supportdir=", + "config_key": "pants_supportdir", + "default": "/tmp/tmp.MpwSc5OGVo/build-support", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-supportdir=" + ], + "env_var": "PANTS_SUPPORTDIR", + "help": "Unused. Will be deprecated in 2.2.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-supportdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-supportdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": 1073741824, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of a pantsd process (in bytes). There is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--native-engine-visualize-to=", + "config_key": "native_engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--native-engine-visualize-to=" + ], + "env_var": "PANTS_NATIVE_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": 32, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`). Values less than 2 are not currently supported. This value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-use-local-cache", + "config_key": "process_execution_use_local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-use-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_USE_LOCAL_CACHE", + "help": "Whether to keep process executions in a local cache persisted to disk.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-cleanup-local-dirs", + "config_key": "process_execution_cleanup_local_dirs", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-cleanup-local-dirs" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CLEANUP_LOCAL_DIRS", + "help": "Whether or not to cleanup directories used for local process execution (primarily useful for e.g. debugging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": 64, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run the requests that are marked as nailgunnable.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to --remote-execution-address and --remote-store-address.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to --remote-execution-address and --remote-store-address.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: Dict[str, str]`, `initial_execution_headers: Dict[str, str]`, and `options: Options` (from pants.option.options). It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is AuthPluginState.UNAVAILABLE, Pants will disable remote caching and execution.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets. This only sets the naming scheme, not the directory paths to look for. To add ignorepatterns, use the option `--build-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files. This does not affect any other filesystem operations; use `--pants-ignore` for that instead. Patterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.3/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants run use color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line,from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.3/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected. Alpha feature.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugin-cache-dir=", + "config_key": "plugin_cache_dir", + "default": "/home/josh/.cache/pants/plugins", + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--plugin-cache-dir=" + ], + "env_var": "PANTS_PLUGIN_CACHE_DIR", + "help": "Cache resolved plugin requirements here.", + "removal_hint": "This option now no-ops, the plugins cache is now housed in the named caches.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--plugin-cache-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--plugin-cache-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/plugins" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-speculation-delay=", + "config_key": "process_execution_speculation_delay", + "default": 1.0, + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--process-execution-speculation-delay=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_SPECULATION_DELAY", + "help": "Number of seconds to wait before speculating a second request for a slow process. see `--process-execution-speculation-strategy`", + "removal_hint": "This option now no-ops, as speculation has been removed. It will be re-implemented in the future.", + "removal_version": "2.4.0.dev0", + "scoped_cmd_line_args": [ + "--process-execution-speculation-delay" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--process-execution-speculation-delay" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": [ + "remote_first", + "local_first", + "none" + ], + "comma_separated_choices": "remote_first, local_first, none", + "comma_separated_display_args": "--process-execution-speculation-strategy=", + "config_key": "process_execution_speculation_strategy", + "default": "none", + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--process-execution-speculation-strategy=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_SPECULATION_STRATEGY", + "help": "Speculate a second request for an underlying process if the first one does not complete within `--process-execution-speculation-delay` seconds.\n`local_first` (default): Try to run the process locally first, and fall back to remote execution if available.\n`remote_first`: Run the process on the remote execution backend if available, and fall back to the local host if remote calls take longer than the speculation timeout.\n`none`: Do not speculate about long running processes.", + "removal_hint": "This option now no-ops, as speculation has been removed. It will be re-implemented in the future.", + "removal_version": "2.4.0.dev0", + "scoped_cmd_line_args": [ + "--process-execution-speculation-strategy" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-speculation-strategy" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-server=\"['', '', ...]\"", + "config_key": "remote_store_server", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--remote-store-server=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_STORE_SERVER", + "help": "host:port of grpc server to use as remote execution file store.", + "removal_hint": "Use `--remote-store-address` instead.\n\nNote that you must add the prefix `grpc://` or `grpcs://` to identify whether TLS should be used.\n\n`--remote-store-address` also is a string option, rather than list option; if you still need support for multiple servers, please open a GitHub issue or reach out on Slack in the #remoting channel. See https://www.pantsbuild.org/v2.3/docs/community.", + "removal_version": "2.4.0.dev0", + "scoped_cmd_line_args": [ + "--remote-store-server" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-store-server" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-thread-count=", + "config_key": "remote_store_thread_count", + "default": 0, + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--remote-store-thread-count=" + ], + "env_var": "PANTS_REMOTE_STORE_THREAD_COUNT", + "help": "Thread count to use for the pool that interacts with the remote file store.", + "removal_hint": "This option now no-ops.", + "removal_version": "2.4.0.dev0", + "scoped_cmd_line_args": [ + "--remote-store-thread-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-thread-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-connection-limit=", + "config_key": "remote_store_connection_limit", + "default": 0, + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--remote-store-connection-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_CONNECTION_LIMIT", + "help": "Number of remote stores to concurrently allow connections to.", + "removal_hint": "This option now no-ops.", + "removal_version": "2.4.0.dev0", + "scoped_cmd_line_args": [ + "--remote-store-connection-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-connection-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-initial-timeout=", + "config_key": "remote_store_initial_timeout", + "default": 0, + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--remote-store-initial-timeout=" + ], + "env_var": "PANTS_REMOTE_STORE_INITIAL_TIMEOUT", + "help": "Initial timeout (in milliseconds) when there is a failure in accessing a remote store.", + "removal_hint": "This option now no-ops.", + "removal_version": "2.4.0.dev0", + "scoped_cmd_line_args": [ + "--remote-store-initial-timeout" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-initial-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-timeout-multiplier=", + "config_key": "remote_store_timeout_multiplier", + "default": 0.0, + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--remote-store-timeout-multiplier=" + ], + "env_var": "PANTS_REMOTE_STORE_TIMEOUT_MULTIPLIER", + "help": "Multiplier used to increase the timeout (starting with value of --remote-store-initial-timeout) between retry attempts in accessing a remote store.", + "removal_hint": "This option now no-ops.", + "removal_version": "2.4.0.dev0", + "scoped_cmd_line_args": [ + "--remote-store-timeout-multiplier" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--remote-store-timeout-multiplier" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-maximum-timeout=", + "config_key": "remote_store_maximum_timeout", + "default": 0, + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--remote-store-maximum-timeout=" + ], + "env_var": "PANTS_REMOTE_STORE_MAXIMUM_TIMEOUT", + "help": "Maximum timeout (in millseconds) to allow between retry attempts in accessing a remote store.", + "removal_hint": "This option now no-ops.", + "removal_version": "2.4.0.dev0", + "scoped_cmd_line_args": [ + "--remote-store-maximum-timeout" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-maximum-timeout" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-server=", + "config_key": "remote_execution_server", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--remote-execution-server=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_SERVER", + "help": "host:port of grpc server to use as remote execution scheduler.", + "removal_hint": "Use `--remote-execution-address` instead.\n\nNote that you must add the prefix `grpc://` or `grpcs://` to identify whether TLS should be used.", + "removal_version": "2.4.0.dev0", + "scoped_cmd_line_args": [ + "--remote-execution-server" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-server" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.6.2,<1.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.6.2,<1.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45", + "stevedore<3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45", + "stevedore<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==20.8b1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==20.8b1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": "black:patched_main", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black:patched_main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to Black's pyproject.toml config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.3/docs/advanced-target-selection.", + "is_goal": false, + "scope": "changed" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage>=5.0.3,<5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage>=5.0.3,<5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to `.coveragerc` or alternative coverage config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules to use in the coverage report, e.g. `['helloworld_test', 'helloworld.util.dirutil'].\n\nThe modules are recursive: any submodules will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees, instead of only direct dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "text", + "json" + ], + "comma_separated_choices": "text, json", + "comma_separated_display_args": "--dependees-output-format=", + "config_key": "output_format", + "default": "text", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-format=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FORMAT", + "help": "Use `text` for a flattened list of target addresses; use `json` for each key to be the address of one of the specified targets, with its value being a list of that target's dependees, e.g. `{':example': [':dep1', ':dep2']}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-format" + ], + "typ": "DependeesOutputFormat", + "unscoped_cmd_line_args": [ + "--output-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "text" + } + ] + } + } + ], + "deprecated": [], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "source", + "3rdparty", + "source-and-3rdparty" + ], + "comma_separated_choices": "source, 3rdparty, source-and-3rdparty", + "comma_separated_display_args": "--dependencies-type=", + "config_key": "type", + "default": "source", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-type=" + ], + "env_var": "PANTS_DEPENDENCIES_TYPE", + "help": "Which types of dependencies to list, where `source` means source code dependencies and `3rdparty` means third-party requirement strings.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-type" + ], + "typ": "DependencyType", + "unscoped_cmd_line_args": [ + "--type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "source" + } + ] + } + } + ], + "deprecated": [], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.3.1,<1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.3.1,<1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython==2.7.*", + "CPython>=3.4,<3.9" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython==2.7.*", + "CPython>=3.4,<3.9" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.35", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.35" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.35|darwin|3b1c97ebd79a8b650c81f0afbdbefef17c3d1a128219a8e95b5f35c2c9dfd532|3600775", + "v2.1.35|linux|3b1c97ebd79a8b650c81f0afbdbefef17c3d1a128219a8e95b5f35c2c9dfd532|3600775" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.35|darwin|3b1c97ebd79a8b650c81f0afbdbefef17c3d1a128219a8e95b5f35c2c9dfd532|3600775", + "v2.1.35|linux|3b1c97ebd79a8b650c81f0afbdbefef17c3d1a128219a8e95b5f35c2c9dfd532|3600775" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_library`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.7.9,<3.9", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.7.9,<3.9" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to `.flake8` or alternative Flake8 config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "Rather than formatting all files in a single batch, format each file as a separate process.\n\nWhy 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "grpc_python_plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "macos", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "macos", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "scope": "grpc_python_plugin" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": "IPython:start_ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "IPython:start_ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject]>=5.5.1,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject]>=5.5.1,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": "isort.main", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort.main" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to `isort.cfg` or alternative isort config file(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://timothycrosley.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools>=50.3.0,<50.4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools>=50.3.0,<50.4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": "lambdex.bin.lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex.bin.lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.5" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.5" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into AWS Lambdas (https://github.com/wickman/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process.\n\nWhy do this? You'll get many more cache hits. Why not do this? Linters 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-reports-dir=", + "config_key": "reports_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-reports-dir=" + ], + "env_var": "PANTS_LINT_REPORTS_DIR", + "help": "Specifying a directory causes linters that support writing report files to write into this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-reports-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--reports-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-provides", + "config_key": "provides", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-provides" + ], + "env_var": "PANTS_LIST_PROVIDES", + "help": "List only targets that provide an artifact, displaying the columns specified by --provides-columns.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-provides", + "--no-list-provides" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--provides", + "--no-provides" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.800", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.800" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to `mypy.ini` or alternative MyPy config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": [ + "python", + "python3", + "python2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python-setup]` to influence where interpreters are searched for.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-bootstrap-interpreter-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--bootstrap-interpreter-names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3", + "python2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "osx", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "osx", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.4.4,<2.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.4.4,<2.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The main module for the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to `pylintrc` or alternative Pylint config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.3/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file, and set the `[pylint].config` option in `pants.toml`.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.0.1,<6.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for Pytest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.0.1,<6.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-pytest-plugins=\"['', '', ...]\"", + "config_key": "pytest_plugins", + "default": [ + "pytest-cov>=2.10.1,<2.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-pytest-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_PYTEST_PLUGINS", + "help": "Requirement strings for any plugins or additional requirements you'd like to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-pytest-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pytest-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.10.1,<2.12" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-xml-dir=", + "config_key": "junit_xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-xml-dir=" + ], + "env_var": "PANTS_PYTEST_JUNIT_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of the generated XML file. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any __init__.py files existing for the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor __init__.py files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on binary targets' entry points, e.g. `pex_binary`'s `entry_point` field and `python_awslambda`'s `handler` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-version=", + "config_key": "mypy_plugin_version", + "default": "mypy-protobuf==1.23", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-version=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_VERSION", + "help": "The pip-style requirement string for `mypy-protobuf`. You must still set `--mypy-plugin` for this option to be used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--mypy-plugin-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==1.23" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.3/docs/protobuf.", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements, use this constraints file to determine which versions to use.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "never", + "nondeployables", + "always" + ], + "comma_separated_choices": "never, nondeployables, always", + "comma_separated_display_args": "--python-setup-resolve-all-constraints=", + "config_key": "resolve_all_constraints", + "default": "nondeployables", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolve-all-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If set, and the requirements of the code being operated on are a subset of the constraints file, then the entire constraints file will be used instead of the subset. If unset, or any requirement of the code being operated on is not in the constraints file, each subset will be independently resolved as needed, which is more correct - work is only invalidated if a requirement it actually depends on changes - but also a lot slower, due to the extra resolving. \n\n* `never` will always use proper subsets, regardless of the goal being run.\n* `nondeployables` will use proper subsets for `./pants package`, but otherwise attempt to use a single resolve.\n* `always` will always attempt to use a single resolve.\n\nRequires [python-setup].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolve-all-constraints" + ], + "typ": "ResolveAllConstraintsOption", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nondeployables" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints. You can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter. The following special strings are supported:\n\n* \"\", the contents of the PATH env var\n* \"\", all Python versions under $(pyenv root)/versions\n* \"\", the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* \"\", paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": [ + "pip-legacy-resolver", + "pip-2020-resolver" + ], + "comma_separated_choices": "pip-legacy-resolver, pip-2020-resolver", + "comma_separated_display_args": "--python-setup-resolver-version=", + "config_key": "resolver_version", + "default": "pip-legacy-resolver", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-version=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_VERSION", + "help": "The resolver implementation to use when resolving Python requirements.\n\nSupport for the 'pip-legacy-resolver' will be removed in Pants 2.5; so you're encouraged to start using the 'pip-2020-resolver' early. For more information on this change see https://pip.pypa.io/en/latest/user_guide/#changes-to-the-pip-dependency-resolver-in-20-2-2020", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-version" + ], + "typ": "ResolverVersion", + "unscoped_cmd_line_args": [ + "--resolver-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pip-legacy-resolver" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": 32, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with. Because Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-setup-resolver-jobs`. Setting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-http-cache-ttl=", + "config_key": "resolver_http_cache_ttl", + "default": 0, + "deprecated_message": "Deprecated, will be removed in version: 2.4.0.dev1.", + "deprecation_active": true, + "display_args": [ + "--python-setup-resolver-http-cache-ttl=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_HTTP_CACHE_TTL", + "help": "Unused.", + "removal_hint": "Unused.", + "removal_version": "2.4.0.dev1", + "scoped_cmd_line_args": [ + "--python-setup-resolver-http-cache-ttl" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-http-cache-ttl" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "description": "Options for Pants's Python support.", + "is_goal": false, + "scope": "python-setup" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_goal": true, + "scope": "run" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "2.12.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.12.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<54.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<54.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.37" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.37" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--setuptools-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_ENTRY_POINT", + "help": "DEPRECATED: Unused.", + "removal_hint": "This option was never used.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--setuptools-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--setuptools-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_INTERPRETER_CONSTRAINTS", + "help": "DEPRECATED: Python interpreter constraints to use when selecting an interpreter to package `python_distribution` targets using setup.py.", + "removal_hint": "Interpreter constraints for setup.py execution are now derived from the `python_distribution` being packaged so this option is not needed.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--setuptools-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "description": "The Python setuptools library (https://github.com/pypa/setuptools).", + "is_goal": false, + "scope": "setuptools" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.3/docs/source-roots", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "\nConfig schema is as follows:\n\n{\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ],\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n }\n}\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "scope": "tailor" + }, + "test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checkers.", + "is_goal": true, + "scope": "typecheck" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + } + } +} diff --git a/versioned_docs/version-2.4.x/reference/help-all.json b/versioned_docs/version-2.4.x/reference/help-all.json new file mode 100644 index 000000000..849f27801 --- /dev/null +++ b/versioned_docs/version-2.4.x/reference/help-all.json @@ -0,0 +1,11426 @@ +{ + "name_to_goal_info": { + "count-loc": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "scc", + "source", + "subprocess-environment" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen" + }, + "filedeps": { + "consumed_scopes": [ + "", + "download-pex-bin", + "filedeps", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "black", + "docformatter", + "download-pex-bin", + "fmt", + "grpc_python_plugin", + "isort", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "lint": { + "consumed_scopes": [ + "", + "bandit", + "black", + "docformatter", + "download-pex-bin", + "flake8", + "grpc_python_plugin", + "isort", + "lint", + "pex", + "protoc", + "pylint", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "py-constraints", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "ipython", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "repl", + "source", + "subprocess-environment" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "run", + "source", + "subprocess-environment" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_implemented": true, + "name": "run" + }, + "tailor": { + "consumed_scopes": [ + "", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor" + }, + "test": { + "consumed_scopes": [ + "", + "coverage-py", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "pytest", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "source", + "subprocess-environment", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "mypy", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "source", + "subprocess-environment" + ], + "description": "Run type checkers.", + "is_implemented": true, + "name": "typecheck" + }, + "validate": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "source", + "sourcefile-validation", + "subprocess-environment", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `files` or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `files` or `relocated_files` targets. If you instead want those files included in any packages specified in the `packages` field for this target, then use a `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "files": { + "alias": "files", + "description": "Loose files that live outside code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `files` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repo root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Loose files that live outside code packages." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.4/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.4/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "The entry point for the binary, i.e. what gets run when executing `./my_binary.pex`.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nTo leave off an entry point, set to ''.", + "required": true, + "type_hint": "str" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThis defaults to the current platform, but can be overridden to different platforms. You can give a list of multiple platforms to create a multiplatform PEX.\n\nTo use wheels for specific interpreter/platform tags, you can append them to the platform with hyphens like: PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\", \"pp\", \"jp\".\n - PYVER: a two-digit string representing the Python version, e.g. \"27\", \"36\".\n - ABI: the ABI tag, e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\".", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "zip_safe", + "default": "True", + "description": "Whether or not this binary is safe to run in compacted (zip-file) form.\n\nIf the PEX is not zip safe, it will be written to disk prior to execution. You may need to mark `zip_safe=False` if you're having issues loading your code.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "always_write_cache", + "default": "False", + "description": "Whether PEX should always write the .deps cache of the .pex file to disk or not. This can use less memory in RAM-constrained environments.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "execution_mode", + "default": null, + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/). In general, faster cold start times can be attained using the 'unzip' mode which also has the benefit of allowing standard use of `__file__` and filesystem APIs to access code and resources in the PEX.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "required": false, + "type_hint": "'unzip' | 'venv' | 'zipapp' | None" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "required": false, + "type_hint": "bool | None" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_library": { + "alias": "protobuf_library", + "description": "Protobuf files used to generate various languages.\n\nSee https://www.pantsbuild.org/v2.4/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.4/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the protobuf_library is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Protobuf files used to generate various languages." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.4/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.4/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nSee https://www.pantsbuild.org/v2.4/docs/python-distributions.", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "setup_py_commands", + "default": null, + "description": "The runtime commands to invoke setup.py with to create the distribution, e.g. [\"bdist_wheel\", \"--python-tag=py36.py37\", \"sdist\"].\n\nIf empty or unspecified, will just create a chroot with a setup() function.\n\nSee https://www.pantsbuild.org/v2.4/docs/python-distributions.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_library": { + "alias": "python_library", + "description": "Python source code.\n\nA `python_library` does not necessarily correspond to a distribution you publish (see `python_distribution` and `pex_binary` for that); multiple `python_library` targets may be packaged into a distribution or binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.4/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Python source code." + }, + "python_requirement_library": { + "alias": "python_requirement_library", + "description": "Python requirements installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the macro `python_requirements()` to convert each requirement into a `python_requirement_library()` target automatically.\n\nSee https://www.pantsbuild.org/v2.4/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A sequence of pip-style requirement strings, e.g. ['foo==1.8', 'bar<=3 ; python_version<'3'].", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "module_mapping", + "default": null, + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`. Any unspecified requirements will use the requirement name as the default module, e.g. \"Django\" will default to `[\"django\"]`.\n\nThis is used for Pants to be able to infer dependencies in BUILD files.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + } + ], + "summary": "Python requirements installable by pip." + }, + "python_tests": { + "alias": "python_tests", + "description": "Python tests, written in either Pytest style or unittest style.\n\nAll test util code, other than `conftest.py`, should go into a dedicated `python_library()` target and then be included in the `dependencies` field.\n\nSee https://www.pantsbuild.org/v2.4/docs/python-test-goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.4/docs/python-interpreter-compatibility.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py', 'conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) which covers the total runtime of all tests in this target.\n\nThis only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + } + ], + "summary": "Python tests, written in either Pytest style or unittest style." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n file_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `files()` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to `` to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to \"\" to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resources": { + "alias": "resources", + "description": "Data embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's pkgutil or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Data embedded in a code package and accessed in a location-independent manner." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.pylint" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-pants-warnings=\"['', '', ...]\"", + "config_key": "ignore_pants_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-pants-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_PANTS_WARNINGS", + "help": "Regexps matching warning strings to ignore, e.g. [\"DEPRECATED: the option `--my-opt` will be removed\"]. The regex patterns will be matched from the start of the warning string, and are case-insensitive.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.4.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/v2.4/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.4.2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.4.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-supportdir=", + "config_key": "pants_supportdir", + "default": "/tmp/tmp.MpwSc5OGVo/build-support", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-supportdir=" + ], + "env_var": "PANTS_SUPPORTDIR", + "help": "Unused. Will be deprecated in 2.2.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-supportdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-supportdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": 1073741824, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process (in bytes).\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--native-engine-visualize-to=", + "config_key": "native_engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--native-engine-visualize-to=" + ], + "env_var": "PANTS_NATIVE_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": 32, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`). Values less than 2 are not currently supported. This value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing. The path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cache", + "config_key": "process_execution_local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cleanup", + "config_key": "process_execution_local_cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cleanup" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": 64, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to --remote-execution-address and --remote-store-address.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to --remote-execution-address and --remote-store-address.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: Dict[str, str]`, `initial_execution_headers: Dict[str, str]`, and `options: Options` (from pants.option.options). It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is AuthPluginState.UNAVAILABLE, Pants will disable remote caching and execution.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "first_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "Whether to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "first_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets. This only sets the naming scheme, not the directory paths to look for. To add ignorepatterns, use the option `--build-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files. This does not affect any other filesystem operations; use `--pants-ignore` for that instead. Patterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.4/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants run use color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line,from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.4/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected. Alpha feature.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugin-cache-dir=", + "config_key": "plugin_cache_dir", + "default": "/home/josh/.cache/pants/plugins", + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--plugin-cache-dir=" + ], + "env_var": "PANTS_PLUGIN_CACHE_DIR", + "help": "Cache resolved plugin requirements here.", + "removal_hint": "This option now no-ops, the plugins cache is now housed in the named caches.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--plugin-cache-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--plugin-cache-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/plugins" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-use-local-cache", + "config_key": "process_execution_use_local_cache", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]process-execution-use-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_USE_LOCAL_CACHE", + "help": "Whether to keep process executions in a local cache persisted to disk.", + "removal_hint": "Use the shorter `--process-execution-local-cache`, which behaves the same.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-use-local-cache", + "--no-process-execution-use-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-cleanup-local-dirs", + "config_key": "process_execution_cleanup_local_dirs", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]process-execution-cleanup-local-dirs" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CLEANUP_LOCAL_DIRS", + "help": "Whether or not to cleanup directories used for local process execution (primarily useful for e.g. debugging).", + "removal_hint": "Use the shorter `--process-execution-local-cleanup`, which behaves the same.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-cleanup-local-dirs", + "--no-process-execution-cleanup-local-dirs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run the requests that are marked as nailgunnable.", + "removal_hint": "This option no-ops as Pants does not yet support the JVM.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\nSee https://www.pantsbuild.org/v2.4/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\nSee https://www.pantsbuild.org/v2.4/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "scope": "anonymous-telemetry" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.6.2,<1.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.6.2,<1.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45", + "stevedore<3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45", + "stevedore<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==20.8b1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==20.8b1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to Black's pyproject.toml config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.4/docs/advanced-target-selection.", + "is_goal": false, + "scope": "changed" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage>=5.0.3,<5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage>=5.0.3,<5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to `.coveragerc` or alternative coverage config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules to use in the coverage report, e.g. `['helloworld_test', 'helloworld.util.dirutil'].\n\nThe modules are recursive: any submodules will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees, instead of only direct dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "text", + "json" + ], + "comma_separated_choices": "text, json", + "comma_separated_display_args": "--dependees-output-format=", + "config_key": "output_format", + "default": "text", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-format=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FORMAT", + "help": "Use `text` for a flattened list of target addresses; use `json` for each key to be the address of one of the specified targets, with its value being a list of that target's dependees, e.g. `{':example': [':dep1', ':dep2']}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-format" + ], + "typ": "DependeesOutputFormat", + "unscoped_cmd_line_args": [ + "--output-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "text" + } + ] + } + } + ], + "deprecated": [], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "source", + "3rdparty", + "source-and-3rdparty" + ], + "comma_separated_choices": "source, 3rdparty, source-and-3rdparty", + "comma_separated_display_args": "--dependencies-type=", + "config_key": "type", + "default": "source", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-type=" + ], + "env_var": "PANTS_DEPENDENCIES_TYPE", + "help": "Which types of dependencies to list, where `source` means source code dependencies and `3rdparty` means third-party requirement strings.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-type" + ], + "typ": "DependencyType", + "unscoped_cmd_line_args": [ + "--type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "source" + } + ] + } + } + ], + "deprecated": [], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.3.1,<1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.3.1,<1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython==2.7.*", + "CPython>=3.4,<3.9" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython==2.7.*", + "CPython>=3.4,<3.9" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.35", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.35" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.35|darwin|3b1c97ebd79a8b650c81f0afbdbefef17c3d1a128219a8e95b5f35c2c9dfd532|3600775", + "v2.1.35|linux|3b1c97ebd79a8b650c81f0afbdbefef17c3d1a128219a8e95b5f35c2c9dfd532|3600775" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.35|darwin|3b1c97ebd79a8b650c81f0afbdbefef17c3d1a128219a8e95b5f35c2c9dfd532|3600775", + "v2.1.35|linux|3b1c97ebd79a8b650c81f0afbdbefef17c3d1a128219a8e95b5f35c2c9dfd532|3600775" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_library`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.7.9,<3.9", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.7.9,<3.9" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to `.flake8` or alternative Flake8 config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "Rather than formatting all files in a single batch, format each file as a separate process.\n\nWhy 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "grpc_python_plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "macos", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "macos", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "scope": "grpc_python_plugin" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject]>=5.5.1,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject]>=5.5.1,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to `isort.cfg` or alternative isort config file(s).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://timothycrosley.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools>=50.3.0,<50.4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools>=50.3.0,<50.4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.5" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.5" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into AWS Lambdas (https://github.com/wickman/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process.\n\nWhy do this? You'll get many more cache hits. Why not do this? Linters 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-reports-dir=", + "config_key": "reports_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-reports-dir=" + ], + "env_var": "PANTS_LINT_REPORTS_DIR", + "help": "Specifying a directory causes linters that support writing report files to write into this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-reports-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--reports-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-provides", + "config_key": "provides", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-provides" + ], + "env_var": "PANTS_LIST_PROVIDES", + "help": "List only targets that provide an artifact, displaying the columns specified by --provides-columns.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-provides", + "--no-list-provides" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--provides", + "--no-provides" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.800", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.800" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to `mypy.ini` or alternative MyPy config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": [ + "python", + "python3", + "python2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python-setup]` to influence where interpreters are searched for.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-bootstrap-interpreter-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--bootstrap-interpreter-names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3", + "python2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "osx", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "osx", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.4.4,<2.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.4.4,<2.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to `pylintrc` or alternative Pylint config file", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.4/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file, and set the `[pylint].config` option in `pants.toml`.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.0.1,<6.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for Pytest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.0.1,<6.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-pytest-plugins=\"['', '', ...]\"", + "config_key": "pytest_plugins", + "default": [ + "pytest-cov>=2.10.1,<2.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-pytest-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_PYTEST_PLUGINS", + "help": "Requirement strings for any plugins or additional requirements you'd like to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-pytest-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pytest-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.10.1,<2.12" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-xml-dir=", + "config_key": "junit_xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-xml-dir=" + ], + "env_var": "PANTS_PYTEST_JUNIT_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of the generated XML file. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-config=" + ], + "env_var": "PANTS_PYTEST_CONFIG", + "help": "Path to pytest.ini or alternative Pytest config file.\n\nPytest will attempt to auto-discover the config file,meaning that it should typically be an ancestor of yourtests, such as in the build root.\n\nPants will not automatically set --rootdir for you to force Pytest to pick up your config file, but you can manually set --rootdir in [pytest].args.\n\nRefer to https://docs.pytest.org/en/stable/customize.html#initialization-determining-rootdir-and-configfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any __init__.py files existing for the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor __init__.py files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on binary targets' entry points, e.g. `pex_binary`'s `entry_point` field and `python_awslambda`'s `handler` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-version=", + "config_key": "mypy_plugin_version", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-version=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_VERSION", + "help": "The pip-style requirement string for `mypy-protobuf`. You must still set `--mypy-plugin` for this option to be used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--mypy-plugin-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.4/docs/protobuf.", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-protobuf.mypy-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-mypy-plugin-version=", + "config_key": "mypy_plugin_version", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-mypy-plugin-version=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_MYPY_PLUGIN_VERSION", + "help": "The pip-style requirement string for `mypy-protobuf`. You must still set `--mypy-plugin` for this option to be used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-mypy-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--mypy-plugin-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-version=", + "config_key": "version", + "default": "mypy-protobuf==2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-version=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-mypy-plugin", + "--no-python-protobuf-mypy-plugin-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration of the mypy-protobuf type stub generation plugin for the Protobuf Python backend.", + "is_goal": false, + "scope": "python-protobuf.mypy-plugin" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements, use this constraints file to determine which versions to use.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nMutually exclusive with `--requirement-constraints-target`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints-target=", + "config_key": "requirement_constraints_target", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints-target=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS_TARGET", + "help": "When resolving third-party requirements, use this _python_constraints target to determine which versions to use.\n\nThis is primarily intended for macros (for now). Normally, use `--requirement-constraints` instead with a constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraints and how constraints are applied in Pex and pip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints-target" + ], + "typ": "target_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "never", + "nondeployables", + "always" + ], + "comma_separated_choices": "never, nondeployables, always", + "comma_separated_display_args": "--python-setup-resolve-all-constraints=", + "config_key": "resolve_all_constraints", + "default": "nondeployables", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolve-all-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If set, and the requirements of the code being operated on are a subset of the constraints file, then the entire constraints file will be used instead of the subset. If unset, or any requirement of the code being operated on is not in the constraints file, each subset will be independently resolved as needed, which is more correct - work is only invalidated if a requirement it actually depends on changes - but also a lot slower, due to the extra resolving. \n\n* `never` will always use proper subsets, regardless of the goal being run.\n* `nondeployables` will use proper subsets for `./pants package`, but otherwise attempt to use a single resolve.\n* `always` will always attempt to use a single resolve.\n\nRequires [python-setup].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolve-all-constraints" + ], + "typ": "ResolveAllConstraintsOption", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nondeployables" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints. You can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter. The following special strings are supported:\n\n* \"\", the contents of the PATH env var\n* \"\", all Python versions under $(pyenv root)/versions\n* \"\", the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* \"\", paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": 32, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with. Because Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-setup-resolver-jobs`. Setting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": [ + "pip-legacy-resolver", + "pip-2020-resolver" + ], + "comma_separated_choices": "pip-legacy-resolver, pip-2020-resolver", + "comma_separated_display_args": "--python-setup-resolver-version=", + "config_key": "resolver_version", + "default": "pip-2020-resolver", + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-setup-resolver-version=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_VERSION", + "help": "The resolver implementation to use when resolving Python requirements.", + "removal_hint": "Support for configuring --resolver-version and selecting pip's legacy resolver will be removed in Pants 2.5. Refer to https://pip.pypa.io/en/latest/user_guide/#changes-to-the-pip-dependency-resolver-in-20-2-2020 for more information on the new resolver.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--python-setup-resolver-version" + ], + "typ": "ResolverVersion", + "unscoped_cmd_line_args": [ + "--resolver-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pip-2020-resolver" + } + ] + } + } + ], + "description": "Options for Pants's Python support.", + "is_goal": false, + "scope": "python-setup" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_goal": true, + "scope": "run" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "2.12.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.12.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<54.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<54.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.37" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.37" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--setuptools-entry-point=" + ], + "env_var": "PANTS_SETUPTOOLS_ENTRY_POINT", + "help": "DEPRECATED: Unused.", + "removal_hint": "This option was never used.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--setuptools-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.5.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--setuptools-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_INTERPRETER_CONSTRAINTS", + "help": "DEPRECATED: Python interpreter constraints to use when selecting an interpreter to package `python_distribution` targets using setup.py.", + "removal_hint": "Interpreter constraints for setup.py execution are now derived from the `python_distribution` being packaged so this option is not needed.", + "removal_version": "2.5.0.dev0", + "scoped_cmd_line_args": [ + "--setuptools-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "description": "The Python setuptools library (https://github.com/pypa/setuptools).", + "is_goal": false, + "scope": "setuptools" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.4/docs/source-roots", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "\nConfig schema is as follows:\n\n{\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ],\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n }\n}\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "scope": "tailor" + }, + "test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checkers.", + "is_goal": true, + "scope": "typecheck" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + } + } +} diff --git a/versioned_docs/version-2.5.x/reference/help-all.json b/versioned_docs/version-2.5.x/reference/help-all.json new file mode 100644 index 000000000..f54668518 --- /dev/null +++ b/versioned_docs/version-2.5.x/reference/help-all.json @@ -0,0 +1,12392 @@ +{ + "name_to_goal_info": { + "count-loc": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "scc", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen" + }, + "filedeps": { + "consumed_scopes": [ + "", + "download-pex-bin", + "filedeps", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "black", + "docformatter", + "download-pex-bin", + "fmt", + "grpc_python_plugin", + "isort", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "shfmt", + "source", + "subprocess-environment" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "lint": { + "consumed_scopes": [ + "", + "bandit", + "black", + "docformatter", + "download-pex-bin", + "flake8", + "grpc_python_plugin", + "isort", + "lint", + "pex", + "protoc", + "pylint", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "shfmt", + "source", + "subprocess-environment" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "py-constraints", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "ipython", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "repl", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "run", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_implemented": true, + "name": "run" + }, + "tailor": { + "consumed_scopes": [ + "", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor" + }, + "test": { + "consumed_scopes": [ + "", + "coverage-py", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "pytest", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "mypy", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Run type checkers.", + "is_implemented": true, + "name": "typecheck" + }, + "validate": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "sourcefile-validation", + "subprocess-environment", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `files` or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `files` or `relocated_files` targets. If you instead want those files included in any packages specified in the `packages` field for this target, then use a `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "files": { + "alias": "files", + "description": "Loose files that live outside code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `files` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repo root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Loose files that live outside code packages." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see (https://www.pantsbuild.org/v2.5/docs/pex-files).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee (https://www.pantsbuild.org/v2.5/docs/python-interpreter-compatibility).", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "The entry point for the binary, i.e. what gets run when executing `./my_binary.pex`.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nTo leave off an entry point, set to ''.", + "required": true, + "type_hint": "str" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThis defaults to the current platform, but can be overridden to different platforms. You can give a list of multiple platforms to create a multiplatform PEX.\n\nTo use wheels for specific interpreter/platform tags, you can append them to the platform with hyphens like: PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\", \"pp\", \"jp\".\n - PYVER: a two-digit string representing the Python version, e.g. \"27\", \"36\".\n - ABI: the ABI tag, e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\".", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "zip_safe", + "default": "True", + "description": "Whether or not this binary is safe to run in compacted (zip-file) form.\n\nIf the PEX is not zip safe, it will be written to disk prior to execution. You may need to mark `zip_safe=False` if you're having issues loading your code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "always_write_cache", + "default": "False", + "description": "Whether PEX should always write the .deps cache of the .pex file to disk or not. This can use less memory in RAM-constrained environments.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/). In general, faster cold start times can be attained using the 'unzip' mode which also has the benefit of allowing standard use of `__file__` and filesystem APIs to access code and resources in the PEX.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "required": false, + "type_hint": "'unzip' | 'venv' | 'zipapp' | None" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_library": { + "alias": "protobuf_library", + "description": "Protobuf files used to generate various languages.\n\nSee (https://www.pantsbuild.org/v2.5/docs/protobuf).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee (https://www.pantsbuild.org/v2.5/docs/python-interpreter-compatibility).", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the protobuf_library is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Protobuf files used to generate various languages." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee (https://www.pantsbuild.org/v2.5/docs/awslambda-python).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee (https://www.pantsbuild.org/v2.5/docs/python-interpreter-compatibility).", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nSee (https://www.pantsbuild.org/v2.5/docs/python-distributions).", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "setup_py_commands", + "default": null, + "description": "The runtime commands to invoke setup.py with to create the distribution, e.g. [\"bdist_wheel\", \"--python-tag=py36.py37\", \"sdist\"].\n\nIf empty or unspecified, will just create a chroot with a setup() function.\n\nSee (https://www.pantsbuild.org/v2.5/docs/python-distributions).", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_library": { + "alias": "python_library", + "description": "Python source code.\n\nA `python_library` does not necessarily correspond to a distribution you publish (see `python_distribution` and `pex_binary` for that); multiple `python_library` targets may be packaged into a distribution or binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee (https://www.pantsbuild.org/v2.5/docs/python-interpreter-compatibility).", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Python source code." + }, + "python_requirement_library": { + "alias": "python_requirement_library", + "description": "Python requirements installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the macro `python_requirements()` to convert each requirement into a `python_requirement_library()` target automatically.\n\nSee (https://www.pantsbuild.org/v2.5/docs/python-third-party-dependencies).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A sequence of pip-style requirement strings, e.g. `['foo==1.8', \"bar<=3 ; python_version<'3'\"]`.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "module_mapping", + "default": null, + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`. Any unspecified requirements will use the requirement name as the default module, e.g. \"Django\" will default to `[\"django\"]`.\n\nThis is used to infer dependencies.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + } + ], + "summary": "Python requirements installable by pip." + }, + "python_tests": { + "alias": "python_tests", + "description": "Python tests, written in either Pytest style or unittest style.\n\nAll test util code, other than `conftest.py`, should go into a dedicated `python_library()` target and then be included in the `dependencies` field.\n\nSee (https://www.pantsbuild.org/v2.5/docs/python-test-goal).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. 'CPython==2.7.*' or 'CPython>=3.6,<4'. You can leave off `CPython` as a shorthand, e.g. '>=2.7' will be expanded to 'CPython>=2.7'.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee (https://www.pantsbuild.org/v2.5/docs/python-interpreter-compatibility).", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py', 'conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nThis only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Python tests, written in either Pytest style or unittest style." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n file_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `files()` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to `` to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to \"\" to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resources": { + "alias": "resources", + "description": "Data embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's pkgutil or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Data embedded in a code package and accessed in a location-independent manner." + }, + "shell_library": { + "alias": "shell_library", + "description": "Bourne-based shell scripts, e.g. Bash scripts.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Bourne-based shell scripts, e.g. Bash scripts." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Tests of Bourne-based shell scripts using the shUnit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target. If unset, the test will never time out.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Tests of Bourne-based shell scripts using the shUnit2 test framework." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.pylint" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.5.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from (https://www.pantsbuild.org/v2.5/docs/installation), however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.5.2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.5.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-supportdir=", + "config_key": "pants_supportdir", + "default": "/tmp/tmp.MpwSc5OGVo/build-support", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-supportdir=" + ], + "env_var": "PANTS_SUPPORTDIR", + "help": "Unused. Will be deprecated in 2.2.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-supportdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-supportdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": 1073741824, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process (in bytes).\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--native-engine-visualize-to=", + "config_key": "native_engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--native-engine-visualize-to=" + ], + "env_var": "PANTS_NATIVE_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": 32, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported. \n\nDefaults to half the number of cores on your machine.\n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cache", + "config_key": "process_execution_local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cleanup", + "config_key": "process_execution_local_cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cleanup" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": 64, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nDefaults to the number of cores on your machine.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to --remote-execution-address and --remote-store-address.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to --remote-execution-address and --remote-store-address.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is AuthPluginState.UNAVAILABLE, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "first_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "Whether to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "first_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets. This only sets the naming scheme, not the directory paths to look for. To add ignorepatterns, use the option `--build-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files. This does not affect any other filesystem operations; use `--pants-ignore` for that instead. Patterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See (https://www.pantsbuild.org/v2.5/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants run use color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line,from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See (https://www.pantsbuild.org/v2.5/docs/advanced-target-selection).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected. Alpha feature.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-pants-warnings=\"['', '', ...]\"", + "config_key": "ignore_pants_warnings", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.6.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--ignore-pants-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_PANTS_WARNINGS", + "help": "Regexps matching warning strings to ignore, e.g. [\"DEPRECATED: the option `--my-opt` will be removed\"]. The regex patterns will be matched from the start of the warning string, and are case-insensitive.", + "removal_hint": "Use the global option `--ignore-warnings` instead.\n\nUnlike this option, `--ignore-warnings` uses literal string matches instead of regex patterns by default. If you would still like to use a regex pattern, prefix the string with `$regex$`.", + "removal_version": "2.6.0.dev0", + "scoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-pants-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\nSee (https://www.pantsbuild.org/v2.5/docs/anonymous-telemetry) for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\nSee (https://www.pantsbuild.org/v2.5/docs/anonymous-telemetry) for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "scope": "anonymous-telemetry" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.6.2,<1.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.6.2,<1.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45", + "stevedore<3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45", + "stevedore<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==20.8b1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==20.8b1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee (https://www.pantsbuild.org/v2.5/docs/advanced-target-selection).", + "is_goal": false, + "scope": "changed" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.0.3,<5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.0.3,<5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.\n\nTo use a TOML config file, you should add the `toml` library to `[pytest].pytest_plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules to use in the coverage report, e.g. `['helloworld_test', 'helloworld.util.dirutil'].\n\nThe modules are recursive: any submodules will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees, instead of only direct dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "text", + "json" + ], + "comma_separated_choices": "text, json", + "comma_separated_display_args": "--dependees-output-format=", + "config_key": "output_format", + "default": "text", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-format=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FORMAT", + "help": "Use `text` for a flattened list of target addresses; use `json` for each key to be the address of one of the specified targets, with its value being a list of that target's dependees, e.g. `{':example': [':dep1', ':dep2']}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-format" + ], + "typ": "DependeesOutputFormat", + "unscoped_cmd_line_args": [ + "--output-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "text" + } + ] + } + } + ], + "deprecated": [], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "source", + "3rdparty", + "source-and-3rdparty" + ], + "comma_separated_choices": "source, 3rdparty, source-and-3rdparty", + "comma_separated_display_args": "--dependencies-type=", + "config_key": "type", + "default": "source", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-type=" + ], + "env_var": "PANTS_DEPENDENCIES_TYPE", + "help": "Which types of dependencies to list, where `source` means source code dependencies and `3rdparty` means third-party requirement strings.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-type" + ], + "typ": "DependencyType", + "unscoped_cmd_line_args": [ + "--type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "source" + } + ] + } + } + ], + "deprecated": [], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.42", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.42" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.42|darwin|69d6b1b1009b00dd14a3a9f19b72cff818a713ca44b3186c9b12074b2a31e51f|3613838", + "v2.1.42|linux|69d6b1b1009b00dd14a3a9f19b72cff818a713ca44b3186c9b12074b2a31e51f|3613838" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.42|darwin|69d6b1b1009b00dd14a3a9f19b72cff818a713ca44b3186c9b12074b2a31e51f|3613838", + "v2.1.42|linux|69d6b1b1009b00dd14a3a9f19b72cff818a713ca44b3186c9b12074b2a31e51f|3613838" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_library`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.7.9,<3.9", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.7.9,<3.9" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "Rather than formatting all files in a single batch, format each file as a separate process.\n\nWhy 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "grpc_python_plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "macos", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "macos", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "scope": "grpc_python_plugin" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject]>=5.5.1,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject]>=5.5.1,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://timothycrosley.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into AWS Lambdas (https://github.com/wickman/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process.\n\nWhy do this? You'll get many more cache hits. Why not do this? Linters 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-reports-dir=", + "config_key": "reports_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lint-reports-dir=" + ], + "env_var": "PANTS_LINT_REPORTS_DIR", + "help": "Specifying a directory causes linters that support writing report files to write into this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-reports-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--reports-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-provides", + "config_key": "provides", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-provides" + ], + "env_var": "PANTS_LIST_PROVIDES", + "help": "List only targets that provide an artifact, displaying the columns specified by --provides-columns.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-provides", + "--no-list-provides" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--provides", + "--no-provides" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.812", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.812" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 typecheck`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": [ + "python", + "python3", + "python2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python-setup]` to influence where interpreters are searched for.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-bootstrap-interpreter-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--bootstrap-interpreter-names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3", + "python2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "osx", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "osx", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.4.4,<2.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.4.4,<2.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See (https://www.pantsbuild.org/v2.5/docs/source-roots)\n\nYou must also set `load-plugins=$module_name` in your Pylint config file, and set the `[pylint].config` option in `pants.toml`.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.0.1,<6.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for Pytest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.0.1,<6.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-pytest-plugins=\"['', '', ...]\"", + "config_key": "pytest_plugins", + "default": [ + "pytest-cov>=2.10.1,<2.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-pytest-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_PYTEST_PLUGINS", + "help": "Requirement strings for any plugins or additional requirements you'd like to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-pytest-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pytest-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.10.1,<2.12" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-xml-dir=", + "config_key": "junit_xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-xml-dir=" + ], + "env_var": "PANTS_PYTEST_JUNIT_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of the generated XML file. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-config=", + "config_key": "config", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.6.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pytest-config=" + ], + "env_var": "PANTS_PYTEST_CONFIG", + "help": "Path to pytest.ini or alternative Pytest config file.", + "removal_hint": "Pants now auto-discovers config files, so there is no need to set `[pytest].config` if `[pytest].config_discovery` is enabled (the default).", + "removal_version": "2.6.0.dev0", + "scoped_cmd_line_args": [ + "--pytest-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any __init__.py files existing for the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor __init__.py files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on binary targets' entry points, e.g. `pex_binary`'s `entry_point` field and `python_awslambda`'s `handler` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.\n\nSee (https://www.pantsbuild.org/v2.5/docs/protobuf).", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-protobuf.mypy-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-version=", + "config_key": "version", + "default": "mypy-protobuf==2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-version=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-mypy-plugin", + "--no-python-protobuf-mypy-plugin-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration of the mypy-protobuf type stub generation plugin for the Protobuf Python backend.", + "is_goal": false, + "scope": "python-protobuf.mypy-plugin" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements, use this constraints file to determine which versions to use.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nMutually exclusive with `--requirement-constraints-target`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints-target=", + "config_key": "requirement_constraints_target", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints-target=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS_TARGET", + "help": "When resolving third-party requirements, use this _python_constraints target to determine which versions to use.\n\nThis is primarily intended for macros (for now). Normally, use `--requirement-constraints` instead with a constraints file.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraints and how constraints are applied in Pex and pip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints-target" + ], + "typ": "target_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "never", + "nondeployables", + "always", + "True", + "False" + ], + "comma_separated_choices": "never, nondeployables, always, True, False", + "comma_separated_display_args": "--python-setup-resolve-all-constraints=", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolve-all-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.\n\nRequires [python-setup].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolve-all-constraints" + ], + "typ": "parse", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints. You can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter. The following special strings are supported:\n\n* \"\", the contents of the PATH env var\n* \"\", all Python versions under $(pyenv root)/versions\n* \"\", the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* \"\", paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": 32, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with.\n\nBecause Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-setup-resolver-jobs`. \n\nSetting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.\n\nDefaults to half the cores on your machine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for Pants's Python support.", + "is_goal": false, + "scope": "python-setup" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_goal": true, + "scope": "run" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "2.12.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.12.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<57.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<57.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.37" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.37" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The Python setuptools library (https://github.com/pypa/setuptools).", + "is_goal": false, + "scope": "setuptools" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for Pants's Shell support.", + "is_goal": false, + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.7.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.7.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.7.1|darwin|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.7.1|darwin|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.x86_64.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.x86_64.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "darwin", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "darwin", + "linux": "linux" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "Don't use Shellcheck when running `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A linter for shell scripts.", + "is_goal": false, + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|darwin|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|darwin|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}_amd64", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}_amd64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "darwin", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "darwin", + "linux": "linux" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "Don't use shfmt when running `./pants fmt` and `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See (https://www.pantsbuild.org/v2.5/docs/source-roots)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "\nConfig schema is as follows:\n\n{\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ],\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n }\n}\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "scope": "tailor" + }, + "test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checkers.", + "is_goal": true, + "scope": "typecheck" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + } + } +} diff --git a/versioned_docs/version-2.6.x/reference/help-all.json b/versioned_docs/version-2.6.x/reference/help-all.json new file mode 100644 index 000000000..d77a68cc9 --- /dev/null +++ b/versioned_docs/version-2.6.x/reference/help-all.json @@ -0,0 +1,12434 @@ +{ + "name_to_goal_info": { + "count-loc": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "scc", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen" + }, + "filedeps": { + "consumed_scopes": [ + "", + "download-pex-bin", + "filedeps", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "black", + "docformatter", + "download-pex-bin", + "fmt", + "grpc_python_plugin", + "isort", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "shfmt", + "source", + "subprocess-environment" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "lint": { + "consumed_scopes": [ + "", + "bandit", + "black", + "docformatter", + "download-pex-bin", + "flake8", + "grpc_python_plugin", + "isort", + "lint", + "pex", + "protoc", + "pylint", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "shfmt", + "source", + "subprocess-environment" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "py-constraints", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "ipython", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "repl", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "run", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_implemented": true, + "name": "run" + }, + "tailor": { + "consumed_scopes": [ + "", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor" + }, + "test": { + "consumed_scopes": [ + "", + "coverage-py", + "download-pex-bin", + "grpc_python_plugin", + "lambdex", + "pex", + "pex-binary-defaults", + "protoc", + "pytest", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "mypy", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Run type checkers.", + "is_implemented": true, + "name": "typecheck" + }, + "validate": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc_python_plugin", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-protobuf.mypy-plugin", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "sourcefile-validation", + "subprocess-environment", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `files` or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `files` or `relocated_files` targets. If you instead want those files included in any packages specified in the `packages` field for this target, then use a `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "files": { + "alias": "files", + "description": "Loose files that live outside code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `files` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repo root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Loose files that live outside code packages." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.6/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.6/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "The entry point for the binary, i.e. what gets run when executing `./my_binary.pex`.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nTo leave off an entry point, set to ''.", + "required": true, + "type_hint": "str" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThis defaults to the current platform, but can be overridden to different platforms. You can give a list of multiple platforms to create a multiplatform PEX.\n\nTo use wheels for specific interpreter/platform tags, you can append them to the platform with hyphens like: PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\", \"pp\", \"jp\".\n - PYVER: a two-digit string representing the Python version, e.g. \"27\", \"36\".\n - ABI: the ABI tag, e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\".", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "zip_safe", + "default": "True", + "description": "Whether or not this binary is safe to run in compacted (zip-file) form.\n\nIf the PEX is not zip safe, it will be written to disk prior to execution. You may need to mark `zip_safe=False` if you're having issues loading your code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "always_write_cache", + "default": "False", + "description": "Whether PEX should always write the .deps cache of the .pex file to disk or not. This can use less memory in RAM-constrained environments.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/). In general, faster cold start times can be attained using the 'unzip' mode which also has the benefit of allowing standard use of `__file__` and filesystem APIs to access code and resources in the PEX.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "required": false, + "type_hint": "'unzip' | 'venv' | 'zipapp' | None" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_library": { + "alias": "protobuf_library", + "description": "Protobuf files used to generate various languages.\n\nSee fhttps://www.pantsbuild.org/v2.6/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.6/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the protobuf_library is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Protobuf files used to generate various languages." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.6/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.6/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.6/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "setup_py_commands", + "default": null, + "description": "The runtime commands to invoke setup.py with to create the distribution, e.g. [\"bdist_wheel\", \"--python-tag=py36.py37\", \"sdist\"].\n\nIf empty or unspecified, will just create a chroot with a setup() function.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_library": { + "alias": "python_library", + "description": "Python source code.\n\nA `python_library` does not necessarily correspond to a distribution you publish (see `python_distribution` and `pex_binary` for that); multiple `python_library` targets may be packaged into a distribution or binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.6/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Python source code." + }, + "python_requirement_library": { + "alias": "python_requirement_library", + "description": "Python requirements installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the macro `python_requirements()` to convert each requirement into a `python_requirement_library()` target automatically.\n\nSee https://www.pantsbuild.org/v2.6/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A sequence of pip-style requirement strings, e.g. `['foo==1.8', \"bar<=3 ; python_version<'3'\"]`.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "module_mapping", + "default": null, + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use the requirement name as the default module, e.g. \"Django\" will default to `[\"django\"]`.\n\nThis is used to infer dependencies.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "type_stubs_module_mapping", + "default": null, + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ it starts with `types-` or ends with `-types`, the requirement will be treated as a type stub for the corresponding module, e.g. \"types-request\" has the module \"requests\". Otherwise, the requirement is treated like a normal dependency (see the field module_mapping).\n\nThis is used to infer dependencies for type stubs.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + } + ], + "summary": "Python requirements installable by pip." + }, + "python_tests": { + "alias": "python_tests", + "description": "Python tests, written in either Pytest style or unittest style.\n\nAll test util code, other than `conftest.py`, should go into a dedicated `python_library()` target and then be included in the `dependencies` field.\n\nSee https://www.pantsbuild.org/v2.6/docs/python-test-goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.6/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py', 'conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nThis only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Python tests, written in either Pytest style or unittest style." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n file_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `files()` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resources": { + "alias": "resources", + "description": "Data embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's pkgutil or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Data embedded in a code package and accessed in a location-independent manner." + }, + "shell_library": { + "alias": "shell_library", + "description": "Bourne-based shell scripts, e.g. Bash scripts.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Bourne-based shell scripts, e.g. Bash scripts." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Tests of Bourne-based shell scripts using the shUnit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target. If unset, the test will never time out.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Tests of Bourne-based shell scripts using the shUnit2 test framework." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.pylint" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.6.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/v2.6/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.6.1" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.6.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-supportdir=", + "config_key": "pants_supportdir", + "default": "/tmp/tmp.MpwSc5OGVo/build-support", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-supportdir=" + ], + "env_var": "PANTS_SUPPORTDIR", + "help": "Unused. Will be deprecated in 2.2.0.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-supportdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-supportdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--native-engine-visualize-to=", + "config_key": "native_engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--native-engine-visualize-to=" + ], + "env_var": "PANTS_NATIVE_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported. \n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cache", + "config_key": "process_execution_local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cleanup", + "config_key": "process_execution_local_cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cleanup" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": { + "user-agent": "pants/2.6.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.6.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "first_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "Whether to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "first_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": { + "user-agent": "pants/2.6.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.6.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets. This only sets the naming scheme, not the directory paths to look for. To add ignorepatterns, use the option `--build-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files. This does not affect any other filesystem operations; use `--pants-ignore` for that instead. Patterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.6/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants run use color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.6/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected. Alpha feature.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\nSee https://www.pantsbuild.org/v2.6/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\nSee https://www.pantsbuild.org/v2.6/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "scope": "anonymous-telemetry" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'", + "stevedore<3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'", + "stevedore<3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==21.5b2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==21.5b2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.6/docs/advanced-target-selection.", + "is_goal": false, + "scope": "changed" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.0.3,<5.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.0.3,<5.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.\n\nTo use a TOML config file, you should add the `toml` library to `[pytest].pytest_plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules to use in the coverage report, e.g. `['helloworld_test', 'helloworld.util.dirutil'].\n\nThe modules are recursive: any submodules will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees, instead of only direct dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "text", + "json" + ], + "comma_separated_choices": "text, json", + "comma_separated_display_args": "--dependees-output-format=", + "config_key": "output_format", + "default": "text", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-format=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FORMAT", + "help": "Use `text` for a flattened list of target addresses; use `json` for each key to be the address of one of the specified targets, with its value being a list of that target's dependees, e.g. `{':example': [':dep1', ':dep2']}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-format" + ], + "typ": "DependeesOutputFormat", + "unscoped_cmd_line_args": [ + "--output-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "text" + } + ] + } + } + ], + "deprecated": [], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "source", + "3rdparty", + "source-and-3rdparty" + ], + "comma_separated_choices": "source, 3rdparty, source-and-3rdparty", + "comma_separated_display_args": "--dependencies-type=", + "config_key": "type", + "default": "source", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-type=" + ], + "env_var": "PANTS_DEPENDENCIES_TYPE", + "help": "Which types of dependencies to list, where `source` means source code dependencies and `3rdparty` means third-party requirement strings.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-type" + ], + "typ": "DependencyType", + "unscoped_cmd_line_args": [ + "--type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "source" + } + ] + } + } + ], + "deprecated": [], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.42", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.42" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.42|darwin|69d6b1b1009b00dd14a3a9f19b72cff818a713ca44b3186c9b12074b2a31e51f|3613838", + "v2.1.42|linux|69d6b1b1009b00dd14a3a9f19b72cff818a713ca44b3186c9b12074b2a31e51f|3613838" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.42|darwin|69d6b1b1009b00dd14a3a9f19b72cff818a713ca44b3186c9b12074b2a31e51f|3613838", + "v2.1.42|linux|69d6b1b1009b00dd14a3a9f19b72cff818a713ca44b3186c9b12074b2a31e51f|3613838" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_library`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.9.2,<4.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.9.2,<4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools<45; python_full_version == '2.7.*'", + "setuptools; python_version > '2.7'" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "Rather than formatting all files in a single batch, format each file as a separate process.\n\nWhy 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "grpc_python_plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|darwin|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux |1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "macos", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "macos", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "scope": "grpc_python_plugin" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject]>=5.5.1,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject]>=5.5.1,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://timothycrosley.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into AWS Lambdas (https://github.com/wickman/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process.\n\nWhy do this? You'll get many more cache hits. Why not do this? Linters 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lint-reports-dir=", + "config_key": "reports_dir", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.7.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--lint-reports-dir=" + ], + "env_var": "PANTS_LINT_REPORTS_DIR", + "help": "Specifying a directory causes linters that support writing report files to write into this directory.", + "removal_hint": "Edit the config file for the linter in question, or set its args via Pants options, to cause it to write reports under freports .", + "removal_version": "2.7.0.dev0", + "scoped_cmd_line_args": [ + "--lint-reports-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--reports-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-provides", + "config_key": "provides", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-provides" + ], + "env_var": "PANTS_LIST_PROVIDES", + "help": "List only targets that provide an artifact.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-provides", + "--no-list-provides" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--provides", + "--no-provides" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.910", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.910" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 typecheck`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": [ + "python", + "python3", + "python2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python-setup]` to influence where interpreters are searched for.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-bootstrap-interpreter-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--bootstrap-interpreter-names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3", + "python2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|darwin|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|linux |6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}-x86_64.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "osx", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "osx", + "linux": "linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.6.2,<2.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.6.2,<2.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.6/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file, and set the `[pylint].config` option in `pants.toml`.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.0.1,<6.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for Pytest.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.0.1,<6.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-pytest-plugins=\"['', '', ...]\"", + "config_key": "pytest_plugins", + "default": [ + "pytest-cov>=2.10.1,<2.12" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-pytest-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_PYTEST_PLUGINS", + "help": "Requirement strings for any plugins or additional requirements you'd like to use.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-pytest-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pytest-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.10.1,<2.12" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-xml-dir=", + "config_key": "junit_xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-xml-dir=" + ], + "env_var": "PANTS_PYTEST_JUNIT_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of the generated XML file. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any __init__.py files existing for the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor __init__.py files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on binary targets' entry points, e.g. `pex_binary`'s `entry_point` field and `python_awslambda`'s `handler` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.6/docs/protobuf.", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-protobuf.mypy-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-version=", + "config_key": "version", + "default": "mypy-protobuf==2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-version=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-mypy-plugin", + "--no-python-protobuf-mypy-plugin-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration of the mypy-protobuf type stub generation plugin for the Protobuf Python backend.", + "is_goal": false, + "scope": "python-protobuf.mypy-plugin" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when telling MyPy which version to run with which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python-setup].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.6/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements, use this constraints file to determine which versions to use.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nMutually exclusive with `--requirement-constraints-target`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.\n\nRequires [python-setup].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolve-all-constraints", + "--no-python-setup-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints. You can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter. The following special strings are supported:\n\n* \"\", the contents of the PATH env var\n* \"\", all Python versions under $(pyenv root)/versions\n* \"\", the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* \"\", paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": "#cores/2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with.\n\nBecause Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-setup-resolver-jobs`. \n\nSetting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for Pants's Python support.", + "is_goal": false, + "scope": "python-setup" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_goal": true, + "scope": "run" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "2.12.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.12.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.12.0|darwin|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-x86_64-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "apple-darwin", + "linux": "unknown-linux" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<57.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<57.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.37" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.37" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The Python setuptools library (https://github.com/pypa/setuptools).", + "is_goal": false, + "scope": "setuptools" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for Pants's Shell support.", + "is_goal": false, + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.7.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.7.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.7.1|darwin|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.7.1|darwin|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.x86_64.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.x86_64.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "darwin", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "darwin", + "linux": "linux" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "Don't use Shellcheck when running `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A linter for shell scripts.", + "is_goal": false, + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|darwin|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [darwin,linux],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|darwin|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|darwin|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}_amd64", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}_amd64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "darwin": "darwin", + "linux": "linux" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"darwin\": \"apple-darwin\", \"linux\": \"unknown-linux\"}, and run Pants on Linux, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "darwin": "darwin", + "linux": "linux" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "Don't use shfmt when running `./pants fmt` and `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.6/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "\nConfig schema is as follows:\n\n{\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ],\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n }\n}\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.6/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "scope": "tailor" + }, + "test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checkers.", + "is_goal": true, + "scope": "typecheck" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + } + } +} diff --git a/versioned_docs/version-2.7.x/reference/help-all.json b/versioned_docs/version-2.7.x/reference/help-all.json new file mode 100644 index 000000000..9c6246ffd --- /dev/null +++ b/versioned_docs/version-2.7.x/reference/help-all.json @@ -0,0 +1,14773 @@ +{ + "name_to_goal_info": { + "count-loc": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc-python-plugin", + "mypy-protobuf", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "scc", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees", + "download-pex-bin", + "grpc-python-plugin", + "mypy-protobuf", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies", + "download-pex-bin", + "grpc-python-plugin", + "mypy-protobuf", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "export-codegen": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc-python-plugin", + "mypy-protobuf", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen" + }, + "filedeps": { + "consumed_scopes": [ + "", + "download-pex-bin", + "filedeps", + "grpc-python-plugin", + "mypy-protobuf", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "black", + "docformatter", + "download-pex-bin", + "fmt", + "grpc-python-plugin", + "isort", + "mypy-protobuf", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "shfmt", + "source", + "subprocess-environment", + "yapf" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "", + "bandit", + "black", + "coverage-py", + "docformatter", + "download-pex-bin", + "flake8", + "generate-lockfiles", + "grpc-python-plugin", + "ipython", + "isort", + "lambdex", + "mypy", + "mypy-protobuf", + "pex", + "poetry", + "protoc", + "pylint", + "pytest", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setuptools", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment", + "yapf" + ], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles" + }, + "generate-user-lockfile": { + "consumed_scopes": [ + "", + "download-pex-bin", + "generate-lockfiles", + "grpc-python-plugin", + "mypy-protobuf", + "pex", + "poetry", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Generate a lockfile for Python user requirements (experimental).", + "is_implemented": true, + "name": "generate-user-lockfile" + }, + "lint": { + "consumed_scopes": [ + "", + "bandit", + "black", + "docformatter", + "download-pex-bin", + "flake8", + "grpc-python-plugin", + "isort", + "lint", + "mypy-protobuf", + "pex", + "protoc", + "pylint", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "shfmt", + "source", + "subprocess-environment", + "yapf" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc-python-plugin", + "lambdex", + "mypy-protobuf", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "peek": { + "consumed_scopes": [ + "", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc-python-plugin", + "mypy-protobuf", + "pex", + "protoc", + "py-constraints", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc-python-plugin", + "ipython", + "mypy-protobuf", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "repl", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc-python-plugin", + "mypy-protobuf", + "pex", + "pex-binary-defaults", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "run", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_implemented": true, + "name": "run" + }, + "tailor": { + "consumed_scopes": [ + "", + "python-setup", + "source", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor" + }, + "test": { + "consumed_scopes": [ + "", + "coverage-py", + "download-pex-bin", + "grpc-python-plugin", + "lambdex", + "mypy-protobuf", + "pex", + "pex-binary-defaults", + "protoc", + "pytest", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "setup-py-generation", + "setuptools", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc-python-plugin", + "mypy", + "mypy-protobuf", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "subprocess-environment" + ], + "description": "Run type checkers.", + "is_implemented": true, + "name": "typecheck" + }, + "validate": { + "consumed_scopes": [ + "", + "download-pex-bin", + "grpc-python-plugin", + "mypy-protobuf", + "pex", + "protoc", + "python-infer", + "python-native-code", + "python-protobuf", + "python-repos", + "python-setup", + "shell-setup", + "shellcheck", + "source", + "sourcefile-validation", + "subprocess-environment", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `files` or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `files` or `relocated_files` targets. If you instead want those files included in any packages specified in the `packages` field for this target, then use a `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "docker_image": { + "alias": "docker_image", + "description": "A Docker image.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('Dockerfile',)", + "description": "The Dockerfile to use when building the Docker image.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "version", + "default": "'latest'", + "description": "Image tag to apply to built images.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "A Docker image." + }, + "files": { + "alias": "files", + "description": "Loose files that live outside code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `files` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repo root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Loose files that live outside code packages." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.7/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.7/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "The entry point for the binary, i.e. what gets run when executing `./my_binary.pex`.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nTo leave off an entry point, set to ''.", + "required": true, + "type_hint": "str" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThis defaults to the current platform, but can be overridden to different platforms. There must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\", \"pp\", \"jp\".\n - PYVER: a two-digit string representing the Python version, e.g. \"27\", \"36\".\n - ABI: the ABI tag, e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\".", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.\n\nThe 'unzip' mode is deprecated since the default 'zipapp' mode now executes this way.", + "required": false, + "type_hint": "'unzip' | 'venv' | 'zipapp' | None" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_library": { + "alias": "protobuf_library", + "description": "Protobuf files used to generate various languages.\n\nSee fhttps://www.pantsbuild.org/v2.7/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.7/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the protobuf_library is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Protobuf files used to generate various languages." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.7/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.7/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\nExample:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n ./pants dependencies \n\n", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.7/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "setup_py_commands", + "default": null, + "description": "The runtime commands to invoke setup.py with to create the distribution, e.g. [\"bdist_wheel\", \"--python-tag=py36.py37\", \"sdist\"].\n\nIf empty or unspecified, will just create a chroot with a setup() function.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_library": { + "alias": "python_library", + "description": "Python source code.\n\nA `python_library` does not necessarily correspond to a distribution you publish (see `python_distribution` and `pex_binary` for that); multiple `python_library` targets may be packaged into a distribution or binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.7/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Python source code." + }, + "python_requirement_library": { + "alias": "python_requirement_library", + "description": "Python requirements installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the macro `python_requirements()` to convert each requirement into a `python_requirement_library()` target automatically.\n\nSee https://www.pantsbuild.org/v2.7/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A sequence of pip-style requirement strings, e.g. `['foo==1.8', \"bar<=3 ; python_version<'3'\"]`.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of requirement names to a list of the modules they provide.\n\nFor example, `{\"ansicolors\": [\"colors\"]}`.\n\nAny unspecified requirements will use the requirement name as the default module, e.g. \"Django\" will default to `[\"django\"]`.\n\nThis is used to infer dependencies.", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + }, + { + "alias": "type_stubs_module_mapping", + "default": "FrozenDict({})", + "description": "A mapping of type-stub requirement names to a list of the modules they provide.\n\nFor example, `{\"types-requests\": [\"requests\"]}`.\n\nIf the requirement is not specified _and_ it starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, the requirement will be treated as a type stub for the corresponding module, e.g. \"types-request\" has the module \"requests\". Otherwise, the requirement is treated like a normal dependency (see the field module_mapping).\n\nThis is used to infer dependencies for type stubs.", + "required": false, + "type_hint": "Dict[str, Iterable[str]]" + } + ], + "summary": "Python requirements installable by pip." + }, + "python_tests": { + "alias": "python_tests", + "description": "Python tests, written in either Pytest style or unittest style.\n\nAll test util code, other than `conftest.py`, should go into a dedicated `python_library()` target and then be included in the `dependencies` field.\n\nSee https://www.pantsbuild.org/v2.7/docs/python-test-goal.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python-setup].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.7/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py', 'conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nThis only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Python tests, written in either Pytest style or unittest style." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n file_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n file_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `files()` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resources": { + "alias": "resources", + "description": "Data embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's pkgutil or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Data embedded in a code package and accessed in a location-independent manner." + }, + "shell_library": { + "alias": "shell_library", + "description": "Bourne-based shell scripts, e.g. Bash scripts.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Bourne-based shell scripts, e.g. Bash scripts." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Tests of Bourne-based shell scripts using the shUnit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.py', 'test_*.py', '!test_ignore.py']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target. If unset, the test will never time out.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Tests of Bourne-based shell scripts using the shUnit2 test framework." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.python", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.experimental.python", + "pants.backend.experimental.docker", + "pants.backend.codegen.protobuf.python", + "pants.backend.awslambda.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/v2.7/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.7.2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-supportdir=", + "config_key": "pants_supportdir", + "default": "/tmp/tmp.MpwSc5OGVo/build-support", + "deprecated_message": "Upcoming deprecation in version: 2.8.0.dev0, will be removed in version: 2.9.0.dev0.", + "deprecation_active": false, + "display_args": [ + "--pants-supportdir=" + ], + "env_var": "PANTS_SUPPORTDIR", + "help": "Used only for templating in `pants.toml`.", + "removal_hint": "Unused: this option has no necessary equivalent in v2.", + "removal_version": "2.9.0.dev0", + "scoped_cmd_line_args": [ + "--pants-supportdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-supportdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported. \n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cache", + "config_key": "process_execution_local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cleanup", + "config_key": "process_execution_local_cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cleanup" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run the requests that are marked as nailgunnable.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": { + "user-agent": "pants/2.7.2" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.7.2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "first_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "Whether to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "first_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": { + "user-agent": "pants/2.7.2" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.7.2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets. This only sets the naming scheme, not the directory paths to look for. To add ignorepatterns, use the option `--build-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files. This does not affect any other filesystem operations; use `--pants-ignore` for that instead. Patterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.7/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.7/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--native-engine-visualize-to=", + "config_key": "native_engine_visualize_to", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.8.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--native-engine-visualize-to=" + ], + "env_var": "PANTS_NATIVE_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": "Use `--engine-visualize-to` instead.", + "removal_version": "2.8.0.dev0", + "scoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--native-engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\nSee https://www.pantsbuild.org/v2.7/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\nSee https://www.pantsbuild.org/v2.7/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "scope": "anonymous-telemetry" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython==3.1.18" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython==3.1.18" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/lint/bandit/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=bandit`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==21.5b2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==21.5b2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6.2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6.2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/lint/black/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=black`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.7/docs/advanced-target-selection.", + "is_goal": false, + "scope": "changed" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.5,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.5,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/subsystems/coverage_py_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=coverage-py`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil'].\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees, instead of only direct dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "text", + "json" + ], + "comma_separated_choices": "text, json", + "comma_separated_display_args": "--dependees-output-format=", + "config_key": "output_format", + "default": "text", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-format=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FORMAT", + "help": "Use `text` for a flattened list of target addresses; use `json` for each key to be the address of one of the specified targets, with its value being a list of that target's dependees, e.g. `{':example': [':dep1', ':dep2']}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-format" + ], + "typ": "DependeesOutputFormat", + "unscoped_cmd_line_args": [ + "--output-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "text" + } + ] + } + } + ], + "deprecated": [], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "source", + "3rdparty", + "source-and-3rdparty" + ], + "comma_separated_choices": "source, 3rdparty, source-and-3rdparty", + "comma_separated_display_args": "--dependencies-type=", + "config_key": "type", + "default": "source", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-type=" + ], + "env_var": "PANTS_DEPENDENCIES_TYPE", + "help": "Which types of dependencies to list, where `source` means source code dependencies and `3rdparty` means third-party requirement strings.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-type" + ], + "typ": "DependencyType", + "unscoped_cmd_line_args": [ + "--type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "source" + } + ] + } + } + ], + "deprecated": [], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/lint/docformatter/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=docformatter`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.54", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.51,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.54" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.54|macos_arm64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238", + "v2.1.54|macos_x86_64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238", + "v2.1.54|linux_x86_64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.54|macos_arm64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238", + "v2.1.54|macos_x86_64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238", + "v2.1.54|linux_x86_64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-pex-bin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.51,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_library`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.9.2,<4.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.9.2,<4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/lint/flake8/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=flake8`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "Rather than formatting all files in a single batch, format each file as a separate process.\n\nWhy 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `./pants generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nFor now, resolves are the options scope for each Python tool that supports lockfiles, such as `black`, `pytest`, and `mypy-protobuf`. For example, you can run `./pants generate-lockfiles --resolve=black --resolve=pytest` to only generate the lockfile for those two tools.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_goal": true, + "scope": "generate-lockfiles" + }, + "generate-user-lockfile": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Generate a lockfile for Python user requirements (experimental).", + "is_goal": true, + "scope": "generate-user-lockfile" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux", + "macos_arm64": "macos", + "macos_x86_64": "macos" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux", + "macos_arm64": "macos", + "macos_x86_64": "macos" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "scope": "grpc-python-plugin" + }, + "grpc_python_plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc_python_plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/x86_64/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux", + "macos_arm64": "macos", + "macos_x86_64": "macos" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc_python_plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc_python_plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux", + "macos_arm64": "macos", + "macos_x86_64": "macos" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "scope": "grpc_python_plugin" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/subsystems/ipython_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=ipython`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.5.1,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.5.1,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/lint/isort/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=isort`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://timothycrosley.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/awslambda/python/lambdex_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=lambdex`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into AWS Lambdas (https://github.com/wickman/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process.\n\nWhy do this? You'll get many more cache hits. Why not do this? Linters 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-provides", + "config_key": "provides", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-provides" + ], + "env_var": "PANTS_LIST_PROVIDES", + "help": "List only targets that provide an artifact.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-provides", + "--no-list-provides" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--provides", + "--no-provides" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.910", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.910" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/typecheck/mypy/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=mypy`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement_library` target.Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 typecheck`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=mypy-protobuf`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "scope": "mypy-protobuf" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "raw", + "json" + ], + "comma_separated_choices": "raw, json", + "comma_separated_display_args": "--peek-output=", + "config_key": "output", + "default": "json", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output=" + ], + "env_var": "PANTS_PEEK_OUTPUT", + "help": "Which output style peek should use: `json` will show each target as a seperate entry, whereas `raw` will simply show the original non-normalized BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output" + ], + "typ": "OutputOptions", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "json" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "help": "Whether to leave off values that match the target-defined default values when using `json` output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Display BUILD target info", + "is_goal": true, + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": [ + "python", + "python3", + "python2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python-setup]` to influence where interpreters are searched for.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-bootstrap-interpreter-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--bootstrap-interpreter-names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3", + "python2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "poetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-version=", + "config_key": "version", + "default": "poetry==1.1.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-version=" + ], + "env_var": "PANTS_POETRY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "poetry==1.1.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Used to generate lockfiles for third-party Python dependencies.", + "is_goal": false, + "scope": "poetry" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.6.2,<2.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.6.2,<2.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/lint/pylint/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pylint`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_library` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.7/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.2.4,<6.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.2.4,<6.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/subsystems/pytest_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pytest`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-xml-dir=", + "config_key": "junit_xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-xml-dir=" + ], + "env_var": "PANTS_PYTEST_JUNIT_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of the generated XML file. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-pytest-plugins=\"['', '', ...]\"", + "config_key": "pytest_plugins", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ], + "deprecated_message": "Deprecated, will be removed in version: 2.8.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pytest-pytest-plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_PYTEST_PLUGINS", + "help": "Requirement strings for any plugins or additional requirements you'd like to use.", + "removal_hint": "Use `[pytest].extra_requirements` instead, which behaves the same. (The option is being renamed for uniformity with other Python tools.)", + "removal_version": "2.8.0.dev0", + "scoped_cmd_line_args": [ + "--pytest-pytest-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pytest-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ] + } + ] + } + } + ], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any __init__.py files existing for the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor __init__.py files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement_library` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_library` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.7/docs/protobuf.", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-protobuf.mypy-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-version=", + "config_key": "version", + "default": "mypy-protobuf==2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-version=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-mypy-plugin-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-mypy-plugin-lockfile=" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=mypy-protobuf`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "scope": "python-protobuf.mypy-plugin" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python-setup].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.7/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nMutually exclusive with `[python-setup].experimental_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.\n\nRequires [python-setup].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolve-all-constraints", + "--no-python-setup-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-experimental-lockfile=", + "config_key": "experimental_lockfile", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-experimental-lockfile=" + ], + "env_var": "PANTS_PYTHON_SETUP_EXPERIMENTAL_LOCKFILE", + "help": "The lockfile to use when resolving requirements for your own code (vs. tools you run).\n\nThis is highly experimental and will change, including adding support for multiple lockfiles. This option's behavior may change without the normal deprecation cycle.\n\nTo generate a lockfile, activate the backend `pants.backend.experimental.python`and run `./pants generate-user-lockfile ::`.\n\nMutually exclusive with `[python-setup].requirement_constraints`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-experimental-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--experimental-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-setup-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_SETUP_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints. You can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter. The following special strings are supported:\n\n* \"\", the contents of the PATH env var\n* \"\", all Python versions currently configured by ASDF (asdf shell, ${HOME}/.tool-versions), with a fallback to all installed versions\n* \"\", the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* \"\", all Python versions under $(pyenv root)/versions\n* \"\", the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* \"\", paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": "#cores/2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with.\n\nBecause Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-setup-resolver-jobs`. \n\nSetting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_SETUP_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "Don't tailor python_library targets for solitary __init__.py files, as those usually exist as import scaffolding rather than true library code.\n\nSet to False if you commonly have packages containing real code in __init__.py and there are no other .py files in the package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-tailor-ignore-solitary-init-files", + "--no-python-setup-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_SETUP_TAILOR_PEX_BINARY_TARGETS", + "help": "Tailor pex_binary() targets for Python entry point files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-tailor-pex-binary-targets", + "--no-python-setup-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for Pants's Python support.", + "is_goal": false, + "scope": "python-setup" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable. Run `echo $?` to inspect the resulting return code.", + "is_goal": true, + "scope": "run" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "2.12.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.12.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "2.12.0|macos_arm64 |70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|macos_x86_64|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux_x86_64|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.12.0|macos_arm64 |70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|macos_x86_64|70b7002cd1e4541cb37b7b9cbc0eeedd13ceacb49628e82ab46332bb2e65a5a6|1842530", + "2.12.0|linux_x86_64|8eca3e98fe8a78d417d3779a51724515ac4459760d3ec256295f80954a0da044|1753059" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of succinctcodecounter is not supported.\n\nSupported succinctcodecounter versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<58.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<58.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/subsystems/setuptools_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=setuptools`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "scope": "setuptools" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for Pants's Shell support.", + "is_goal": false, + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.7.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.7.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.7.1|macos_arm64 |b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|macos_x86_64|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux_x86_64|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.7.1|macos_arm64 |b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|macos_x86_64|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux_x86_64|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shellcheck is not supported.\n\nSupported shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "Don't use Shellcheck when running `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A linter for shell scripts.", + "is_goal": false, + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a file:// URL.\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "Don't use shfmt when running `./pants fmt` and `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.7/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "\nConfig schema is as follows:\n\n{\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ],\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n }\n}\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.7/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "scope": "tailor" + }, + "test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checkers.", + "is_goal": true, + "scope": "typecheck" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf==0.31.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf==0.31.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python-setup].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.7.2/src/python/pants/backend/python/lint/yapf/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=yapf`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python-setup].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "help": "Don't use yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args=\"--no-local-style\"`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.8.x/reference/help-all.json b/versioned_docs/version-2.8.x/reference/help-all.json new file mode 100644 index 000000000..fed914baf --- /dev/null +++ b/versioned_docs/version-2.8.x/reference/help-all.json @@ -0,0 +1,18662 @@ +{ + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check" + }, + "count-loc": { + "consumed_scopes": [ + "", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "coursier-resolve": { + "consumed_scopes": [ + "", + "coursier", + "coursier-resolve" + ], + "description": "Generate a lockfile by resolving JVM dependencies.", + "is_implemented": true, + "name": "coursier-resolve" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "export-codegen": { + "consumed_scopes": [ + "" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen" + }, + "filedeps": { + "consumed_scopes": [ + "", + "filedeps" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "", + "download-pex-bin", + "generate-lockfiles", + "pex", + "poetry", + "python", + "python-native-code", + "python-repos", + "subprocess-environment" + ], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles" + }, + "generate-user-lockfile": { + "consumed_scopes": [ + "", + "download-pex-bin", + "generate-lockfiles", + "pex", + "poetry", + "python", + "python-native-code", + "python-repos", + "subprocess-environment" + ], + "description": "Generate a lockfile for Python user requirements (experimental).", + "is_implemented": true, + "name": "generate-user-lockfile" + }, + "java-dump-first-party-dep-map": { + "consumed_scopes": [], + "description": "Dump dependency inference data for Java dep inference.", + "is_implemented": true, + "name": "java-dump-first-party-dep-map" + }, + "lint": { + "consumed_scopes": [ + "", + "lint" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "peek": { + "consumed_scopes": [ + "", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek" + }, + "publish": { + "consumed_scopes": [ + "", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run" + }, + "tailor": { + "consumed_scopes": [ + "", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor" + }, + "test": { + "consumed_scopes": [ + "", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.8/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files" + }, + "validate": { + "consumed_scopes": [ + "", + "sourcefile-validation", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "coursier_lockfile": { + "alias": "coursier_lockfile", + "description": "A Coursier lockfile along with references to the artifacts to use for the lockfile.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single Pants Coursier Lockfile source.\n\nUse `./pants coursier-resolve ...` to generate (or regenerate) the Lockfile. If the Lockfile doesn't exist on disk, the first run of `coursier-resolve` will attempt to generate it for you to the default file name ('coursier_resolve.lockfile'). After running `coursier-resolve` for the first time, you should update this field's`sources` to explicit take ownership of the generated lockfile.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "A Coursier lockfile along with references to the artifacts to use for the lockfile." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file that contains the compiled source code along with its dependency class files, where the compiled class files from all dependency JARs, along with first-party class files, exist in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A `jar` file that contains the compiled source code along with its dependency class files, where the compiled class files from all dependency JARs, along with first-party class files, exist in a common directory structure." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "Any tags to apply to the Docker image name (the version is usually applied as a tag).\n\nEach tag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile FROM instructions tags and build args.\n\nSee {doc_url('tagging-docker-images')}.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [docker].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker]\n registries = \"@registries.yaml\"\n\n # registries.yaml\n my-registry-alias:\n address = \"myregistrydomain:port\"\n default = False # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. \"/\".\n\nIt uses the `[docker].default_repository` by default.This field value may contain format strings that will be interpolated at runtime. See the documentation for `[docker].default_repository` for details.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this image to registries when running `./pants publish`.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_run_shell_command": { + "alias": "experimental_run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n experimental_run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `experimental_shell_command`, in addition to `workdir` you only have the `command` and `dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the current working directory of the command, relative to the project root.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "experimental_shell_command": { + "alias": "experimental_shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n experimental_shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n dependencies=[\":scripts\"],\n outputs=[\"results/\", \"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output from the command logged to the console.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "outputs", + "default": null, + "description": "Specify the shell command output files and directories.\n\nUse a trailing slash on directory names, i.e. `my_dir/`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": null, + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Execute any external tool for its side effects." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `file` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + } + ], + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_first_party_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_first_party_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A Go binary." + }, + "go_first_party_package": { + "alias": "go_first_party_package", + "description": "A Go package (corresponding to a directory with `.go` files).\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_first_party_package` targets for you.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "required": true, + "type_hint": "str" + }, + { + "alias": "subpath", + "default": null, + "description": "The path from the owning `go.mod` to this package's directory, e.g. `subdir`.\n\nThis field should not be overridden; use the value from target generation.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A Go package (corresponding to a directory with `.go` files)." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_first_party_package` targets for each directory from the `package_sources` field, and generates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "package_sources", + "default": "('**/*.go', '**/*.s')", + "description": "What sources to generate `go_first_party_package` targets for.\n\nPants will generate one target per matching directory.\n\nPants does not yet support some file types like `.c` and `.h` files, along with cgo files. If you need to use these files, please open a feature request at https://github.com/pantsbuild/pants/issues/new/choose so that we know to prioritize adding support.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A package from a third-party Go module." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "Represents a third-party JVM artifact as identified by its Maven-compatible coordinate, that is, its `group`, `artifact`, and `version` components.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party jar artifact. For the jar coordinate com.google.guava:guava:30.1.1-jre, the group is 'com.google.guava'.", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party jar artifact. For the jar coordinate com.google.guava:guava:30.1.1-jre, the artifact is 'guava'.", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party jar artifact. For the jar coordinate com.google.guava:guava:30.1.1-jre, the version is '30.1.1-jre'.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Represents a third-party JVM artifact as identified by its Maven-compatible coordinate, that is, its `group`, `artifact`, and `version` components." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.8/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_resolve", + "default": null, + "description": "The resolve from `[python].experimental_resolves_to_lockfiles` to use, if any.\n\nThis field is highly experimental and may change without the normal deprecation policy.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThis defaults to the current platform, but can be overridden to different platforms. There must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\", \"pp\", \"jp\".\n - PYVER: a two-digit string representing the Python version, e.g. \"27\", \"36\".\n - ABI: the ABI tag, e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\".", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.\n\nThe 'unzip' mode is deprecated since the default 'zipapp' mode now executes this way.", + "required": false, + "type_hint": "'unzip' | 'venv' | 'zipapp' | None" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee https://www.pantsbuild.org/v2.8/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `protobuf_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.proto\": {\"grpc\": True]},\n \"bar.proto\": {\"description\": \"our user model\"]},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.8/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.8/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\nExample:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n ./pants dependencies \n\n", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.8/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing setup.py, setup.cfg, pyproject.toml files or similar.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "pypi_repositories", + "default": null, + "description": "List of PyPi repositories to publish the target package to.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the macro `python_requirements()` to convert each requirement into a `python_requirement()` target automatically. For Poetry, use `poetry_requirements()`.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A Python requirement installable by pip." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_resolve", + "default": null, + "description": "The resolve from `[python].experimental_resolves_to_lockfiles` to use, if any.\n\nThis field is highly experimental and may change without the normal deprecation policy.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nThis only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py`, although it behaves identically to the `python_sources` target generator and you can safely use that instead. This target only exists to help you better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_resolve", + "default": null, + "description": "The resolve from `[python].experimental_resolves_to_lockfiles` to use, if any.\n\nThis field is highly experimental and may change without the normal deprecation policy.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nThis only applies if the option `--pytest-timeouts` is set to True.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.py\": {\"timeout\": 120]},\n \"bar_test.py\": {\"timeout\": 200]},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `resource` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + } + ], + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shell_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target. If unset, the test will never time out.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target. If unset, the test will never time out.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shunit2_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.sh\": {\"timeout\": 120]},\n \"bar_test.sh\": {\"timeout\": 200]},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib'].\n\nAlternatively, you may include file names. Pants will find which target owns that file, and create a new target from that which only includes the file in its `sources` field. For files relative to the current BUILD file, prefix with `./`; otherwise, put the full path, e.g. ['./sibling.txt', 'resources/demo.json'].\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.typecheck.mypy", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt", + "pants.backend.experimental.docker", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.java.debug_goals", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.codegen.protobuf.python", + "pants.backend.awslambda.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.8.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/v2.8/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.8.1" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.8.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported. \n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cache", + "config_key": "process_execution_local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cleanup", + "config_key": "process_execution_local_cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-cleanup" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": { + "user-agent": "pants/2.8.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.8.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "first_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "Whether to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "first_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": { + "user-agent": "pants/2.8.1" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.8.1" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.\n\nPatterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.8/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.8/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-supportdir=", + "config_key": "pants_supportdir", + "default": "/tmp/tmp.MpwSc5OGVo/build-support", + "deprecated_message": "Deprecated, will be removed in version: 2.9.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pants-supportdir=" + ], + "env_var": "PANTS_SUPPORTDIR", + "help": "Does not do anything.", + "removal_hint": "Unused: this option has no necessary equivalent in v2.", + "removal_version": "2.9.0.dev0", + "scoped_cmd_line_args": [ + "--pants-supportdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-supportdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/build-support" + } + ] + } + } + ], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\nSee https://www.pantsbuild.org/v2.8/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\nSee https://www.pantsbuild.org/v2.8/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "scope": "anonymous-telemetry" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake==1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-version=" + ], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake==1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-lockfile=" + ], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/lint/autoflake/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=autoflake`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "help": "Don't use Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython==3.1.18" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython==3.1.18" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/lint/bandit/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=bandit`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==21.9b0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==21.9b0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6.2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6.2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/lint/black/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=black`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.8/docs/advanced-target-selection.", + "is_goal": false, + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "help": "Register command line aliases.\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependees=transitive\"\n\nThis would allow you to run `./pants green all-changed`, which is shorthand for `./pants fmt lint check --changed-since=HEAD --changed-dependees=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.0.13", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.0.13" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.0.13|linux_arm64 |8d428bede2d9d0e48ffad8360d49de48bd0c2c3b0e54e82e3a7665019b65e4d0|58622664", + "v2.0.13|linux_x86_64|1ae089789cc4b0a4d296d6852b760d7f8bf72805267a6b7571e99b681d5e13b4|59652208", + "v2.0.13|macos_arm64 |d74b8fe4ffc2f4e9011d7151722fc8b5ffca8a72b3bc4188c61df3326228c4ef|57625024", + "v2.0.13|macos_x86_64|d74b8fe4ffc2f4e9011d7151722fc8b5ffca8a72b3bc4188c61df3326228c4ef|57625024" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.0.13|linux_arm64 |8d428bede2d9d0e48ffad8360d49de48bd0c2c3b0e54e82e3a7665019b65e4d0|58622664", + "v2.0.13|linux_x86_64|1ae089789cc4b0a4d296d6852b760d7f8bf72805267a6b7571e99b681d5e13b4|59652208", + "v2.0.13|macos_arm64 |d74b8fe4ffc2f4e9011d7151722fc8b5ffca8a72b3bc4188c61df3326228c4ef|57625024", + "v2.0.13|macos_x86_64|d74b8fe4ffc2f4e9011d7151722fc8b5ffca8a72b3bc4188c61df3326228c4ef|57625024" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.8/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A dependency resolver for the Maven ecosystem.", + "is_goal": false, + "scope": "coursier" + }, + "coursier-resolve": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Generate a lockfile by resolving JVM dependencies.", + "is_goal": true, + "scope": "coursier-resolve" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.5,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.5,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/subsystems/coverage_py_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=coverage-py`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil'].\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html .", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees. If unspecified, list direct dependees only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": [ + "text", + "json" + ], + "comma_separated_choices": "text, json", + "comma_separated_display_args": "--dependees-output-format=", + "config_key": "output_format", + "default": "text", + "deprecated_message": "Deprecated, will be removed in version: 2.9.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--dependees-output-format=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FORMAT", + "help": "Use `text` for a flattened list of target addresses; use `json` for each key to be the address of one of the specified targets, with its value being a list of that target's dependees, e.g. `{':example': [':dep1', ':dep2']}`.", + "removal_hint": "Use the `peek` goal for structured output, including dependencies.", + "removal_version": "2.9.0.dev0", + "scoped_cmd_line_args": [ + "--dependees-output-format" + ], + "typ": "DependeesOutputFormat", + "unscoped_cmd_line_args": [ + "--output-format" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "text" + } + ] + } + } + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": [ + "source", + "3rdparty", + "source-and-3rdparty" + ], + "comma_separated_choices": "source, 3rdparty, source-and-3rdparty", + "comma_separated_display_args": "--dependencies-type=", + "config_key": "type", + "default": "source", + "deprecated_message": "Deprecated, will be removed in version: 2.9.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--dependencies-type=" + ], + "env_var": "PANTS_DEPENDENCIES_TYPE", + "help": "Which types of dependencies to list, where `source` means source code dependencies and `3rdparty` means third-party requirement strings.", + "removal_hint": "This option is misleading and not very useful. In the future there will be a more robust way of querying and filtering dependencies.\nMeanwhile you can get the list of requirement strings for a set of targets using something like\n\n./pants dependencies :: \\\n| xargs ./pants filter --target-type=python_requirement \\\n| xargs ./pants peek | jq -r '.[][\"requirements\"][]'\n", + "removal_version": "2.9.0.dev0", + "scoped_cmd_line_args": [ + "--dependencies-type" + ], + "typ": "DependencyType", + "unscoped_cmd_line_args": [ + "--type" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "source" + } + ] + } + } + ], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/lint/docformatter/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=docformatter`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "help": "Environment variables to set for `docker` invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables:\n\n * name\n * directory\n * parent_directory\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"['', '', ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "help": "Global build arguments (`--build-arg`) to use for all `docker build` invocations. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nMay be provided multiple times on the command line.\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Options for interacting with Docker.", + "is_goal": false, + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-version=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-lockfile=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/docker/subsystems/dockerfile_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=dockerfile-parser`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "scope": "dockerfile-parser" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.54", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.51,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.54" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.54|macos_arm64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238", + "v2.1.54|macos_x86_64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238", + "v2.1.54|linux_x86_64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.54|macos_arm64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238", + "v2.1.54|macos_x86_64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238", + "v2.1.54|linux_x86_64|c892c82961f73e41aaafad3c692cfd51f6013bed2f7b408041be6c1b90d06451|3679238" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-pex-bin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.51,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.8/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.9.2,<4.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.9.2,<4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/lint/flake8/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=flake8`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "Rather than formatting all files in a single batch, format each file as a separate process.\n\nWhy 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `./pants generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from the option `[python].experimental_resolves_to_lockfiles`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `./pants generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_goal": true, + "scope": "generate-lockfiles" + }, + "generate-user-lockfile": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Generate a lockfile for Python user requirements (experimental).", + "is_goal": true, + "scope": "generate-user-lockfile" + }, + "go-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "help": "Arguments to pass directly to the Go test binary, e.g. `--go-test-args=\"-run TestFoo -v\"` Known Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Options for Go tests.", + "is_goal": false, + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "help": "Don't use gofmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Gofmt-specific options.", + "is_goal": false, + "scope": "gofmt" + }, + "golang": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string '' will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-expected-version=", + "config_key": "expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-expected-version=" + ], + "env_var": "PANTS_GOLANG_EXPECTED_VERSION", + "help": "The Go version you are using, such as `1.17`.\n\nPants will only use Go distributions from `--go-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + } + ], + "deprecated": [], + "description": "Options for Golang support.", + "is_goal": false, + "scope": "golang" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.8/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "scope": "grpc-python-plugin" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/subsystems/ipython_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=ipython`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/lint/isort/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=isort`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "java-dump-first-party-dep-map": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Dump dependency inference data for Java dep inference.", + "is_goal": true, + "scope": "java-dump-first-party-dep-map" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "scope": "java-infer" + }, + "javac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-jdk=", + "config_key": "jdk", + "default": "adopt:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-jdk=" + ], + "env_var": "PANTS_JAVAC_JDK", + "help": "The JDK to use for invoking javac.\n\n This string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\n If the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "adopt:1.11" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The javac Java source compiler.", + "is_goal": false, + "scope": "javac" + }, + "junit": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "help": "Arguments to pass directly to JUnit, e.g. `--disable-ansi-colors`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "scope": "junit" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/subsystems/lambdex_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=lambdex`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process.\n\nWhy do this? You'll get many more cache hits. Why not do this? Linters 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-provides", + "config_key": "provides", + "default": false, + "deprecated_message": "Deprecated, will be removed in version: 2.9.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]list-provides" + ], + "env_var": "PANTS_LIST_PROVIDES", + "help": "List only targets that provide an artifact.", + "removal_hint": "Filter on python distributions instead: ./pants filter --target-type=python_distribution ::\n", + "removal_version": "2.9.0.dev0", + "scoped_cmd_line_args": [ + "--list-provides", + "--no-list-provides" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--provides", + "--no-provides" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.910", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.910" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/typecheck/mypy/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=mypy`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement_library` target.Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 typecheck`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=mypy-protobuf`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "scope": "mypy-protobuf" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": [ + "raw", + "json" + ], + "comma_separated_choices": "raw, json", + "comma_separated_display_args": "--peek-output=", + "config_key": "output", + "default": "json", + "deprecated_message": "Deprecated, will be removed in version: 2.9.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--peek-output=" + ], + "env_var": "PANTS_PEEK_OUTPUT", + "help": "Which output style peek should use: `json` will show each target as a seperate entry, whereas `raw` will simply show the original non-normalized BUILD files.", + "removal_hint": "Output will always be JSON. If you need the raw BUILD file contents, look at it directly!", + "removal_version": "2.9.0.dev0", + "scoped_cmd_line_args": [ + "--peek-output" + ], + "typ": "OutputOptions", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "json" + } + ] + } + } + ], + "description": "Display BUILD target info", + "is_goal": true, + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": [ + "python", + "python3", + "python2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python]` to influence where interpreters are searched for.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-bootstrap-interpreter-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--bootstrap-interpreter-names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3", + "python2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "poetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-version=", + "config_key": "version", + "default": "poetry==1.1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-version=" + ], + "env_var": "PANTS_POETRY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "poetry==1.1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Used to generate lockfiles for third-party Python dependencies.", + "is_goal": false, + "scope": "poetry" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|linux_arm64 |f24c9fa1fc4a7770b8a5da66e515cb8a638d086ad2afa633abb97137c5f029a8|1481946", + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|linux_arm64 |f24c9fa1fc4a7770b8a5da66e515cb8a638d086ad2afa633abb97137c5f029a8|1481946", + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.8/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.6.2,<2.7", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.6.2,<2.7" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/lint/pylint/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pylint`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.8/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.2.4,<6.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.2.4,<6.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/subsystems/pytest_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pytest`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-xml-dir=", + "config_key": "junit_xml_dir", + "default": null, + "deprecated_message": "Deprecated, will be removed in version: 2.9.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pytest-junit-xml-dir=" + ], + "env_var": "PANTS_PYTEST_JUNIT_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run.", + "removal_hint": "Moved to `[test] xml_dir`.", + "removal_version": "2.9.0.dev0", + "scoped_cmd_line_args": [ + "--pytest-junit-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nMutually exclusive with `[python].experimental_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "help": "If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.\n\nRequires [python].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-experimental-lockfile=", + "config_key": "experimental_lockfile", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-experimental-lockfile=" + ], + "env_var": "PANTS_PYTHON_EXPERIMENTAL_LOCKFILE", + "help": "The lockfile to use when resolving requirements for your own code (vs. tools you run).\n\nThis is highly experimental and will change, including adding support for multiple lockfiles. This option's behavior may change without the normal deprecation cycle.\n\nTo generate a lockfile, activate the backend `pants.backend.experimental.python`and run `./pants generate-user-lockfile ::`.\n\nMutually exclusive with `[python].requirement_constraints`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-experimental-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--experimental-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-experimental-resolves-to-lockfiles=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "experimental_resolves_to_lockfiles", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-experimental-resolves-to-lockfiles=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_EXPERIMENTAL_RESOLVES_TO_LOCKFILES", + "help": "A mapping of logical names to lockfile paths used in your project, e.g. `{ default = '3rdparty/default_lockfile.txt', py2 = '3rdparty/py2.txt' }`.\n\nTo generate a lockfile, run `./pants generate-lockfiles --resolve=` or `./pants generate-lockfiles` to generate for all resolves (including tool lockfiles).\n\nThis is highly experimental and will likely change.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-experimental-resolves-to-lockfiles" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--experimental-resolves-to-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH env var\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-jobs=", + "config_key": "resolver_jobs", + "default": "#cores/2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with.\n\nBecause Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-resolver-jobs`. \n\nSetting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "Don't tailor `python_sources` targets for solitary `__init__.py` files, as those usually exist as import scaffolding rather than true library code.\n\nSet to False if you commonly have packages containing real code in `__init__.py` and there are no other .py files in the package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-solitary-init-files", + "--no-python-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "help": "Tailor python_requirements() targets for requirements files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "help": "Tailor pex_binary() targets for Python entry point files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options for Pants's Python support.", + "is_goal": false, + "scope": "python" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor `__init__.py` files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_sources` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.8/docs/protobuf.", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.8/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nMutually exclusive with `[python].experimental_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.\n\nRequires [python].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolve-all-constraints", + "--no-python-setup-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-experimental-lockfile=", + "config_key": "experimental_lockfile", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-experimental-lockfile=" + ], + "env_var": "PANTS_PYTHON_SETUP_EXPERIMENTAL_LOCKFILE", + "help": "The lockfile to use when resolving requirements for your own code (vs. tools you run).\n\nThis is highly experimental and will change, including adding support for multiple lockfiles. This option's behavior may change without the normal deprecation cycle.\n\nTo generate a lockfile, activate the backend `pants.backend.experimental.python`and run `./pants generate-user-lockfile ::`.\n\nMutually exclusive with `[python].requirement_constraints`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-experimental-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--experimental-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-experimental-resolves-to-lockfiles=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "experimental_resolves_to_lockfiles", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-experimental-resolves-to-lockfiles=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_SETUP_EXPERIMENTAL_RESOLVES_TO_LOCKFILES", + "help": "A mapping of logical names to lockfile paths used in your project, e.g. `{ default = '3rdparty/default_lockfile.txt', py2 = '3rdparty/py2.txt' }`.\n\nTo generate a lockfile, run `./pants generate-lockfiles --resolve=` or `./pants generate-lockfiles` to generate for all resolves (including tool lockfiles).\n\nThis is highly experimental and will likely change.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-experimental-resolves-to-lockfiles" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--experimental-resolves-to-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-setup-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_SETUP_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH env var\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": "#cores/2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with.\n\nBecause Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-resolver-jobs`. \n\nSetting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_SETUP_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "Don't tailor `python_sources` targets for solitary `__init__.py` files, as those usually exist as import scaffolding rather than true library code.\n\nSet to False if you commonly have packages containing real code in `__init__.py` and there are no other .py files in the package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-tailor-ignore-solitary-init-files", + "--no-python-setup-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_SETUP_TAILOR_REQUIREMENTS_TARGETS", + "help": "Tailor python_requirements() targets for requirements files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-tailor-requirements-targets", + "--no-python-setup-tailor-requirements-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_SETUP_TAILOR_PEX_BINARY_TARGETS", + "help": "Tailor pex_binary() targets for Python entry point files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-tailor-pex-binary-targets", + "--no-python-setup-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_SETUP_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-macos-big-sur-compatibility", + "--no-python-setup-macos-big-sur-compatibility" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options for Pants's Python support.", + "is_goal": false, + "scope": "python-setup" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.29.0,<2.30", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-version=" + ], + "env_var": "PANTS_PYUPGRADE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.29.0,<2.30" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-lockfile=" + ], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/lint/pyupgrade/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pyupgrade`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "help": "Don't use pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args=\"--py39-plus --keep-runtime-typing\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "scope": "pyupgrade" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "scope": "run" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of succinctcodecounter is not supported.\n\nSupported succinctcodecounter versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.8/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "help": "The default value for the `generate_setup` field on `python_distribution` targets.Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<58.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<58.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/subsystems/setuptools_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=setuptools`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "scope": "setuptools" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for Pants's Shell support.", + "is_goal": false, + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.7.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.7.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.7.1|macos_arm64 |b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|macos_x86_64|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux_arm64 |b50cc31509b354ab5bbfc160bc0967567ed98cd9308fd43f38551b36cccc4446|1432492", + "v0.7.1|linux_x86_64|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.7.1|macos_arm64 |b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|macos_x86_64|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux_arm64 |b50cc31509b354ab5bbfc160bc0967567ed98cd9308fd43f38551b36cccc4446|1432492", + "v0.7.1|linux_x86_64|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shellcheck is not supported.\n\nSupported shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.8/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "Don't use Shellcheck when running `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A linter for shell scripts.", + "is_goal": false, + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emmitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.8/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "Don't use shfmt when running `./pants fmt` and `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.8/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "Config schema is as follows:\n\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.8/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. [`project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "scope": "tailor" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-xml-dir=", + "config_key": "xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-xml-dir=" + ], + "env_var": "PANTS_TEST_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run that supports producing them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine==3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-version=" + ], + "env_var": "PANTS_TWINE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine==3.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "colorama>=0.4.3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "colorama>=0.4.3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-lockfile=" + ], + "env_var": "PANTS_TWINE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/subsystems/twine_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=twine`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use the default CA certificate.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "help": "Don't use Twine when running `./pants publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The utility for publishing Python distributions to PyPi and other Python repositories.", + "is_goal": false, + "scope": "twine" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "scope": "typecheck" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "help": "Format BUILD files using Black.\n\nSet `[black].args`, `[black].config`, and `[black].config_discovery` to change Black's behavior. Set `[black].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run Black.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.8/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "scope": "update-build-files" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf==0.31.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf==0.31.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.8.1/src/python/pants/backend/python/lint/yapf/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=yapf`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "help": "Don't use yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args=\"--no-local-style\"`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "scope": "yapf" + } + } +} diff --git a/versioned_docs/version-2.9.x/reference/help-all.json b/versioned_docs/version-2.9.x/reference/help-all.json new file mode 100644 index 000000000..7ad5f50b5 --- /dev/null +++ b/versioned_docs/version-2.9.x/reference/help-all.json @@ -0,0 +1,21410 @@ +{ + "name_to_goal_info": { + "check": { + "consumed_scopes": [ + "" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check" + }, + "count-loc": { + "consumed_scopes": [ + "", + "pex", + "python", + "python-bootstrap", + "scc" + ], + "description": "Count lines of code.", + "is_implemented": true, + "name": "count-loc" + }, + "coursier-resolve": { + "consumed_scopes": [ + "", + "coursier", + "coursier-resolve", + "jvm", + "pex", + "python", + "python-bootstrap" + ], + "description": "Generate a lockfile by resolving JVM dependencies.", + "is_implemented": true, + "name": "coursier-resolve" + }, + "dependees": { + "consumed_scopes": [ + "", + "dependees" + ], + "description": "List all targets that depend on any of the input files/targets.", + "is_implemented": true, + "name": "dependees" + }, + "dependencies": { + "consumed_scopes": [ + "", + "dependencies" + ], + "description": "List the dependencies of the input files/targets.", + "is_implemented": true, + "name": "dependencies" + }, + "export": { + "consumed_scopes": [ + "", + "export" + ], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_implemented": true, + "name": "export" + }, + "export-codegen": { + "consumed_scopes": [ + "" + ], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_implemented": true, + "name": "export-codegen" + }, + "filedeps": { + "consumed_scopes": [ + "", + "filedeps" + ], + "description": "List all source and BUILD files a target depends on.", + "is_implemented": true, + "name": "filedeps" + }, + "filter": { + "consumed_scopes": [ + "", + "filter" + ], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_implemented": true, + "name": "filter" + }, + "fmt": { + "consumed_scopes": [ + "", + "fmt" + ], + "description": "Autoformat source code.", + "is_implemented": true, + "name": "fmt" + }, + "generate-lockfiles": { + "consumed_scopes": [ + "", + "download-pex-bin", + "generate-lockfiles", + "pex", + "poetry", + "python", + "python-bootstrap", + "python-native-code", + "python-repos", + "subprocess-environment" + ], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_implemented": true, + "name": "generate-lockfiles" + }, + "generate-user-lockfile": { + "consumed_scopes": [ + "", + "download-pex-bin", + "generate-lockfiles", + "pex", + "poetry", + "python", + "python-bootstrap", + "python-native-code", + "python-repos", + "subprocess-environment" + ], + "description": "Generate a lockfile for Python user requirements (experimental).", + "is_implemented": true, + "name": "generate-user-lockfile" + }, + "jvm-generate-lockfiles": { + "consumed_scopes": [ + "", + "coursier", + "jvm-generate-lockfiles", + "pex", + "python", + "python-bootstrap" + ], + "description": "Generate lockfiles for JVM tools third-party dependencies.", + "is_implemented": true, + "name": "jvm-generate-lockfiles" + }, + "lint": { + "consumed_scopes": [ + "", + "lint" + ], + "description": "Run all linters and/or formatters in check mode.", + "is_implemented": true, + "name": "lint" + }, + "list": { + "consumed_scopes": [ + "", + "list" + ], + "description": "Lists all targets matching the file or target arguments.", + "is_implemented": true, + "name": "list" + }, + "package": { + "consumed_scopes": [ + "" + ], + "description": "Create a distributable package.", + "is_implemented": true, + "name": "package" + }, + "paths": { + "consumed_scopes": [ + "", + "paths" + ], + "description": "List the paths between two addresses.", + "is_implemented": true, + "name": "paths" + }, + "peek": { + "consumed_scopes": [ + "", + "peek" + ], + "description": "Display BUILD target info", + "is_implemented": true, + "name": "peek" + }, + "publish": { + "consumed_scopes": [ + "", + "publish" + ], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_implemented": true, + "name": "publish" + }, + "py-constraints": { + "consumed_scopes": [ + "", + "py-constraints", + "python" + ], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_implemented": true, + "name": "py-constraints" + }, + "repl": { + "consumed_scopes": [ + "", + "repl" + ], + "description": "Open a REPL with the specified code loadable.", + "is_implemented": true, + "name": "repl" + }, + "roots": { + "consumed_scopes": [ + "roots", + "source" + ], + "description": "List the repo's registered source roots.", + "is_implemented": true, + "name": "roots" + }, + "run": { + "consumed_scopes": [ + "", + "run" + ], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_implemented": true, + "name": "run" + }, + "tailor": { + "consumed_scopes": [ + "", + "tailor" + ], + "description": "Auto-generate BUILD file targets for new source files.", + "is_implemented": true, + "name": "tailor" + }, + "test": { + "consumed_scopes": [ + "", + "test" + ], + "description": "Run tests.", + "is_implemented": true, + "name": "test" + }, + "typecheck": { + "consumed_scopes": [ + "" + ], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_implemented": true, + "name": "check" + }, + "update-build-files": { + "consumed_scopes": [ + "", + "update-build-files" + ], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.9/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_implemented": true, + "name": "update-build-files" + }, + "validate": { + "consumed_scopes": [ + "", + "sourcefile-validation", + "validate" + ], + "description": "Validate sources against regexes.", + "is_implemented": true, + "name": "validate" + } + }, + "name_to_target_type_info": { + "archive": { + "alias": "archive", + "description": "A ZIP or TAR file containing loose files and code packages.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "packages", + "default": null, + "description": "Addresses to any targets that can be built with `./pants package`, e.g. `[\"project:app\"]`.\n\nPants will build the assets as if you had run `./pants package`. It will include the results in your archive using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or even another `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "files", + "default": null, + "description": "Addresses to any `file`, `files`, or `relocated_files` targets to include in the archive, e.g. `[\"resources:logo\"]`.\n\nThis is useful to include any loose files, like data files, image assets, or config files.\n\nThis will ignore any targets that are not `file`, `files`, or `relocated_files` targets.\n\nIf you instead want those files included in any packages specified in the `packages` field for this target, then use a `resource` or `resources` target and have the original package depend on the resources.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "format", + "default": null, + "description": "The type of archive file to be generated.", + "required": true, + "type_hint": "'tar' | 'tar.bz2' | 'tar.gz' | 'tar.xz' | 'zip'" + } + ], + "summary": "A ZIP or TAR file containing loose files and code packages." + }, + "deploy_jar": { + "alias": "deploy_jar", + "description": "A `jar` file with first and third-party code bundled for deploys.\n\nThe JAR will contain class files for both first-party code and third-party dependencies, all in a common directory structure.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "`.`-separated name of the JVM class containing the `main()` method to be called when executing this JAR.", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The name of the resolve to use when building this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "A `jar` file with first and third-party code bundled for deploys." + }, + "docker_image": { + "alias": "docker_image", + "description": "The `docker_image` target describes how to build and tag a Docker image.\n\nAny dependencies, as inferred or explicitly specified, will be included in the Docker build context, after being packaged if applicable.\n\nBy default, will use a Dockerfile from the same directory as the BUILD file this target is defined in. Point at another file with the `source` field, or use the `instructions` field to have the Dockerfile contents verbatim directly in the BUILD file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "extra_build_args", + "default": "()", + "description": "Build arguments (`--build-arg`) to use when building this image. Entries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nUse `[docker].build_args` to set default build args for all images.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": "'Dockerfile'", + "description": "The Dockerfile to use when building the Docker image.\n\nUse the `instructions` field instead if you prefer not having the Dockerfile in your project source tree.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "instructions", + "default": null, + "description": "The `Dockerfile` content, typically one instruction per list item.\n\nUse the `source` field instead if you prefer having the Dockerfile in your project source tree.\n\nExample:\n\n # example/BUILD\n docker_image(\n instructions=[\n \"FROM base/image:1.0\",\n \"RUN echo example\",\n ],\n )\n", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "image_tags", + "default": "('latest',)", + "description": "Any tags to apply to the Docker image name (the version is usually applied as a tag).\n\nEach tag may use placeholders in curly braces to be interpolated. The placeholders are derived from various sources, such as the Dockerfile FROM instructions tags and build args.\n\nSee https://www.pantsbuild.org/v2.9/docs/tagging-docker-images.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "registries", + "default": "('',)", + "description": "List of addresses or configured aliases to any Docker registries to use for the built image.\n\nThe address is a domain name with optional port for your registry, and any registry aliases are prefixed with `@` for addresses in the [docker].registries configuration section.\n\nBy default, all configured registries with `default = true` are used.\n\nExample:\n\n # pants.toml\n [docker.registries.my-registry-alias]\n address = \"myregistrydomain:port\"\n default = false # optional\n\n # example/BUILD\n docker_image(\n registries = [\n \"@my-registry-alias\",\n \"myregistrydomain:port\",\n ],\n )\n\nThe above example shows two valid `registry` options: using an alias to a configured registry and the address to a registry verbatim in the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "repository", + "default": null, + "description": "The repository name for the Docker image. e.g. \"/\".\n\nIt uses the `[docker].default_repository` by default.This field value may contain format strings that will be interpolated at runtime. See the documentation for `[docker].default_repository` for details.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "secrets", + "default": null, + "description": "Secret files to expose to the build (only if BuildKit enabled).\n\nSecrets may use absolute paths, or paths relative to your project build root, or the BUILD file if prefixed with `./`. The id should be valid as used by the Docker build `--secret` option. See [Docker secrets](https://docs.docker.com/engine/swarm/secrets/) for more information.\n\nExample:\n\n docker_image(\n secrets={\n \"mysecret\": \"/var/secrets/some-secret\",\n \"repo-secret\": \"src/proj/secrets/some-secret\",\n \"target-secret\": \"./secrets/some-secret\",\n }\n )\n", + "required": false, + "type_hint": "Dict[str, str] | None" + }, + { + "alias": "skip_push", + "default": "False", + "description": "If set to true, do not push this image to registries when running `./pants publish`.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "target_stage", + "default": null, + "description": "Specify target build stage, rather than building the entire `Dockerfile`.\n\nWhen using multi-stage build, you may name your stages, and can target them when building to only selectively build a certain stage. See also the `--docker-build-target-stage` option.\n\nRead more about [multi-stage Docker builds](https://docs.docker.com/develop/develop-images/multistage-build/#stop-at-a-specific-build-stage)", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_hadolint", + "default": "False", + "description": "If true, don't run hadolint on this target's Dockerfile.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "The `docker_image` target describes how to build and tag a Docker image." + }, + "experimental_run_shell_command": { + "alias": "experimental_run_shell_command", + "description": "Run a script in the workspace, with all dependencies packaged/copied into a chroot.\n\nExample BUILD file:\n\n experimental_run_shell_command(\n command=\"./scripts/my-script.sh --data-files-dir={chroot}\",\n dependencies=[\"src/project/files:data\"],\n )\n\nThe `command` may use either `{chroot}` on the command line, or the `$CHROOT` environment variable to get the root directory for where any dependencies are located.\n\nIn contrast to the `experimental_shell_command`, in addition to `workdir` you only have the `command` and `dependencies` fields as the `tools` you are going to use are already on the PATH which is inherited from the Pants environment. Also, the `outputs` does not apply, as any output files produced will end up directly in your project tree.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "required": true, + "type_hint": "str" + }, + { + "alias": "workdir", + "default": "'.'", + "description": "Sets the current working directory of the command, relative to the project root.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Run a script in the workspace, with all dependencies packaged/copied into a chroot." + }, + "experimental_shell_command": { + "alias": "experimental_shell_command", + "description": "Execute any external tool for its side effects.\n\nExample BUILD file:\n\n experimental_shell_command(\n command=\"./my-script.sh --flag\",\n tools=[\"tar\", \"curl\", \"cat\", \"bash\", \"env\"],\n dependencies=[\":scripts\"],\n outputs=[\"results/\", \"logs/my-script.log\"],\n )\n\n shell_sources(name=\"scripts\")\n\nRemember to add this target to the dependencies of each consumer, such as your `python_tests` or `docker_image`. When relevant, Pants will run your `command` and insert the `outputs` into that consumer's context.\n\nThe command may be retried and/or cancelled, so ensure that it is idempotent.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "command", + "default": null, + "description": "Shell command to execute.\n\nThe command is executed as 'bash -c ' by default.", + "required": true, + "type_hint": "str" + }, + { + "alias": "log_output", + "default": "False", + "description": "Set to true if you want the output from the command logged to the console.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "outputs", + "default": null, + "description": "Specify the shell command output files and directories.\n\nUse a trailing slash on directory names, i.e. `my_dir/`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": "30", + "description": "Command execution timeout (in seconds).", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "tools", + "default": null, + "description": "Specify required executable tools that might be used.\n\nOnly the tools explicitly provided will be available on the search PATH, and these tools must be found on the paths provided by [shell-setup].executable_search_paths (which defaults to the system PATH).", + "required": true, + "type_hint": "Iterable[str]" + } + ], + "summary": "Execute any external tool for its side effects." + }, + "file": { + "alias": "file", + "description": "A single loose file that lives outside of code packages.\n\nFiles are placed directly in archives, outside of code artifacts such as Python wheels or JVM JARs. The sources of a `file` target are accessed via filesystem APIs, such as Python's `open()`, via paths relative to the repository root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A single loose file that lives outside of code packages." + }, + "files": { + "alias": "files", + "description": "Generate a `file` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `file` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `file` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + } + ], + "summary": "Generate a `file` target for each file in the `sources` field." + }, + "go_binary": { + "alias": "go_binary", + "description": "A Go binary.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "main", + "default": null, + "description": "Address of the `go_package` with the `main` for this binary.\n\nIf not specified, will default to the `go_package` for the same directory as this target's BUILD file. You should usually rely on this default.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A Go binary." + }, + "go_mod": { + "alias": "go_mod", + "description": "A first-party Go module (corresponding to a `go.mod` file).\n\nGenerates `go_third_party_package` targets based on the `require` directives in your `go.mod`.\n\nIf you have third-party packages, make sure you have an up-to-date `go.sum`. Run `go mod tidy` directly to update your `go.mod` and `go.sum`.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "A first-party Go module (corresponding to a `go.mod` file)." + }, + "go_package": { + "alias": "go_package", + "description": "A first-party Go package (corresponding to a directory with `.go` files).\n\nExpects that there is a `go_mod` target in its directory or in an ancestor directory.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.go', '*.s')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "test_timeout", + "default": null, + "description": "A timeout (in seconds) when running this package's tests.\n\nIf this field is not set, the test will never time out.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this package's tests.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_gofmt", + "default": "False", + "description": "If true, don't run gofmt on this package.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A first-party Go package (corresponding to a directory with `.go` files)." + }, + "go_third_party_package": { + "alias": "go_third_party_package", + "description": "A package from a third-party Go module.\n\nYou should not explicitly create this target in BUILD files. Instead, add a `go_mod` target where you have your `go.mod` file, which will generate `go_third_party_package` targets for you.\n\nMake sure that your `go.mod` and `go.sum` files include this package's module.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "import_path", + "default": null, + "description": "Import path in Go code to import this package.\n\nThis field should not be overridden; use the value from target generation.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A package from a third-party Go module." + }, + "java_source": { + "alias": "java_source", + "description": "A single Java source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The set of resolve names that this target is compatible with.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nEach name must be defined as a resolve in `[jvm].resolves`.\n\n", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A single Java source file containing application or library code." + }, + "java_sources": { + "alias": "java_sources", + "description": "Generate a `java_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.java', '!*Test.java')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The set of resolve names that this target is compatible with.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nEach name must be defined as a resolve in `[jvm].resolves`.\n\n", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Generate a `java_source` target for each file in the `sources` field." + }, + "junit_test": { + "alias": "junit_test", + "description": "A single Java test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The name of the resolve to use when building this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A single Java test, run with JUnit." + }, + "junit_tests": { + "alias": "junit_tests", + "description": "Generate a `junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.java',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The name of the resolve to use when building this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Generate a `junit_test` target for each file in the `sources` field." + }, + "jvm_artifact": { + "alias": "jvm_artifact", + "description": "A third-party JVM artifact, as identified by its Maven-compatible coordinate.\n\nThat is, an artifact identified by its `group`, `artifact`, and `version` components.\n\nEach artifact is associated with one or more resolves (a logical name you give to a lockfile). For this artifact to be used by your first-party code, it must be associated with the resolve(s) used by that code. See the `compatible_resolves` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "group", + "default": null, + "description": "The 'group' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the group is `com.google.guava`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "artifact", + "default": null, + "description": "The 'artifact' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the artifact is `guava`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "version", + "default": null, + "description": "The 'version' part of a Maven-compatible coordinate to a third-party JAR artifact.\n\nFor the JAR coordinate `com.google.guava:guava:30.1.1-jre`, the version is `30.1.1-jre`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "packages", + "default": null, + "description": "The JVM packages this artifact provides for the purposes of dependency inference.\n\nFor example, the JVM artifact `junit:junit` might provide `[\"org.junit.**\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will fall back to the `[java-infer].third_party_import_mapping`, then to a built in mapping (https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/jvm/dependency_inference/jvm_artifact_mappings.py), and then finally it will default to the normalized `group` of the artifact. For example, in the absence of any other mapping the artifact `io.confluent:common-config` would default to providing `[\"io.confluent.**\"]`.\n\nThe package path may be made recursive to match symbols in subpackages by adding `.**` to the end of the package path. For example, specify `[\"org.junit.**\"]` to infer a dependency on the artifact for any file importing a symbol from `org.junit` or its subpackages.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "url", + "default": null, + "description": "A URL that points to the location of this artifact.\n\nIf specified, Pants will not fetch this artifact from default Maven repositories, and will instead fetch the artifact from this URL. To use default maven repositories, do not set this value.\n\nNote that `file:` URLs are not supported. Instead, use the `jar` field for local artifacts.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "jar", + "default": null, + "description": "A local JAR file that provides this artifact to the lockfile resolver, instead of a Maven repository.\n\nPath is relative to the BUILD file.\n\nUse the `url` field for remote artifacts.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The resolves that this artifact should be included in.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nEach name must be defined as a resolve in `[jvm].resolves`.\n\nWhen generating a lockfile for a particular resolve via the `coursier-resolve` goal, it will include all artifacts that are declared compatible with that resolve. First-party targets like `java_source` and `scala_source` then declare which resolve(s) they use via the `resolve` and `compatible_resolves` field; so, for your first-party code to use a particular `jvm_artifact` target, that artifact must be included in the resolve(s) used by that code.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A third-party JVM artifact, as identified by its Maven-compatible coordinate." + }, + "pants_requirements": { + "alias": "pants_requirements", + "description": "Generate `python_requirement` targets for Pants itself to use with Pants plugins.\n\nThis is useful when writing plugins so that you can build and test your plugin using Pants. The generated targets will have the correct version based on the `version` in your `pants.toml`, and they will work with dependency inference.\n\nBecause the Plugin API is not yet stable, the version is set automatically for you to improve stability. If you're currently using a dev release, the version will be set to that exact dev release. If you're using a release candidate (rc) or stable release, the version will allow any non-dev-release release within the release series, e.g. `>=2.9.0rc0,<2.10`.\n\n(If this versioning scheme does not work for you, you can directly create `python_requirement` targets for `pantsbuild.pants` and `pantsbuild.pants.testutil`. We also invite you to share your ideas at https://github.com/pantsbuild/pants/issues/new/choose)", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "testutil", + "default": "True", + "description": "If true, include `pantsbuild.pants.testutil` to write tests for your plugin.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate `python_requirement` targets for Pants itself to use with Pants plugins." + }, + "pex_binary": { + "alias": "pex_binary", + "description": "A Python target that can be converted into an executable PEX file.\n\nPEX files are self-contained executable files that contain a complete Python environment capable of running the target. For more information, see https://www.pantsbuild.org/v2.9/docs/pex-files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_resolve", + "default": null, + "description": "The resolve from `[python].experimental_resolves_to_lockfiles` to use, if any.\n\nThis field is highly experimental and may change without the normal deprecation policy.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_point", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a module.\n\nYou can specify a full module like 'path.to.module' and 'path.to.module:func', or use a shorthand to specify a file name, using the same syntax as the `sources` field:\n\n 1) 'app.py', Pants will convert into the module `path.to.app`;\n 2) 'app.py:func', Pants will convert into `path.to.app:func`.\n\nYou must use the file name shorthand for file arguments to work with this target.\n\nYou may either set this field or the `script` field, but not both. Leave off both fields to have no entry point.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "script", + "default": null, + "description": "Set the entry point, i.e. what gets run when executing `./my_app.pex`, to a script or console_script as defined by any of the distributions in the PEX.\n\nYou may either set this field or the `entry_point` field, but not both. Leave off both fields to have no entry point.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "platforms", + "default": null, + "description": "The platforms the built PEX should be compatible with.\n\nThis defaults to the current platform, but can be overridden to different platforms. There must be built wheels available for all of the foreign platforms, rather than sdists.\n\nYou can give a list of multiple platforms to create a multiplatform PEX, meaning that the PEX will be executable in all of the supported environments.\n\nPlatforms should be in the format defined by Pex (https://pex.readthedocs.io/en/latest/buildingpex.html#platform), i.e. PLATFORM-IMPL-PYVER-ABI (e.g. \"linux_x86_64-cp-27-cp27mu\", \"macosx_10.12_x86_64-cp-36-cp36m\"):\n\n - PLATFORM: the host platform, e.g. \"linux-x86_64\", \"macosx-10.12-x86_64\".\n - IMPL: the Python implementation abbreviation, e.g. \"cp\", \"pp\", \"jp\".\n - PYVER: a two-digit string representing the Python version, e.g. \"27\", \"36\".\n - ABI: the ABI tag, e.g. \"cp36m\", \"cp27mu\", \"abi3\", \"none\".", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve_local_platforms", + "default": null, + "description": "For each of the `platforms` specified, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "inherit_path", + "default": null, + "description": "Whether to inherit the `sys.path` (aka PYTHONPATH) of the environment that the binary runs in.\n\nUse `false` to not inherit `sys.path`; use `fallback` to inherit `sys.path` after packaged dependencies; and use `prefer` to inherit `sys.path` before packaged dependencies.", + "required": false, + "type_hint": "'fallback' | 'false' | 'prefer' | None" + }, + { + "alias": "strip_pex_env", + "default": "True", + "description": "Whether or not to strip the PEX runtime environment of `PEX*` environment variables.\n\nMost applications have no need for the `PEX*` environment variables that are used to control PEX startup; so these variables are scrubbed from the environment by Pex before transferring control to the application by default. This prevents any subprocesses that happen to execute other PEX files from inheriting these control knob values since most would be undesired; e.g.: PEX_MODULE or PEX_PATH.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "ignore_errors", + "default": "False", + "description": "Should PEX ignore when it cannot resolve dependencies?", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shebang", + "default": null, + "description": "Set the generated PEX to use this shebang, rather than the default of PEX choosing a shebang based on the interpreter constraints.\n\nThis influences the behavior of running `./result.pex`. You can ignore the shebang by instead running `/path/to/python_interpreter ./result.pex`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "emit_warnings", + "default": null, + "description": "Whether or not to emit PEX warnings at runtime.\n\nThe default is determined by the option `emit_warnings` in the `[pex-binary-defaults]` scope.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "layout", + "default": "'zipapp'", + "description": "The layout used for the PEX binary.\n\nBy default, a PEX is created as a single file zipapp, but either a packed or loose directory tree based layout can be chosen instead.\n\nA packed layout PEX is an executable directory structure designed to have cache-friendly characteristics for syncing incremental updates to PEXed applications over a network. At the top level of the packed directory tree there is an executable `__main__.py` script. The directory can also be executed by passing its path to a Python executable; e.g: `python packed-pex-dir/`. The Pex bootstrap code and all dependency code are packed into individual zip files for efficient caching and syncing.\n\nA loose layout PEX is similar to a packed PEX, except that neither the Pex bootstrap code nor the dependency code are packed into zip files, but are instead present as collections of loose files in the directory tree providing different caching and syncing tradeoffs.\n\nBoth zipapp and packed layouts install themselves in the `$PEX_ROOT` as loose apps by default before executing, but these layouts compose with `execution_mode='zipapp'` as well.", + "required": false, + "type_hint": "'loose' | 'packed' | 'zipapp' | None" + }, + { + "alias": "execution_mode", + "default": "'zipapp'", + "description": "The mode the generated PEX file will run in.\n\nThe traditional PEX file runs in a modified 'zipapp' mode (See: https://www.python.org/dev/peps/pep-0441/) where zipped internal code and dependencies are first unpacked to disk. This mode achieves the fastest cold start times and may, for example be the best choice for cloud lambda functions.\n\nThe fastest execution mode in the steady state is 'venv', which generates a virtual environment from the PEX file on first run, but then achieves near native virtual environment start times. This mode also benefits from a traditional virtual environment `sys.path`, giving maximum compatibility with stdlib and third party APIs.", + "required": false, + "type_hint": "'venv' | 'zipapp' | None" + }, + { + "alias": "include_requirements", + "default": "True", + "description": "Whether to include the third party requirements the binary depends on in the packaged PEX file.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "include_tools", + "default": "False", + "description": "Whether to include Pex tools in the PEX bootstrap code.\n\nWith tools included, the generated PEX file can be executed with `PEX_TOOLS=1 --help` to gain access to all the available tools.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "restartable", + "default": "False", + "description": "If true, runs of this target with the `run` goal may be interrupted and restarted when its input files change.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A Python target that can be converted into an executable PEX file." + }, + "protobuf_source": { + "alias": "protobuf_source", + "description": "A single Protobuf file used to generate various languages.\n\nSee https://www.pantsbuild.org/v2.9/docs/protobuf.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "A single Protobuf file used to generate various languages." + }, + "protobuf_sources": { + "alias": "protobuf_sources", + "description": "Generate a `protobuf_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.proto',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "grpc", + "default": "False", + "description": "Whether to generate gRPC code or not.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `protobuf_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.proto\": {\"grpc\": True]},\n \"bar.proto\": {\"description\": \"our user model\"]},\n (\"foo.proto\", \"bar.proto\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `protobuf_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "python_interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "python_source_root", + "default": null, + "description": "The source root to generate Python sources under.\n\nIf unspecified, the source root the `protobuf_sources` is under will be used.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "Generate a `protobuf_source` target for each file in the `sources` field." + }, + "python_awslambda": { + "alias": "python_awslambda", + "description": "A self-contained Python function suitable for uploading to AWS Lambda.\n\nSee https://www.pantsbuild.org/v2.9/docs/awslambda-python.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the AWS Lambda handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'lambda.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the AWS Lambda runtime to target (pythonX.Y). See https://docs.aws.amazon.com/lambda/latest/dg/lambda-python.html.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A self-contained Python function suitable for uploading to AWS Lambda." + }, + "python_distribution": { + "alias": "python_distribution", + "description": "A publishable Python setuptools distribution (e.g. an sdist or wheel).\n\nSee https://www.pantsbuild.org/v2.9/docs/python-distributions.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "entry_points", + "default": null, + "description": "Any entry points, such as `console_scripts` and `gui_scripts`.\n\nSpecify as a nested dictionary, with a dictionary for each type of entry point, e.g. `console_scripts` vs. `gui_scripts`. Each dictionary maps the entry point name to either a setuptools entry point (\"path.to.module:func\") or a Pants target address to a pex_binary target.\n\nExample:\n\n entry_points={\n \"console_scripts\": {\n \"my-script\": \"project.app:main\",\n \"another-script\": \"project/subdir:pex_binary_tgt\"\n }\n }\n\nNote that Pants will assume that any value that either starts with `:` or has `/` in it, is a target address to a pex_binary target. Otherwise, it will assume it's a setuptools entry point as defined by https://packaging.python.org/specifications/entry-points/#entry-points-specification. Use `//` as a prefix for target addresses if you need to disambiguate.\n\nPants will attempt to infer dependencies, which you can confirm by running:\n\n ./pants dependencies \n\n", + "required": false, + "type_hint": "Dict[str, Dict[str, str]] | None" + }, + { + "alias": "provides", + "default": null, + "description": "The setup.py kwargs for the external artifact built from this target.\n\nYou must define `name`. You can also set almost any keyword argument accepted by setup.py in the `setup()` function: (https://packaging.python.org/guides/distributing-packages-using-setuptools/#setup-args).\n\nSee https://www.pantsbuild.org/v2.9/docs/plugins-setup-py for how to write a plugin to dynamically generate kwargs.", + "required": true, + "type_hint": "PythonArtifact" + }, + { + "alias": "generate_setup", + "default": null, + "description": "Whether to generate setup information for this distribution, based on analyzing sources and dependencies. Set to False to use existing setup information, such as existing setup.py, setup.cfg, pyproject.toml files or similar.", + "required": false, + "type_hint": "bool | None" + }, + { + "alias": "wheel", + "default": "True", + "description": "Whether to build a wheel for the distribution.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sdist", + "default": "True", + "description": "Whether to build an sdist for the distribution.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "wheel_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building a wheel.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "sdist_config_settings", + "default": null, + "description": "PEP-517 config settings to pass to the build backend when building an sdist.", + "required": false, + "type_hint": "Dict[str, Iterable[str]] | None" + }, + { + "alias": "repositories", + "default": null, + "description": "List of URL addresses or Twine repository aliases where to publish the Python package.\n\nTwine is used for publishing Python packages, so the address to any kind of repository that Twine supports may be used here.\n\nAliases are prefixed with `@` to refer to a config section in your Twine configuration, such as a `.pypirc` file. Use `@pypi` to upload to the public PyPi repository, which is the default when using Twine directly.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_twine", + "default": "False", + "description": "If true, don't publish this target's packages using Twine.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A publishable Python setuptools distribution (e.g. an sdist or wheel)." + }, + "python_google_cloud_function": { + "alias": "python_google_cloud_function", + "description": "A self-contained Python function suitable for uploading to Google Cloud Function.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-google-cloud-function.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "output_path", + "default": null, + "description": "Where the built asset should be located.\n\nIf undefined, this will use the path to the BUILD file, followed by the target name. For example, `src/python/project:app` would be `src.python.project/app.ext`.\n\nWhen running `./pants package`, this path will be prefixed by `--distdir` (e.g. `dist/`).\n\nWarning: setting this value risks naming collisions with other package targets you may have.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "handler", + "default": null, + "description": "Entry point to the Google Cloud Function handler.\n\nYou can specify a full module like 'path.to.module:handler_func' or use a shorthand to specify a file name, using the same syntax as the `sources` field, e.g. 'cloud_function.py:handler_func'.\n\nYou must use the file name shorthand for file arguments to work with this target.", + "required": true, + "type_hint": "str" + }, + { + "alias": "runtime", + "default": null, + "description": "The identifier of the Google Cloud Function runtime to target (pythonXY). See https://cloud.google.com/functions/docs/concepts/python-runtime.", + "required": true, + "type_hint": "'python37' | 'python38' | 'python39'" + }, + { + "alias": "type", + "default": null, + "description": "The trigger type of the cloud function. Can either be 'event' or 'http'. See https://cloud.google.com/functions/docs/concepts/python-runtime for reference to --trigger-http.", + "required": true, + "type_hint": "'event' | 'http'" + } + ], + "summary": "A self-contained Python function suitable for uploading to Google Cloud Function." + }, + "python_requirement": { + "alias": "python_requirement", + "description": "A Python requirement installable by pip.\n\nThis target is useful when you want to declare Python requirements inline in a BUILD file. If you have a `requirements.txt` file already, you can instead use the macro `python_requirements()` to convert each requirement into a `python_requirement()` target automatically. For Poetry, use `poetry_requirements()`.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-third-party-dependencies.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "requirements", + "default": null, + "description": "A pip-style requirement string, e.g. `[\"Django==3.2.8\"]`.\n\nYou can specify multiple requirements for the same project in order to use environment markers, such as `[\"foo>=1.2,<1.3 ; python_version>'3.6'\", \"foo==0.9 ; python_version<'3'\"]`.\n\nIf the requirement depends on some other requirement to work, such as needing `setuptools` to be built, use the `dependencies` field instead.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "modules", + "default": null, + "description": "The modules this requirement provides (used for dependency inference).\n\nFor example, the requirement `setuptools` provides `[\"setuptools\", \"pkg_resources\", \"easy_install\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/dependency_inference/default_module_mapping.py), and then will default to the normalized project name. For example, the requirement `Django` would default to the module `django`.\n\nMutually exclusive with the `type_stub_modules` field.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "type_stub_modules", + "default": null, + "description": "The modules this requirement provides if the requirement is a type stub (used for dependency inference).\n\nFor example, the requirement `types-requests` provides `[\"requests\"]`.\n\nUsually you can leave this field off. If unspecified, Pants will first look at the default module mapping (https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/dependency_inference/default_module_mapping.py). If not found _and_ the requirement name starts with `types-` or `stubs-`, or ends with `-types` or `-stubs`, will default to that requirement name without the prefix/suffix. For example, `types-requests` would default to `requests`. Otherwise, will be treated like a normal requirement (see the `modules` field).\n\nMutually exclusive with the `modules` field.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A Python requirement installable by pip." + }, + "python_source": { + "alias": "python_source", + "description": "A single Python source file.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A single Python source file." + }, + "python_sources": { + "alias": "python_sources", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nYou can either use this target generator or `python_test_utils` for test utility files like `conftest.py`. They behave identically, but can help to better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.py', '*.pyi', '!test_*.py', '!*_test.py', '!tests.py', '!conftest.py', '!test_*.pyi', '!*_test.pyi', '!tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_test": { + "alias": "python_test", + "description": "A single Python test file, written in either Pytest style or unittest style.\n\nAll test util code, including `conftest.py`, should go into a dedicated `python_source` target and then be included in the `dependencies` field. (You can use the `python_test_utils` target to generate these `python_source` targets.)\n\nSee https://www.pantsbuild.org/v2.9/docs/python-test-goal", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_resolve", + "default": null, + "description": "The resolve from `[python].experimental_resolves_to_lockfiles` to use, if any.\n\nThis field is highly experimental and may change without the normal deprecation policy.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A single Python test file, written in either Pytest style or unittest style." + }, + "python_test_utils": { + "alias": "python_test_utils", + "description": "Generate a `python_source` target for each file in the `sources` field.\n\nThis target generator is intended for test utility files like `conftest.py`, although it behaves identically to the `python_sources` target generator and you can safely use that instead. This target only exists to help you better model and keep separate test support files vs. production files.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('conftest.py', 'test_*.pyi', '*_test.pyi', 'tests.pyi')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.py\": {\"skip_pylint\": True]},\n \"bar.py\": {\"skip_flake8\": True]},\n (\"foo.py\", \"bar.py\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `python_source` target for each file in the `sources` field." + }, + "python_tests": { + "alias": "python_tests", + "description": "Generate a `python_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "interpreter_constraints", + "default": null, + "description": "The Python interpreters this code is compatible with.\n\nEach element should be written in pip-style format, e.g. `CPython==2.7.*` or `CPython>=3.6,<4`. You can leave off `CPython` as a shorthand, e.g. `>=2.7` will be expanded to `CPython>=2.7`.\n\nSpecify more than one element to OR the constraints, e.g. `['PyPy==3.7.*', 'CPython==3.7.*']` means either PyPy 3.7 _or_ CPython 3.7.\n\nIf the field is not set, it will default to the option `[python].interpreter_constraints`.\n\nSee https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility for how these interpreter constraints are merged with the constraints of dependencies.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_resolve", + "default": null, + "description": "The resolve from `[python].experimental_resolves_to_lockfiles` to use, if any.\n\nThis field is highly experimental and may change without the normal deprecation policy.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, will default to `[pytest].timeout_default`; if that option is also unset, then the test will never time out. Will never exceed `[pytest].timeout_maximum`. Only applies if the option `--pytest-timeouts` is set to true (the default).", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "extra_env_vars", + "default": null, + "description": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment. This will be merged with and override values from [test].extra_env_vars.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "sources", + "default": "('test_*.py', '*_test.py', 'tests.py')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `python_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.py\": {\"timeout\": 120]},\n \"bar_test.py\": {\"timeout\": 200]},\n (\"foo_test.py\", \"bar_test.py\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `python_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_autoflake", + "default": "False", + "description": "If true, don't run Autoflake on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pyupgrade", + "default": "False", + "description": "If true, don't run pyupgrade on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_bandit", + "default": "False", + "description": "If true, don't run Bandit on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_black", + "default": "False", + "description": "If true, don't run Black on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_docformatter", + "default": "False", + "description": "If true, don't run Docformatter on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_flake8", + "default": "False", + "description": "If true, don't run Flake8 on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_isort", + "default": "False", + "description": "If true, don't run isort on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_pylint", + "default": "False", + "description": "If true, don't run Pylint on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_yapf", + "default": "False", + "description": "If true, don't run yapf on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_mypy", + "default": "False", + "description": "If true, don't run MyPy on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `python_test` target for each file in the `sources` field." + }, + "relocated_files": { + "alias": "relocated_files", + "description": "Loose files with path manipulation applied.\n\nAllows you to relocate the files at runtime to something more convenient than their actual paths in your project.\n\nFor example, you can relocate `src/resources/project1/data.json` to instead be `resources/data.json`. Your other target types can then add this target to their `dependencies` field, rather than using the original `files` target.\n\nTo remove a prefix:\n\n # Results in `data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources/project1\",\n dest=\"\",\n )\n\nTo add a prefix:\n\n # Results in `images/logo.svg`.\n relocated_files(\n files_targets=[\"//:logo\"],\n src=\"\",\n dest=\"images\",\n )\n\nTo replace a prefix:\n\n # Results in `new_prefix/project1/data.json`.\n relocated_files(\n files_targets=[\"src/resources/project1:target\"],\n src=\"src/resources\",\n dest=\"new_prefix\",\n )\n", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "files_targets", + "default": null, + "description": "Addresses to the original `file` and `files` targets that you want to relocate, such as `['//:json_files']`.\n\nEvery target will be relocated using the same mapping. This means that every target must include the value from the `src` field in their original path.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "src", + "default": null, + "description": "The original prefix that you want to replace, such as `src/resources`.\n\nYou can set this field to the empty string to preserve the original path; the value in the `dest` field will then be added to the beginning of this original path.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dest", + "default": null, + "description": "The new prefix that you want to add to the beginning of the path, such as `data`.\n\nYou can set this field to the empty string to avoid adding any new values to the path; the value in the `src` field will then be stripped, rather than replaced.", + "required": true, + "type_hint": "str" + } + ], + "summary": "Loose files with path manipulation applied." + }, + "resource": { + "alias": "resource", + "description": "A single resource file embedded in a code package and accessed in a location-independent manner.\n\nResources are embedded in code artifacts such as Python wheels or JVM JARs. The sources of a `resources` target are accessed via language-specific resource APIs, such as Python's `pkgutil` or JVM's ClassLoader, via paths relative to the target's source root.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + } + ], + "summary": "A single resource file embedded in a code package and accessed in a location-independent manner." + }, + "resources": { + "alias": "resources", + "description": "Generate a `resource` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": null, + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": true, + "type_hint": "Iterable[str]" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `resource` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.json\": {\"description\": \"our customer model\"]},\n \"bar.json\": {\"description\": \"our product model\"]},\n (\"foo.json\", \"bar.json\"): {\"tags\": [\"overridden\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `resource` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + } + ], + "summary": "Generate a `resource` target for each file in the `sources` field." + }, + "scala_junit_test": { + "alias": "scala_junit_test", + "description": "A single Scala test, run with JUnit.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The name of the resolve to use when building this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A single Scala test, run with JUnit." + }, + "scala_junit_tests": { + "alias": "scala_junit_tests", + "description": "Generate a `scala_junit_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Test.scala',)", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The name of the resolve to use when building this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Generate a `scala_junit_test` target for each file in the `sources` field." + }, + "scala_source": { + "alias": "scala_source", + "description": "A single Scala source file containing application or library code.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The set of resolve names that this target is compatible with.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nEach name must be defined as a resolve in `[jvm].resolves`.\n\n", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A single Scala source file containing application or library code." + }, + "scala_sources": { + "alias": "scala_sources", + "description": "Generate a `scala_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.scala', '!*Test.scala', '!*Spec.scala', '!*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "compatible_resolves", + "default": null, + "description": "The set of resolve names that this target is compatible with.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nEach name must be defined as a resolve in `[jvm].resolves`.\n\n", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_scalafmt", + "default": "False", + "description": "If true, don't run `scalafmt` on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `scala_source` target for each file in the `sources` field." + }, + "scalac_plugin": { + "alias": "scalac_plugin", + "description": "A plugin for `scalac`.\n\nCurrently only thirdparty plugins are supported. To enable a plugin, define this target type, and set the `artifact=` field to the address of a `jvm_artifact` that provides the plugin.\n\nIf the `scalac`-loaded name of the plugin does not match the target's name, additionally set the `plugin_name=` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "artifact", + "default": null, + "description": "The address of a `jvm_artifact` that defines a plugin for `scalac`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "plugin_name", + "default": null, + "description": "The name that `scalac` should use to load the plugin.\n\nIf not set, the plugin name defaults to the target name.", + "required": false, + "type_hint": "str | None" + } + ], + "summary": "A plugin for `scalac`." + }, + "scalatest_test": { + "alias": "scalatest_test", + "description": "A single Scala test, run with Scalatest.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "resolve", + "default": null, + "description": "The name of the resolve to use when building this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A single Scala test, run with Scalatest." + }, + "scalatest_tests": { + "alias": "scalatest_tests", + "description": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala')).", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*Spec.scala', '*Suite.scala')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "resolve", + "default": null, + "description": "The name of the resolve to use when building this target.\n\nIf not defined, will default to `[jvm].default_resolve`.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "experimental_provides_types", + "default": null, + "description": "Signals that the specified types should be fulfilled by these source files during dependency inference.\n\nThis allows for specific types within packages that are otherwise inferred as belonging to `jvm_artifact` targets to be unambiguously inferred as belonging to this first-party source.\n\nIf a given type is defined, at least one source file captured by this target must actually provide that symbol.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "Generate a `scalatest_test` target for each file in the `sources` field (defaults to all files in the directory matching ('*Spec.scala', '*Suite.scala'))." + }, + "shell_source": { + "alias": "shell_source", + "description": "A single Bourne-based shell script, e.g. a Bash script.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A single Bourne-based shell script, e.g. a Bash script." + }, + "shell_sources": { + "alias": "shell_sources", + "description": "Generate a `shell_source` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "sources", + "default": "('*.sh', '!*_test.sh', '!test_*.sh', '!tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shell_source` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo.sh\": {\"skip_shellcheck\": True]},\n \"bar.sh\": {\"skip_shfmt\": True]},\n (\"foo.sh\", \"bar.sh\"): {\"tags\": [\"linter_disabled\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shell_source` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `shell_source` target for each file in the `sources` field." + }, + "shunit2_test": { + "alias": "shunit2_test", + "description": "A single test file for Bourne-based shell scripts using the shunit2 test framework.\n\nTo use, add tests to your file per https://github.com/kward/shunit2/. Specify the shell to run with by either setting the field `shell` or including a shebang. To test the same file with multiple shells, create multiple `shunit2_tests` targets, one for each shell.\n\nPants will automatically download the `shunit2` bash script and add `source ./shunit2` to your test for you. If you already have `source ./shunit2`, Pants will overwrite it to use the correct relative path.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "source", + "default": null, + "description": "A single file that belongs to this target.\n\nPath is relative to the BUILD file's directory, e.g. `source='example.ext'`.", + "required": true, + "type_hint": "str" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "A single test file for Bourne-based shell scripts using the shunit2 test framework." + }, + "shunit2_tests": { + "alias": "shunit2_tests", + "description": "Generate a `shunit2_test` target for each file in the `sources` field.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "sources", + "default": "('*_test.sh', 'test_*.sh', 'tests.sh')", + "description": "A list of files and globs that belong to this target.\n\nPaths are relative to the BUILD file's directory. You can ignore files/globs by prefixing them with `!`.\n\nExample: `sources=['example.ext', 'test_*.ext', '!test_ignore.ext']`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "timeout", + "default": null, + "description": "A timeout (in seconds) used by each test file belonging to this target.\n\nIf unset, the test will never time out.", + "required": false, + "type_hint": "int | None" + }, + { + "alias": "skip_tests", + "default": "False", + "description": "If true, don't run this target's tests.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "shell", + "default": null, + "description": "Which shell to run the tests with. If unspecified, Pants will look for a shebang line.", + "required": false, + "type_hint": "'bash' | 'dash' | 'ksh' | 'pdksh' | 'sh' | 'zsh' | None" + }, + { + "alias": "runtime_package_dependencies", + "default": null, + "description": "Addresses to targets that can be built with the `./pants package` goal and whose resulting artifacts should be included in the test run.\n\nPants will build the artifacts as if you had run `./pants package`. It will include the results in your test's chroot, using the same name they would normally have, but without the `--distdir` prefix (e.g. `dist/`).\n\nYou can include anything that can be built by `./pants package`, e.g. a `pex_binary`, `python_awslambda`, or an `archive`.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "overrides", + "default": null, + "description": "Override the field values for generated `shunit2_test` targets.\n\nExpects a dictionary of relative file paths and globs to a dictionary for the overrides. You may either use a string for a single path / glob, or a string tuple for multiple paths / globs. Each override is a dictionary of field names to the overridden value.\n\nFor example:\n\n```\noverrides={\n \"foo_test.sh\": {\"timeout\": 120]},\n \"bar_test.sh\": {\"timeout\": 200]},\n (\"foo_test.sh\", \"bar_test.sh\"): {\"tags\": [\"slow_tests\"]},\n}\n```\n\nFile paths and globs are relative to the BUILD file's directory. Every overridden file is validated to belong to this target's `sources` field.\n\nIf you'd like to override a field's value for every `shunit2_test` target generated by this target, change the field directly on this target rather than using the `overrides` field.\n\nYou can specify the same file name in multiple keys, so long as you don't override the same field more than one time for the file.", + "required": false, + "type_hint": "Dict[Union[str, Tuple[str, ...]], Dict[str, Any]] | None" + }, + { + "alias": "skip_shellcheck", + "default": "False", + "description": "If true, don't run Shellcheck on this target's code.", + "required": false, + "type_hint": "bool" + }, + { + "alias": "skip_shfmt", + "default": "False", + "description": "If true, don't run shfmt on this target's code.", + "required": false, + "type_hint": "bool" + } + ], + "summary": "Generate a `shunit2_test` target for each file in the `sources` field." + }, + "target": { + "alias": "target", + "description": "A generic target with no specific type.\n\nThis can be used as a generic \"bag of dependencies\", i.e. you can group several different targets into one single target so that your other targets only need to depend on one thing.", + "fields": [ + { + "alias": "tags", + "default": null, + "description": "Arbitrary strings to describe a target.\n\nFor example, you may tag some test targets with 'integration_test' so that you could run `./pants --tag='integration_test' test ::` to only run on targets with that tag.", + "required": false, + "type_hint": "Iterable[str] | None" + }, + { + "alias": "description", + "default": null, + "description": "A human-readable description of the target.\n\nUse `./pants list --documented ::` to see all targets with descriptions.", + "required": false, + "type_hint": "str | None" + }, + { + "alias": "dependencies", + "default": null, + "description": "Addresses to other targets that this target depends on, e.g. ['helloworld/subdir:lib', 'helloworld/main.py:lib', '3rdparty:reqs#django'].\n\nThis augments any dependencies inferred by Pants, such as by analyzing your imports. Use `./pants dependencies` or `./pants peek` on this target to get the final result.\n\nSee https://www.pantsbuild.org/v2.9/docs/targets#target-addresses and https://www.pantsbuild.org/v2.9/docs/targets#target-generation for more about how addresses are formed, including for generated targets. You can also run `./pants list ::` to find all addresses in your project, or `./pants list dir:` to find all addresses defined in that directory.\n\nIf the target is in the same BUILD file, you can leave off the BUILD file path, e.g. `:tgt` instead of `helloworld/subdir:tgt`. For generated first-party addresses, use `./` for the file path, e.g. `./main.py:tgt`; for all other generated targets, use `:tgt#generated_name`.\n\nYou may exclude dependencies by prefixing with `!`, e.g. `['!helloworld/subdir:lib', '!./sibling.txt']`. Ignores are intended for false positives with dependency inference; otherwise, simply leave off the dependency from the BUILD file.", + "required": false, + "type_hint": "Iterable[str] | None" + } + ], + "summary": "A generic target with no specific type." + } + }, + "scope_to_help_info": { + "": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--backend-packages=\"['', '', ...]\"", + "config_key": "backend_packages", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--backend-packages=\"['', '', ...]\"" + ], + "env_var": "PANTS_BACKEND_PACKAGES", + "help": "Register functionality from these backends.\n\nThe backend packages must be present on the PYTHONPATH, typically because they are in the Pants core dist, in a plugin dist, or available as sources in the repo.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--backend-packages" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--backend-packages" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + }, + { + "details": "from env var PANTS_BACKEND_PACKAGES", + "rank": "ENVIRONMENT", + "value": [] + }, + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [ + "pants.backend.awslambda.python", + "pants.backend.codegen.protobuf.python", + "pants.backend.experimental.docker", + "pants.backend.experimental.docker.lint.hadolint", + "pants.backend.experimental.go", + "pants.backend.experimental.java", + "pants.backend.experimental.java.lint.google_java_format", + "pants.backend.experimental.python", + "pants.backend.experimental.python.lint.autoflake", + "pants.backend.experimental.python.lint.pyupgrade", + "pants.backend.experimental.scala", + "pants.backend.experimental.scala.lint.scalafmt", + "pants.backend.google_cloud_function.python", + "pants.backend.plugin_development", + "pants.backend.python", + "pants.backend.python.lint.bandit", + "pants.backend.python.lint.black", + "pants.backend.python.lint.docformatter", + "pants.backend.python.lint.flake8", + "pants.backend.python.lint.isort", + "pants.backend.python.lint.pylint", + "pants.backend.python.lint.yapf", + "pants.backend.python.mixed_interpreter_constraints", + "pants.backend.python.typecheck.mypy", + "pants.backend.shell", + "pants.backend.shell.lint.shellcheck", + "pants.backend.shell.lint.shfmt" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--plugins=\"['', '', ...]\"", + "config_key": "plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--plugins=\"['', '', ...]\"" + ], + "env_var": "PANTS_PLUGINS", + "help": "Allow backends to be loaded from these plugins (usually released through PyPI). The default backends for each plugin will be loaded automatically. Other backends in a plugin can be loaded by listing them in `backend_packages` in the `[GLOBAL]` scope.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]plugins-force-resolve", + "config_key": "plugins_force_resolve", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]plugins-force-resolve" + ], + "env_var": "PANTS_PLUGINS_FORCE_RESOLVE", + "help": "Re-resolve plugins, even if previously resolved.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--plugins-force-resolve", + "--no-plugins-force-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]show-log-target", + "config_key": "show_log_target", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]show-log-target" + ], + "env_var": "PANTS_SHOW_LOG_TARGET", + "help": "Display the target where a log message originates in that log message's output. This can be helpful when paired with --log-levels-by-target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--show-log-target", + "--no-show-log-target" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "log_levels_by_target", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--log-levels-by-target=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_LOG_LEVELS_BY_TARGET", + "help": "Set a more specific logging level for one or more logging targets. The names of logging targets are specified in log strings when the --show-log-target option is set. The logging levels are one of: \"error\", \"warn\", \"info\", \"debug\", \"trace\". All logging targets not specified here use the global log level set with --level. For example, you can set `--log-levels-by-target='{\"workunit_store\": \"info\", \"pants.engine.rules\": \"warn\"}'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--log-levels-by-target" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]log-show-rust-3rdparty", + "config_key": "log_show_rust_3rdparty", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]log-show-rust-3rdparty" + ], + "env_var": "PANTS_LOG_SHOW_RUST_3RDPARTY", + "help": "Whether to show/hide logging done by 3rdparty Rust crates used by the Pants engine.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log-show-rust-3rdparty", + "--no-log-show-rust-3rdparty" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ignore-warnings=\"['', '', ...]\"", + "config_key": "ignore_warnings", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ignore-warnings=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE_WARNINGS", + "help": "Ignore logs and warnings matching these strings.\n\nNormally, Pants will look for literal matches from the start of the log/warning message, but you can prefix the ignore with `$regex$` for Pants to instead treat your string as a regex pattern. For example:\n\n ignore_warnings = [\n \"DEPRECATED: option 'config' in scope 'flake8' will be removed\",\n '$regex$:No files\\s*'\n ]\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ignore-warnings" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-version=", + "config_key": "pants_version", + "default": "2.9.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-version=" + ], + "env_var": "PANTS_VERSION", + "help": "Use this Pants version. Note that Pants only uses this to verify that you are using the requested version, as Pants cannot dynamically change the version it is using once the program is already running.\n\nIf you use the `./pants` script from https://www.pantsbuild.org/v2.9/docs/installation, however, changing the value in your `pants.toml` will cause the new version to be installed and run automatically.\n\nRun `./pants --version` to check what is being used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.9.2" + }, + { + "details": "from env var PANTS_VERSION", + "rank": "ENVIRONMENT", + "value": "2.9.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-bin-name=", + "config_key": "pants_bin_name", + "default": "./pants", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-bin-name=" + ], + "env_var": "PANTS_BIN_NAME", + "help": "The name of the script or binary used to invoke Pants. Useful when printing help messages.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-bin-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-bin-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "./pants" + }, + { + "details": "from env var PANTS_BIN_NAME", + "rank": "ENVIRONMENT", + "value": "/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-workdir=", + "config_key": "pants_workdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pants.d", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-workdir=" + ], + "env_var": "PANTS_WORKDIR", + "help": "Write intermediate logs and output files to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-workdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-workdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/.pants.d" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-physical-workdir-base=", + "config_key": "pants_physical_workdir_base", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-physical-workdir-base=" + ], + "env_var": "PANTS_PHYSICAL_WORKDIR_BASE", + "help": "When set, a base directory in which to store `--pants-workdir` contents. If this option is a set, the workdir will be created as symlink into a per-workspace subdirectory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-physical-workdir-base" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-distdir=", + "config_key": "pants_distdir", + "default": "/tmp/tmp.MpwSc5OGVo/dist", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-distdir=" + ], + "env_var": "PANTS_DISTDIR", + "help": "Write end products, such as the results of `./pants package`, to this dir.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-distdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-distdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + }, + { + "details": "from pants.toml", + "rank": "CONFIG_DEFAULT", + "value": "/tmp/tmp.MpwSc5OGVo/dist" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-subprocessdir=", + "config_key": "pants_subprocessdir", + "default": "/tmp/tmp.MpwSc5OGVo/.pids", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-subprocessdir=" + ], + "env_var": "PANTS_SUBPROCESSDIR", + "help": "The directory to use for tracking subprocess metadata. This should live outside of the dir used by `pants_workdir` to allow for tracking subprocesses that outlive the workdir data.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--pants-subprocessdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp/tmp.MpwSc5OGVo/.pids" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-config-files=\"['', '', ...]\"", + "config_key": "pants_config_files", + "default": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-config-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_CONFIG_FILES", + "help": "Paths to Pants config files. This may only be set through the environment variable `PANTS_CONFIG_FILES` and the command line argument `--pants-config-files`; it will be ignored if in a config file like `pants.toml`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-config-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-config-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/tmp/tmp.MpwSc5OGVo/pants.toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsrc", + "config_key": "pantsrc", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsrc" + ], + "env_var": "PANTS_PANTSRC", + "help": "Use pantsrc files located at the paths specified in the global option `pantsrc_files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsrc", + "--no-pantsrc" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsrc-files=\"[, , ...]\"", + "config_key": "pantsrc_files", + "default": [ + "/etc/pantsrc", + "~/.pants.rc" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsrc-files=\"[, , ...]\"" + ], + "env_var": "PANTS_PANTSRC_FILES", + "help": "Override config with values from these files, using syntax matching that of `--pants-config-files`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsrc-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsrc-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/etc/pantsrc", + "~/.pants.rc" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pythonpath=\"['', '', ...]\"", + "config_key": "pythonpath", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pythonpath=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHONPATH", + "help": "Add these directories to PYTHONPATH to search for plugins. This does not impact the PYTHONPATH used by Pants when running your Python code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pythonpath" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pythonpath" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]verify-config", + "config_key": "verify_config", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]verify-config" + ], + "env_var": "PANTS_VERIFY_CONFIG", + "help": "Verify that all config file values correspond to known options.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--verify-config", + "--no-verify-config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--stats-record-option-scopes=\"['', '', ...]\"", + "config_key": "stats_record_option_scopes", + "default": [ + "*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--stats-record-option-scopes=\"['', '', ...]\"" + ], + "env_var": "PANTS_STATS_RECORD_OPTION_SCOPES", + "help": "Option scopes to record in stats on run completion. Options may be selected by joining the scope and the option with a ^ character, i.e. to get option `pantsd` in the GLOBAL scope, you'd pass `GLOBAL^pantsd`. Add a '*' to the list to capture all known scopes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--stats-record-option-scopes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pants-ignore=\"['', '', ...]\"", + "config_key": "pants_ignore", + "default": [ + ".*/", + "/dist/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pants-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_IGNORE", + "help": "Paths to ignore for all filesystem operations performed by pants (e.g. BUILD file scanning, glob matching, etc). Patterns use the gitignore syntax (https://git-scm.com/docs/gitignore). The `pants_distdir` and `pants_workdir` locations are automatically ignored. `pants_ignore` can be used in tandem with `pants_ignore_use_gitignore`; any rules specified here are applied after rules specified in a .gitignore file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pants-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + ".*/", + "/dist/" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pants-ignore-use-gitignore", + "config_key": "pants_ignore_use_gitignore", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pants-ignore-use-gitignore" + ], + "env_var": "PANTS_IGNORE_USE_GITIGNORE", + "help": "Make use of a root .gitignore file when determining whether to ignore filesystem operations performed by Pants. If used together with `--pants-ignore`, any exclude/include patterns specified there apply after .gitignore rules.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pants-ignore-use-gitignore", + "--no-pants-ignore-use-gitignore" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "-d=, --logdir=", + "config_key": "logdir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-d=", + "--logdir=" + ], + "env_var": "PANTS_LOGDIR", + "help": "Write logs to files under this directory.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "-d", + "--logdir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-timeout-when-multiple-invocations=", + "config_key": "pantsd_timeout_when_multiple_invocations", + "default": 60.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-timeout-when-multiple-invocations=" + ], + "env_var": "PANTS_PANTSD_TIMEOUT_WHEN_MULTIPLE_INVOCATIONS", + "help": "The maximum amount of time to wait for the invocation to start until raising a timeout exception. Because pantsd currently does not support parallel runs, any prior running Pants command must be finished for the current one to start. To never timeout, use the value -1.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--pantsd-timeout-when-multiple-invocations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-max-memory-usage=", + "config_key": "pantsd_max_memory_usage", + "default": "1GiB", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-max-memory-usage=" + ], + "env_var": "PANTS_PANTSD_MAX_MEMORY_USAGE", + "help": "The maximum memory usage of the pantsd process.\n\nWhen the maximum memory is exceeded, the daemon will restart gracefully, although all previous in-memory caching will be lost. Setting too low means that you may miss out on some caching, whereas setting too high may over-consume resources and may result in the operating system killing Pantsd due to memory overconsumption (e.g. via the OOM killer).\n\nYou can suffix with `GiB`, `MiB`, `KiB`, or `B` to indicate the unit, e.g. `2GiB` or `2.12GiB`. A bare number will be in bytes.\n\nThere is at most one pantsd process per workspace.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "typ": "memory_size", + "unscoped_cmd_line_args": [ + "--pantsd-max-memory-usage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1073741824 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]print-stacktrace", + "config_key": "print_stacktrace", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]print-stacktrace" + ], + "env_var": "PANTS_PRINT_STACKTRACE", + "help": "Print the full exception stack trace for any errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--print-stacktrace", + "--no-print-stacktrace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--engine-visualize-to=", + "config_key": "engine_visualize_to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--engine-visualize-to=" + ], + "env_var": "PANTS_ENGINE_VISUALIZE_TO", + "help": "A directory to write execution and rule graphs to as `dot` files. The contents of the directory will be overwritten if any filenames collide.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "typ": "dir_option", + "unscoped_cmd_line_args": [ + "--engine-visualize-to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-pailgun-port=", + "config_key": "pantsd_pailgun_port", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-pailgun-port=" + ], + "env_var": "PANTS_PANTSD_PAILGUN_PORT", + "help": "The port to bind the Pants nailgun server to. Defaults to a random port.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--pantsd-pailgun-port" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pantsd-invalidation-globs=\"['', '', ...]\"", + "config_key": "pantsd_invalidation_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pantsd-invalidation-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_PANTSD_INVALIDATION_GLOBS", + "help": "Filesystem events matching any of these globs will trigger a daemon restart. Pants's own code, plugins, and `--pants-config-files` are inherently invalidated.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--pantsd-invalidation-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-core=", + "config_key": "rule_threads_core", + "default": "max(2, #cores/2)", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-core=" + ], + "env_var": "PANTS_RULE_THREADS_CORE", + "help": "The number of threads to keep active and ready to execute `@rule` logic (see also: `--rule-threads-max`).\n\nValues less than 2 are not currently supported. \n\nThis value is independent of the number of processes that may be spawned in parallel locally (controlled by `--process-execution-local-parallelism`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-core" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-core" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--rule-threads-max=", + "config_key": "rule_threads_max", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--rule-threads-max=" + ], + "env_var": "PANTS_RULE_THREADS_MAX", + "help": "The maximum number of threads to use to execute `@rule` logic. Defaults to a small multiple of `--rule-threads-core`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--rule-threads-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--rule-threads-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-dir=", + "config_key": "local_store_dir", + "default": "/home/josh/.cache/pants/lmdb_store", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-dir=" + ], + "env_var": "PANTS_LOCAL_STORE_DIR", + "help": "Directory to use for the local file store, which stores the results of subprocesses run by Pants.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-store-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/lmdb_store" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-shard-count=", + "config_key": "local_store_shard_count", + "default": 16, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-shard-count=" + ], + "env_var": "PANTS_LOCAL_STORE_SHARD_COUNT", + "help": "The number of LMDB shards created for the local store. This setting also impacts the maximum size of stored files: see `--local-store-files-max-size-bytes` for more information.\n\nBecause LMDB allows only one simultaneous writer per database, the store is split into multiple shards to allow for more concurrent writers. The faster your disks are, the fewer shards you are likely to need for performance.\n\nNB: After changing this value, you will likely want to manually clear the `--local-store-dir` directory to clear the space used by old shard layouts.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-shard-count" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-processes-max-size-bytes=", + "config_key": "local_store_processes_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-processes-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_PROCESSES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing process cache entries. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-processes-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-files-max-size-bytes=", + "config_key": "local_store_files_max_size_bytes", + "default": 256000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-files-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_FILES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing files. Stored below `--local-store-dir`.\n\nNB: This size value bounds the total size of all files, but (due to sharding of the store on disk) it also bounds the per-file size to (VALUE / `--local-store-shard-count`).\n\nThis value doesn't reflect space allocated on disk, or RAM allocated (it may be reflected in VIRT but not RSS). However, the default is lower than you might otherwise choose because macOS creates core dumps that include MMAP'd pages, and setting this too high might cause core dumps to use an unreasonable amount of disk if they are enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-files-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 256000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-store-directories-max-size-bytes=", + "config_key": "local_store_directories_max_size_bytes", + "default": 16000000000, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-store-directories-max-size-bytes=" + ], + "env_var": "PANTS_LOCAL_STORE_DIRECTORIES_MAX_SIZE_BYTES", + "help": "The maximum size in bytes of the local store containing directories. Stored below `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--local-store-directories-max-size-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 16000000000 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--named-caches-dir=", + "config_key": "named_caches_dir", + "default": "/home/josh/.cache/pants/named_caches", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--named-caches-dir=" + ], + "env_var": "PANTS_NAMED_CACHES_DIR", + "help": "Directory to use for named global caches for tools and processes with trusted, concurrency-safe caches.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--named-caches-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--named-caches-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/home/josh/.cache/pants/named_caches" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--local-execution-root-dir=", + "config_key": "local_execution_root_dir", + "default": "/tmp", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--local-execution-root-dir=" + ], + "env_var": "PANTS_LOCAL_EXECUTION_ROOT_DIR", + "help": "Directory to use for local process execution sandboxing.\n\nThe path may be absolute or relative. If the directory is within the build root, be sure to include it in `--pants-ignore`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--local-execution-root-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "/tmp" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ca-certs-path=", + "config_key": "ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ca-certs-path=" + ], + "env_var": "PANTS_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when downloading files required by a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-local-parallelism=", + "config_key": "process_execution_local_parallelism", + "default": "#cores", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-local-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_PARALLELISM", + "help": "Number of concurrent processes that may be executed locally.\n\nThis value is independent of the number of threads that may be used to execute the logic in `@rules` (controlled by `--rule-threads-core`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-local-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 64 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-remote-parallelism=", + "config_key": "process_execution_remote_parallelism", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-remote-parallelism=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_REMOTE_PARALLELISM", + "help": "Number of concurrent processes that may be executed remotely.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--process-execution-remote-parallelism" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--process-execution-cache-namespace=", + "config_key": "process_execution_cache_namespace", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--process-execution-cache-namespace=" + ], + "env_var": "PANTS_PROCESS_EXECUTION_CACHE_NAMESPACE", + "help": "The cache namespace for process execution. Change this value to invalidate every artifact's execution, or to prevent process cache entries from being (re)used for different usecases or users.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--process-execution-cache-namespace" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-enable-nailgun", + "config_key": "process_execution_local_enable_nailgun", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-execution-local-enable-nailgun" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_ENABLE_NAILGUN", + "help": "Whether or not to use nailgun to run JVM requests that are marked as supporting nailgun.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-enable-nailgun", + "--no-process-execution-local-enable-nailgun" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-instance-name=", + "config_key": "remote_instance_name", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-instance-name=" + ], + "env_var": "PANTS_REMOTE_INSTANCE_NAME", + "help": "Name of the remote instance to use by remote caching and remote execution.\n\nThis is used by some remote servers for routing. Consult your remote server for whether this should be set.\n\nYou can also use `--remote-auth-plugin` to provide a plugin to dynamically set this value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-instance-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-instance-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-ca-certs-path=", + "config_key": "remote_ca_certs_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-ca-certs-path=" + ], + "env_var": "PANTS_REMOTE_CA_CERTS_PATH", + "help": "Path to a PEM file containing CA certificates used for verifying secure connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf unspecified, Pants will attempt to auto-discover root CA certificates when TLS is enabled with remote execution and caching.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-oauth-bearer-token-path=", + "config_key": "remote_oauth_bearer_token_path", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-oauth-bearer-token-path=" + ], + "env_var": "PANTS_REMOTE_OAUTH_BEARER_TOKEN_PATH", + "help": "Path to a file containing an oauth token to use for gGRPC connections to `--remote-execution-address` and `--remote-store-address`.\n\nIf specified, Pants will add a header in the format `authorization: Bearer `. You can also manually add this header via `--remote-execution-headers` and `--remote-store-headers`, or use `--remote-auth-plugin` to provide a plugin to dynamically set the relevant headers. Otherwise, no authorization will be performed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-oauth-bearer-token-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-auth-plugin=", + "config_key": "remote_auth_plugin", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-auth-plugin=" + ], + "env_var": "PANTS_REMOTE_AUTH_PLUGIN", + "help": "Path to a plugin to dynamically configure remote caching and execution options.\n\nFormat: `path.to.module:my_func`. Pants will import your module and run your function. Update the `--pythonpath` option to ensure your file is loadable.\n\nThe function should take the kwargs `initial_store_headers: dict[str, str]`, `initial_execution_headers: dict[str, str]`, `options: Options` (from pants.option.options), `env: dict[str, str]`, and `prior_result: AuthPluginResult | None`. It should return an instance of `AuthPluginResult` from `pants.option.global_options`.\n\nPants will replace the headers it would normally use with whatever your plugin returns; usually, you should include the `initial_store_headers` and `initial_execution_headers` in your result so that options like `--remote-store-headers` still work.\n\nIf you return `instance_name`, Pants will replace `--remote-instance-name` with this value.\n\nIf the returned auth state is `AuthPluginState.UNAVAILABLE`, Pants will disable remote caching and execution.\n\nIf Pantsd is in use, `prior_result` will be the previous `AuthPluginResult` returned by your plugin, which allows you to reuse the result. Otherwise, if Pantsd has been restarted or is not used, the `prior_result` will be `None`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-auth-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-address=", + "config_key": "remote_store_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-address=" + ], + "env_var": "PANTS_REMOTE_STORE_ADDRESS", + "help": "The URI of a server used for the remote file store.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-store-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_store_headers", + "default": { + "user-agent": "pants/2.9.2" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_STORE_HEADERS", + "help": "Headers to set on remote store requests.\n\nFormat: header=value. Pants may add additional headers.\n\nSee `--remote-execution-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-store-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.9.2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-bytes=", + "config_key": "remote_store_chunk_bytes", + "default": 1048576, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-bytes=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_BYTES", + "help": "Size in bytes of chunks transferred to/from the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-bytes" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1048576 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-chunk-upload-timeout-seconds=", + "config_key": "remote_store_chunk_upload_timeout_seconds", + "default": 60, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-chunk-upload-timeout-seconds=" + ], + "env_var": "PANTS_REMOTE_STORE_CHUNK_UPLOAD_TIMEOUT_SECONDS", + "help": "Timeout (in seconds) for uploads of individual chunks to the remote file store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-chunk-upload-timeout-seconds" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 60 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-retries=", + "config_key": "remote_store_rpc_retries", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-retries=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_RETRIES", + "help": "Number of times to retry any RPC to the remote store before giving up.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-retries" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-rpc-concurrency=", + "config_key": "remote_store_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_STORE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote store service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-store-batch-api-size-limit=", + "config_key": "remote_store_batch_api_size_limit", + "default": 4194304, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-store-batch-api-size-limit=" + ], + "env_var": "PANTS_REMOTE_STORE_BATCH_API_SIZE_LIMIT", + "help": "The maximum total size of blobs allowed to be sent in a single batch API call to the remote store.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-store-batch-api-size-limit" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4194304 + } + ] + } + }, + { + "choices": [ + "ignore", + "first_only", + "backoff" + ], + "comma_separated_choices": "ignore, first_only, backoff", + "comma_separated_display_args": "--remote-cache-warnings=", + "config_key": "remote_cache_warnings", + "default": "first_only", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-warnings=" + ], + "env_var": "PANTS_REMOTE_CACHE_WARNINGS", + "help": "Whether to log remote cache failures at the `warn` log level.\n\nAll errors not logged at the `warn` level will instead be logged at the `debug` level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "typ": "RemoteCacheWarningsBehavior", + "unscoped_cmd_line_args": [ + "--remote-cache-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "first_only" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-eager-fetch", + "config_key": "remote_cache_eager_fetch", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-eager-fetch" + ], + "env_var": "PANTS_REMOTE_CACHE_EAGER_FETCH", + "help": "Eagerly fetch relevant content from the remote store instead of lazily fetching.\n\nThis may result in worse performance, but reduce the frequency of errors encountered by reducing the surface area of when remote caching is used.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-eager-fetch", + "--no-remote-cache-eager-fetch" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-rpc-concurrency=", + "config_key": "remote_cache_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_CACHE_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote cache service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-cache-read-timeout-millis=", + "config_key": "remote_cache_read_timeout_millis", + "default": 1500, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-cache-read-timeout-millis=" + ], + "env_var": "PANTS_REMOTE_CACHE_READ_TIMEOUT_MILLIS", + "help": "Timeout value for remote cache lookups in milliseconds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-cache-read-timeout-millis" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1500 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-address=", + "config_key": "remote_execution_address", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-address=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_ADDRESS", + "help": "The URI of a server used as a remote execution scheduler.\n\nFormat: `scheme://host:port`. The supported schemes are `grpc` and `grpcs`, i.e. gRPC with TLS enabled. If `grpc` is used, TLS will be disabled.\n\nYou must also set `--remote-store-address`, which will often be the same value.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-address" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--remote-execution-address" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-extra-platform-properties=\"['', '', ...]\"", + "config_key": "remote_execution_extra_platform_properties", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-extra-platform-properties=\"['', '', ...]\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_EXTRA_PLATFORM_PROPERTIES", + "help": "Platform properties to set on remote execution requests. Format: property=value. Multiple values should be specified as multiple occurrences of this flag. Pants itself may add additional platform properties.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--remote-execution-extra-platform-properties" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "remote_execution_headers", + "default": { + "user-agent": "pants/2.9.2" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-headers=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_REMOTE_EXECUTION_HEADERS", + "help": "Headers to set on remote execution requests. Format: header=value. Pants may add additional headers.\n\nSee `--remote-store-headers` as well.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--remote-execution-headers" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "user-agent": "pants/2.9.2" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-overall-deadline-secs=", + "config_key": "remote_execution_overall_deadline_secs", + "default": 3600, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-overall-deadline-secs=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_OVERALL_DEADLINE_SECS", + "help": "Overall timeout in seconds for each remote execution request from time of submission", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-overall-deadline-secs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 3600 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--remote-execution-rpc-concurrency=", + "config_key": "remote_execution_rpc_concurrency", + "default": 128, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--remote-execution-rpc-concurrency=" + ], + "env_var": "PANTS_REMOTE_EXECUTION_RPC_CONCURRENCY", + "help": "The number of concurrent requests allowed to the remote execution service.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--remote-execution-rpc-concurrency" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 128 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]watch-filesystem", + "config_key": "watch_filesystem", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]watch-filesystem" + ], + "env_var": "PANTS_WATCH_FILESYSTEM", + "help": "Set to False if Pants should not watch the filesystem for changes. `pantsd` or `loop` may not be enabled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--watch-filesystem", + "--no-watch-filesystem" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "warn", + "error" + ], + "comma_separated_choices": "warn, error", + "comma_separated_display_args": "--files-not-found-behavior=", + "config_key": "files_not_found_behavior", + "default": "warn", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--files-not-found-behavior=" + ], + "env_var": "PANTS_FILES_NOT_FOUND_BEHAVIOR", + "help": "What to do when files and globs specified in BUILD files, such as in the `sources` field, cannot be found. This happens when the files do not exist on your machine or when they are ignored by the `--pants-ignore` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "typ": "FilesNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--files-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "warn" + } + ] + } + }, + { + "choices": [ + "ignore", + "warn", + "error" + ], + "comma_separated_choices": "ignore, warn, error", + "comma_separated_display_args": "--owners-not-found-behavior=", + "config_key": "owners_not_found_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--owners-not-found-behavior=" + ], + "env_var": "PANTS_OWNERS_NOT_FOUND_BEHAVIOR", + "help": "What to do when file arguments do not have any owning target. This happens when there are no targets whose `sources` fields include the file argument.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "typ": "OwnersNotFoundBehavior", + "unscoped_cmd_line_args": [ + "--owners-not-found-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-patterns=\"['', '', ...]\"", + "config_key": "build_patterns", + "default": [ + "BUILD", + "BUILD.*" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-patterns=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_PATTERNS", + "help": "The naming scheme for BUILD files, i.e. where you define targets.\n\nThis only sets the naming scheme, not the directory paths to look for. To add ignore patterns, use the option `[GLOBAL].build_ignore`.\n\nYou may also need to update the option `[tailor].build_file_name` so that it is compatible with this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "BUILD", + "BUILD.*" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-ignore=\"['', '', ...]\"", + "config_key": "build_ignore", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-ignore=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_IGNORE", + "help": "Paths to ignore when identifying BUILD files.\n\nThis does not affect any other filesystem operations; use `--pants-ignore` for that instead.\n\nPatterns use the gitignore pattern syntax (https://git-scm.com/docs/gitignore).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-ignore" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-ignore" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--build-file-prelude-globs=\"['', '', ...]\"", + "config_key": "build_file_prelude_globs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--build-file-prelude-globs=\"['', '', ...]\"" + ], + "env_var": "PANTS_BUILD_FILE_PRELUDE_GLOBS", + "help": "Python files to evaluate and whose symbols should be exposed to all BUILD files. See https://www.pantsbuild.org/v2.9/docs/macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-file-prelude-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subproject-roots=\"['', '', ...]\"", + "config_key": "subproject_roots", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subproject-roots=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROJECT_ROOTS", + "help": "Paths that correspond with build roots for any subproject that this project depends on.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subproject-roots" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subproject-roots" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--loop-max=", + "config_key": "loop_max", + "default": 4294967296, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--loop-max=" + ], + "env_var": "PANTS_LOOP_MAX", + "help": "The maximum number of times to loop when `--loop` is specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop-max" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--loop-max" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 4294967296 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--streaming-workunits-report-interval=", + "config_key": "streaming_workunits_report_interval", + "default": 1.0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--streaming-workunits-report-interval=" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_REPORT_INTERVAL", + "help": "Interval in seconds between when streaming workunit event receivers will be polled.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--streaming-workunits-report-interval" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 1.0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]streaming-workunits-complete-async", + "config_key": "streaming_workunits_complete_async", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]streaming-workunits-complete-async" + ], + "env_var": "PANTS_STREAMING_WORKUNITS_COMPLETE_ASYNC", + "help": "True if stats recording should be allowed to complete asynchronously when `pantsd` is enabled. When `pantsd` is disabled, stats recording is always synchronous. To reduce data loss, this flag defaults to false inside of containers, such as when run with Docker.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--streaming-workunits-complete-async", + "--no-streaming-workunits-complete-async" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": [ + "trace", + "debug", + "info", + "warn", + "error" + ], + "comma_separated_choices": "trace, debug, info, warn, error", + "comma_separated_display_args": "-l=, --level=", + "config_key": "level", + "default": "info", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "-l=", + "--level=" + ], + "env_var": "PANTS_LEVEL", + "help": "Set the logging level.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "-l", + "--level" + ], + "typ": "LogLevel", + "unscoped_cmd_line_args": [ + "-l", + "--level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "info" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--spec-files=\"['', '', ...]\"", + "config_key": "spec_files", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--spec-files=\"['', '', ...]\"" + ], + "env_var": "PANTS_SPEC_FILES", + "help": "Read additional specs (target addresses, files, and/or globs), one per line, from these files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--spec-files" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--spec-files" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pantsd", + "config_key": "pantsd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pantsd" + ], + "env_var": "PANTS_PANTSD", + "help": "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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--pantsd", + "--no-pantsd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]concurrent", + "config_key": "concurrent", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]concurrent" + ], + "env_var": "PANTS_CONCURRENT", + "help": "Enable concurrent runs of Pants. Without this enabled, Pants will start up all concurrent invocations (e.g. in other terminals) without pantsd. Enabling this option requires parallel Pants invocations to block on the first.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--concurrent", + "--no-concurrent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]local-cache", + "config_key": "local_cache", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]local-cache" + ], + "env_var": "PANTS_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--local-cache", + "--no-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-cleanup", + "config_key": "process_cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]process-cleanup" + ], + "env_var": "PANTS_PROCESS_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-cleanup", + "--no-process-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-execution", + "config_key": "remote_execution", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-execution" + ], + "env_var": "PANTS_REMOTE_EXECUTION", + "help": "Enables remote workers for increased parallelism. (Alpha)\n\nAlternatively, you can use `--remote-cache-read` and `--remote-cache-write` to still run everything locally, but to use a remote cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-execution", + "--no-remote-execution" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-read", + "config_key": "remote_cache_read", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-read" + ], + "env_var": "PANTS_REMOTE_CACHE_READ", + "help": "Whether to enable reading from a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-read", + "--no-remote-cache-read" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]remote-cache-write", + "config_key": "remote_cache_write", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]remote-cache-write" + ], + "env_var": "PANTS_REMOTE_CACHE_WRITE", + "help": "Whether to enable writing results to a remote cache.\n\nThis cannot be used at the same time as `--remote-execution`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--remote-cache-write", + "--no-remote-cache-write" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]colors", + "config_key": "colors", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]colors" + ], + "env_var": "PANTS_COLORS", + "help": "Whether Pants should use colors in output or not. This may also impact whether some tools Pants runs use color.\n\nWhen unset, this value defaults based on whether the output destination supports color.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--colors", + "--no-colors" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dynamic-ui", + "config_key": "dynamic_ui", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dynamic-ui" + ], + "env_var": "PANTS_DYNAMIC_UI", + "help": "Display a dynamically-updating console UI as Pants runs. This is true by default if Pants detects a TTY and there is no 'CI' environment variable indicating that Pants is running in a continuous integration environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dynamic-ui", + "--no-dynamic-ui" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"", + "config_key": "tag", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tag=\"[[+-]tag1,tag2,..., [+-]tag1,tag2,..., ...]\"" + ], + "env_var": "PANTS_TAG", + "help": "Include only targets with these tags (optional '+' prefix) or without these tags ('-' prefix). See https://www.pantsbuild.org/v2.9/docs/advanced-target-selection.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tag" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--exclude-target-regexp=\"[, , ...]\"", + "config_key": "exclude_target_regexp", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--exclude-target-regexp=\"[, , ...]\"" + ], + "env_var": "PANTS_EXCLUDE_TARGET_REGEXP", + "help": "Exclude targets that match these regexes. This does not impact file arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--exclude-target-regexp" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]loop", + "config_key": "loop", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]loop" + ], + "env_var": "PANTS_LOOP", + "help": "Run goals continuously as file changes are detected.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--loop", + "--no-loop" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cache", + "config_key": "process_execution_local_cache", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.10.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]process-execution-local-cache" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CACHE", + "help": "Whether to cache process executions in a local cache persisted to disk at `--local-store-dir`.", + "removal_hint": "Use `--local-cache`, which behaves the same.", + "removal_version": "2.10.0.dev0", + "scoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cache", + "--no-process-execution-local-cache" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]process-execution-local-cleanup", + "config_key": "process_execution_local_cleanup", + "default": true, + "deprecated_message": "Deprecated, will be removed in version: 2.10.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--[no-]process-execution-local-cleanup" + ], + "env_var": "PANTS_PROCESS_EXECUTION_LOCAL_CLEANUP", + "help": "If false, Pants will not clean up local directories used as chroots for running processes. Pants will log their location so that you can inspect the chroot, and run the `__run.sh` script to recreate the process using the same argv and environment variables used by Pants. This option is useful for debugging.", + "removal_hint": "Use `--process-cleanup`, which behaves the same.", + "removal_version": "2.10.0.dev0", + "scoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--process-execution-local-cleanup", + "--no-process-execution-local-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "description": "Options to control the overall behavior of Pants.", + "is_goal": false, + "scope": "" + }, + "anonymous-telemetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]anonymous-telemetry-enabled", + "config_key": "enabled", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]anonymous-telemetry-enabled" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_ENABLED", + "help": "Whether to send anonymous telemetry to the Pants project.\nTelemetry is sent asynchronously, with silent failure, and does not impact build times or outcomes.\nSee https://www.pantsbuild.org/v2.9/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-enabled", + "--no-anonymous-telemetry-enabled" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--enabled", + "--no-enabled" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--anonymous-telemetry-repo-id=", + "config_key": "repo_id", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--anonymous-telemetry-repo-id=" + ], + "env_var": "PANTS_ANONYMOUS_TELEMETRY_REPO_ID", + "help": "An anonymized ID representing this repo.\nFor private repos, you likely want the ID to not be derived from, or algorithmically convertible to, anything identifying the repo.\nFor public repos the ID may be visible in that repo's config file, so anonymity of the repo is not guaranteed (although user anonymity is always guaranteed).\nSee https://www.pantsbuild.org/v2.9/docs/anonymous-telemetry for details.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--anonymous-telemetry-repo-id" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--repo-id" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options related to sending anonymous stats to the Pants project, to aid development.", + "is_goal": false, + "scope": "anonymous-telemetry" + }, + "autoflake": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-version=", + "config_key": "version", + "default": "autoflake==1.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-version=" + ], + "env_var": "PANTS_AUTOFLAKE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake==1.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-lockfile=" + ], + "env_var": "PANTS_AUTOFLAKE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/lint/autoflake/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=autoflake`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-console-script=", + "config_key": "console_script", + "default": "autoflake", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-console-script=" + ], + "env_var": "PANTS_AUTOFLAKE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "autoflake" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-entry-point=" + ], + "env_var": "PANTS_AUTOFLAKE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]autoflake-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]autoflake-skip" + ], + "env_var": "PANTS_AUTOFLAKE_SKIP", + "help": "Don't use Autoflake when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-skip", + "--no-autoflake-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--autoflake-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--autoflake-args=\"[, , ...]\"" + ], + "env_var": "PANTS_AUTOFLAKE_ARGS", + "help": "Arguments to pass directly to Autoflake, e.g. `--autoflake-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--autoflake-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Autoflake Python code formatter (https://github.com/myint/autoflake).", + "is_goal": false, + "scope": "autoflake" + }, + "bandit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-version=", + "config_key": "version", + "default": "bandit>=1.7.0,<1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-version=" + ], + "env_var": "PANTS_BANDIT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit>=1.7.0,<1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "setuptools", + "GitPython==3.1.18" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BANDIT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "setuptools", + "GitPython==3.1.18" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-lockfile=" + ], + "env_var": "PANTS_BANDIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/lint/bandit/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=bandit`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-console-script=", + "config_key": "console_script", + "default": "bandit", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-console-script=" + ], + "env_var": "PANTS_BANDIT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "bandit" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-entry-point=" + ], + "env_var": "PANTS_BANDIT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-config=" + ], + "env_var": "PANTS_BANDIT_CONFIG", + "help": "Path to a Bandit YAML config file (https://bandit.readthedocs.io/en/latest/config.html).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]bandit-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]bandit-skip" + ], + "env_var": "PANTS_BANDIT_SKIP", + "help": "Don't use Bandit when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-skip", + "--no-bandit-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--bandit-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--bandit-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BANDIT_ARGS", + "help": "Arguments to pass directly to Bandit, e.g. `--bandit-args=\"--skip B101,B308 --confidence\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--bandit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A tool for finding security issues in Python code (https://bandit.readthedocs.io).", + "is_goal": false, + "scope": "bandit" + }, + "black": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-version=", + "config_key": "version", + "default": "black==21.12b0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-version=" + ], + "env_var": "PANTS_BLACK_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black==21.12b0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6.2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_BLACK_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6.2" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-lockfile=" + ], + "env_var": "PANTS_BLACK_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/lint/black/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=black`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-console-script=", + "config_key": "console_script", + "default": "black", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-console-script=" + ], + "env_var": "PANTS_BLACK_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "black" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-entry-point=" + ], + "env_var": "PANTS_BLACK_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-config=" + ], + "env_var": "PANTS_BLACK_CONFIG", + "help": "Path to a TOML config file understood by Black (https://github.com/psf/black#configuration-format).\n\nSetting this option will disable `[black].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-config-discovery" + ], + "env_var": "PANTS_BLACK_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant pyproject.toml config files during runs.\n\nUse `[black].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-config-discovery", + "--no-black-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]black-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]black-skip" + ], + "env_var": "PANTS_BLACK_SKIP", + "help": "Don't use Black when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-skip", + "--no-black-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--black-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--black-args=\"[, , ...]\"" + ], + "env_var": "PANTS_BLACK_ARGS", + "help": "Arguments to pass directly to Black, e.g. `--black-args=\"--target-version=py37 --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--black-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Black Python code formatter (https://black.readthedocs.io/).", + "is_goal": false, + "scope": "black" + }, + "changed": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-since=", + "config_key": "since", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-since=" + ], + "env_var": "PANTS_CHANGED_SINCE", + "help": "Calculate changes since this Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-since" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--since" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--changed-diffspec=", + "config_key": "diffspec", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-diffspec=" + ], + "env_var": "PANTS_CHANGED_DIFFSPEC", + "help": "Calculate changes contained within a given Git spec (commit range/SHA/ref).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-diffspec" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--diffspec" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": [ + "none", + "direct", + "transitive" + ], + "comma_separated_choices": "none, direct, transitive", + "comma_separated_display_args": "--changed-dependees=", + "config_key": "dependees", + "default": "none", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--changed-dependees=" + ], + "env_var": "PANTS_CHANGED_DEPENDEES", + "help": "Include direct or transitive dependees of changed targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--changed-dependees" + ], + "typ": "DependeesOption", + "unscoped_cmd_line_args": [ + "--dependees" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "none" + } + ] + } + } + ], + "deprecated": [], + "description": "Tell Pants to detect what files and targets have changed from Git.\n\nSee https://www.pantsbuild.org/v2.9/docs/advanced-target-selection.", + "is_goal": false, + "scope": "changed" + }, + "check": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "scope": "check" + }, + "cli": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--cli-alias=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_CLI_ALIAS", + "help": "Register command line aliases.\nExample:\n\n [cli.alias]\n green = \"fmt lint check\"\n all-changed = \"--changed-since=HEAD --changed-dependees=transitive\"\n\nThis would allow you to run `./pants green all-changed`, which is shorthand for `./pants fmt lint check --changed-since=HEAD --changed-dependees=transitive`.\n\nNotice: this option must be placed in a config file (e.g. `pants.toml` or `pantsrc`) to have any effect.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--cli-alias" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Options for configuring CLI behavior, such as command line aliases.", + "is_goal": false, + "scope": "cli" + }, + "count-loc": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Count lines of code.", + "is_goal": true, + "scope": "count-loc" + }, + "coursier": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-version=", + "config_key": "version", + "default": "v2.0.16-169-g194ebc55c", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-version=" + ], + "env_var": "PANTS_COURSIER_VERSION", + "help": "Use this version of coursier.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.0.16-169-g194ebc55c" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.0.16-169-g194ebc55c|linux_arm64 |da38c97d55967505b8454c20a90370c518044829398b9bce8b637d194d79abb3|18114472", + "v2.0.16-169-g194ebc55c|linux_x86_64|4c61a634c4bd2773b4543fe0fc32210afd343692891121cddb447204b48672e8|18486946", + "v2.0.16-169-g194ebc55c|macos_arm64 |15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182", + "v2.0.16-169-g194ebc55c|macos_x86_64|15bce235d223ef1d022da30b67b4c64e9228d236b876c834b64e029bbe824c6f|17957182" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--coursier-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-use-unsupported-version=" + ], + "env_var": "PANTS_COURSIER_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of coursier is not supported.\n\nSupported coursier versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-template=", + "config_key": "url_template", + "default": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-template=" + ], + "env_var": "PANTS_COURSIER_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.9/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/coursier/coursier/releases/download/{version}/cs-{platform}.gz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_COURSIER_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "aarch64-pc-linux", + "linux_x86_64": "x86_64-pc-linux", + "macos_arm64": "x86_64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_REPOS", + "help": "Maven style repositories to resolve artifacts from.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://maven-central.storage-download.googleapis.com/maven2", + "https://repo1.maven.org/maven2" + ] + } + ] + } + } + ], + "deprecated": [], + "description": "A dependency resolver for the Maven ecosystem.", + "is_goal": false, + "scope": "coursier" + }, + "coursier-resolve": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coursier-resolve-names=\"['', '', ...]\"", + "config_key": "names", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coursier-resolve-names=\"['', '', ...]\"" + ], + "env_var": "PANTS_COURSIER_RESOLVE_NAMES", + "help": "A list of resolve names to resolve.\n\nEach name must be defined as a resolve in `[jvm].resolves`.\n\nIf not provided, resolve all known resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coursier-resolve-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Generate a lockfile by resolving JVM dependencies.", + "is_goal": true, + "scope": "coursier-resolve" + }, + "coverage-py": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-version=", + "config_key": "version", + "default": "coverage[toml]>=5.5,<5.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-version=" + ], + "env_var": "PANTS_COVERAGE_PY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage[toml]>=5.5,<5.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-lockfile=" + ], + "env_var": "PANTS_COVERAGE_PY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/subsystems/coverage_py_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=coverage-py`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-console-script=", + "config_key": "console_script", + "default": "coverage", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-console-script=" + ], + "env_var": "PANTS_COVERAGE_PY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "coverage" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-entry-point=" + ], + "env_var": "PANTS_COVERAGE_PY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-output-dir=", + "config_key": "output_dir", + "default": "dist/coverage/python", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-output-dir=" + ], + "env_var": "PANTS_COVERAGE_PY_OUTPUT_DIR", + "help": "Path to write the Pytest Coverage report to. Must be relative to build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-output-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dist/coverage/python" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-config=" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG", + "help": "Path to an INI or TOML config file understood by coverage.py (https://coverage.readthedocs.io/en/stable/config.html).\n\nSetting this option will disable `[coverage-py].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-config-discovery" + ], + "env_var": "PANTS_COVERAGE_PY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.coveragerc`, `setup.cfg`, `tox.ini`, and `pyproject.toml`).\n\nUse `[coverage-py].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-config-discovery", + "--no-coverage-py-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-filter=\"['', '', ...]\"", + "config_key": "filter", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-filter=\"['', '', ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_FILTER", + "help": "A list of Python modules or filesystem paths to use in the coverage report, e.g. `['helloworld_test', 'helloworld/util/dirutil'].\n\nBoth modules and directory paths are recursive: any submodules or child paths, respectively, will be included.\n\nIf you leave this off, the coverage report will include every file in the transitive closure of the address/file arguments; for example, `test ::` will include every Python file in your project, whereas `test project/app_test.py` will include `app_test.py` and any of its transitive dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-filter" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--filter" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "console", + "xml", + "html", + "raw", + "json" + ], + "comma_separated_choices": "console, xml, html, raw, json", + "comma_separated_display_args": "--coverage-py-report=\"[, , ...]\"", + "config_key": "report", + "default": [ + "console" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-report=\"[, , ...]\"" + ], + "env_var": "PANTS_COVERAGE_PY_REPORT", + "help": "Which coverage report type(s) to emit.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-report" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--report" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "console" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]coverage-py-global-report", + "config_key": "global_report", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]coverage-py-global-report" + ], + "env_var": "PANTS_COVERAGE_PY_GLOBAL_REPORT", + "help": "If true, Pants will generate a global coverage report.\n\nThe global report will include all Python source files in the workspace and not just those depended on by the tests that were run.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-global-report", + "--no-coverage-py-global-report" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--global-report", + "--no-global-report" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--coverage-py-fail-under=", + "config_key": "fail_under", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--coverage-py-fail-under=" + ], + "env_var": "PANTS_COVERAGE_PY_FAIL_UNDER", + "help": "Fail if the total combined coverage percentage for all tests is less than this number.\n\nUse this instead of setting fail_under in a coverage.py config file, as the config will apply to each test separately, while you typically want this to apply to the combined coverage for all tests run.\n\nNote that you must generate at least one (non-raw) coverage report for this check to trigger.\n\nNote also that if you specify a non-integral value, you must also set [report] precision properly in the coverage.py config file to make use of the decimal places. See https://coverage.readthedocs.io/en/latest/config.html .", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--coverage-py-fail-under" + ], + "typ": "float", + "unscoped_cmd_line_args": [ + "--fail-under" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for Python test coverage measurement.", + "is_goal": false, + "scope": "coverage-py" + }, + "dependees": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-output-file=" + ], + "env_var": "PANTS_DEPENDEES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependees-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependees-sep=" + ], + "env_var": "PANTS_DEPENDEES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-transitive" + ], + "env_var": "PANTS_DEPENDEES_TRANSITIVE", + "help": "List all transitive dependees. If unspecified, list direct dependees only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-transitive", + "--no-dependees-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependees-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependees-closed" + ], + "env_var": "PANTS_DEPENDEES_CLOSED", + "help": "Include the input targets in the output, along with the dependees.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependees-closed", + "--no-dependees-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all targets that depend on any of the input files/targets.", + "is_goal": true, + "scope": "dependees" + }, + "dependencies": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-output-file=" + ], + "env_var": "PANTS_DEPENDENCIES_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dependencies-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dependencies-sep=" + ], + "env_var": "PANTS_DEPENDENCIES_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-transitive" + ], + "env_var": "PANTS_DEPENDENCIES_TRANSITIVE", + "help": "List all transitive dependencies. If unspecified, list direct dependencies only.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-transitive", + "--no-dependencies-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]dependencies-closed", + "config_key": "closed", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]dependencies-closed" + ], + "env_var": "PANTS_DEPENDENCIES_CLOSED", + "help": "Include the input targets in the output, along with the dependencies.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dependencies-closed", + "--no-dependencies-closed" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--closed", + "--no-closed" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List the dependencies of the input files/targets.", + "is_goal": true, + "scope": "dependencies" + }, + "docformatter": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-version=", + "config_key": "version", + "default": "docformatter>=1.4,<1.5", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-version=" + ], + "env_var": "PANTS_DOCFORMATTER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter>=1.4,<1.5" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-lockfile=" + ], + "env_var": "PANTS_DOCFORMATTER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/lint/docformatter/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=docformatter`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-console-script=", + "config_key": "console_script", + "default": "docformatter", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-console-script=" + ], + "env_var": "PANTS_DOCFORMATTER_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "docformatter" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-entry-point=" + ], + "env_var": "PANTS_DOCFORMATTER_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]docformatter-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]docformatter-skip" + ], + "env_var": "PANTS_DOCFORMATTER_SKIP", + "help": "Don't use docformatter when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-skip", + "--no-docformatter-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docformatter-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docformatter-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCFORMATTER_ARGS", + "help": "Arguments to pass directly to docformatter, e.g. `--docformatter-args=\"--wrap-summaries=100 --pre-summary-newline\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docformatter-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python docformatter tool (https://github.com/myint/docformatter).", + "is_goal": false, + "scope": "docformatter" + }, + "docker": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-env-vars=\"[, , ...]\"", + "config_key": "env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-env-vars=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_ENV_VARS", + "help": "Environment variables to set for `docker` invocations.\n\nEntries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "registries", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-registries=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOCKER_REGISTRIES", + "help": "Configure Docker registries. The schema for a registry entry is as follows:\n\n {\n \"registry-alias\": {\n \"address\": \"registry-domain:port\",\n \"default\": bool,\n },\n ...\n }\n\nIf no registries are provided in a `docker_image` target, then all default addresses will be used, if any.\nThe `docker_image.registries` may be provided with a list of registry addresses and registry aliases prefixed with `@` to be used instead of the defaults.\nA configured registry is marked as default either by setting `default = true` or with an alias of `\"default\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-registries" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--registries" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-default-repository=", + "config_key": "default_repository", + "default": "{name}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-default-repository=" + ], + "env_var": "PANTS_DOCKER_DEFAULT_REPOSITORY", + "help": "Configure the default repository name used in the Docker image tag.\n\nThe value is formatted and may reference these variables:\n\n * name\n * directory\n * parent_directory\n\nExample: `--default-repository=\"{directory}/{name}\"`.\n\nThe `name` variable is the `docker_image`'s target name, `directory` and `parent_directory` are the name of the directory in which the BUILD file is for the target, and its parent directory respectively.\n\nUse the `repository` field to set this value directly on a `docker_image` target.\nAny registries or tags are added to the image name as required, and should not be part of the repository name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-default-repository" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-repository" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "{name}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-args=\"[, , ...]\"", + "config_key": "build_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_BUILD_ARGS", + "help": "Global build arguments (for Docker `--build-arg` options) to use for all `docker build` invocations.\n\nEntries are either strings in the form `ARG_NAME=value` to set an explicit value; or just `ARG_NAME` to copy the value from Pants's own environment.\n\nExample:\n\n [docker]\n build_args = [\"VAR1=value\", \"VAR2\"]\n\nUse the `extra_build_args` field on a `docker_image` target for additional image specific build arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--build-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-build-target-stage=", + "config_key": "build_target_stage", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-build-target-stage=" + ], + "env_var": "PANTS_DOCKER_BUILD_TARGET_STAGE", + "help": "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`.\n\nThis is useful to provide from the command line, to specify the target stage to build for at execution time.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-build-target-stage" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-target-stage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--docker-run-args=\"[, , ...]\"", + "config_key": "run_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--docker-run-args=\"[, , ...]\"" + ], + "env_var": "PANTS_DOCKER_RUN_ARGS", + "help": "Additional arguments to use for `docker run` invocations.\n\nExample:\n\n $ ./pants run --docker-run-args=\"-p 127.0.0.1:80:8080/tcp --name demo\" src/example:image -- [image entrypoint args]\n\nTo provide the top-level options to the `docker` client, use `[docker].env_vars` to configure the [Environment variables](https://docs.docker.com/engine/reference/commandline/cli/#environment-variables) as appropriate.\n\nThe arguments for the image entrypoint may be passed on the command line after a double dash (`--`), or using the `--run-args` option.\n\nDefaults to `--interactive --tty` when stdout is connected to a terminal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--docker-run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--run-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Options for interacting with Docker.", + "is_goal": false, + "scope": "docker" + }, + "dockerfile-parser": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-version=", + "config_key": "version", + "default": "dockerfile==3.2.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-version=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "dockerfile==3.2.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--dockerfile-parser-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--dockerfile-parser-lockfile=" + ], + "env_var": "PANTS_DOCKERFILE_PARSER_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/docker/subsystems/dockerfile_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=dockerfile-parser`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--dockerfile-parser-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Used to parse Dockerfile build specs to infer their dependencies.", + "is_goal": false, + "scope": "dockerfile-parser" + }, + "download-pex-bin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-version=", + "config_key": "version", + "default": "v2.1.73", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_VERSION", + "help": "Use this version of pex.\n\nSupported pex versions: >=2.1.73,<3.0", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.1.73" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.1.73|macos_arm64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|macos_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|linux_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.1.73|macos_arm64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|macos_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175", + "v2.1.73|linux_x86_64|0f30b06c02743393b745497580a410d28055b0de022a27cbb8e460845a6ba1c9|3723175" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--download-pex-bin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-use-unsupported-version=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of pex is not supported.\n\nSupported pex versions: >=2.1.73,<3.0\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-template=", + "config_key": "url_template", + "default": "https://github.com/pantsbuild/pex/releases/download/{version}/pex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-template=" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.9/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/pantsbuild/pex/releases/download/{version}/pex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--download-pex-bin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_DOWNLOAD_PEX_BIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--download-pex-bin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The PEX (Python EXecutable) tool (https://github.com/pantsbuild/pex).", + "is_goal": false, + "scope": "download-pex-bin" + }, + "export": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Export Pants data for use in other tools, such as IDEs.", + "is_goal": true, + "scope": "export" + }, + "export-codegen": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Write generated files to `dist/codegen` for use outside of Pants.", + "is_goal": true, + "scope": "export-codegen" + }, + "filedeps": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-output-file=" + ], + "env_var": "PANTS_FILEDEPS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filedeps-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filedeps-sep=" + ], + "env_var": "PANTS_FILEDEPS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-absolute", + "config_key": "absolute", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-absolute" + ], + "env_var": "PANTS_FILEDEPS_ABSOLUTE", + "help": "If True, output with absolute path. If unspecified, output with path relative to the build root.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-absolute", + "--no-filedeps-absolute" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--absolute", + "--no-absolute" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-globs", + "config_key": "globs", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-globs" + ], + "env_var": "PANTS_FILEDEPS_GLOBS", + "help": "Instead of outputting filenames, output the original globs used in the BUILD file. This will not include exclude globs (i.e. globs that start with `!`).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-globs", + "--no-filedeps-globs" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--globs", + "--no-globs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]filedeps-transitive", + "config_key": "transitive", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]filedeps-transitive" + ], + "env_var": "PANTS_FILEDEPS_TRANSITIVE", + "help": "If True, list files from all dependencies, including transitive dependencies. If unspecified, only list files from the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filedeps-transitive", + "--no-filedeps-transitive" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--transitive", + "--no-transitive" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "List all source and BUILD files a target depends on.", + "is_goal": true, + "scope": "filedeps" + }, + "filter": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-output-file=" + ], + "env_var": "PANTS_FILTER_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-sep=" + ], + "env_var": "PANTS_FILTER_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"", + "config_key": "target_type", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-target-type=\"[[+-]type1,type2,..., [+-]type1,type2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TARGET_TYPE", + "help": "Filter on these target types, e.g. `resources` or `python_sources`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-target-type" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--target-type" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": [ + "all", + "file", + "BUILD" + ], + "comma_separated_choices": "all, file, BUILD", + "comma_separated_display_args": "--filter-granularity=", + "config_key": "granularity", + "default": "all", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-granularity=" + ], + "env_var": "PANTS_FILTER_GRANULARITY", + "help": "Filter to rendering only targets declared in BUILD files, only file-level targets, or all targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-granularity" + ], + "typ": "TargetGranularity", + "unscoped_cmd_line_args": [ + "--granularity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "all" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "address_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-address-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_ADDRESS_REGEX", + "help": "Filter on target addresses matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-address-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--address-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"", + "config_key": "tag_regex", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--filter-tag-regex=\"[[+-]regex1,regex2,..., [+-]regex1,regex2,..., ...]\"" + ], + "env_var": "PANTS_FILTER_TAG_REGEX", + "help": "Filter on targets with tags matching these regexes.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--filter-tag-regex" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--tag-regex" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Filter the input targets based on various criteria.\n\nMost 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 criteria in the list. A '-' prefix inverts the sense of the entire comma-separated list, so that a target passes the filter only if it matches none of the criteria in the list.\n\nEach of the filtering options may be specified multiple times, with an implied logical AND between them.", + "is_goal": true, + "scope": "filter" + }, + "flake8": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-version=", + "config_key": "version", + "default": "flake8>=3.9.2,<4.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-version=" + ], + "env_var": "PANTS_FLAKE8_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8>=3.9.2,<4.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_FLAKE8_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-lockfile=" + ], + "env_var": "PANTS_FLAKE8_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/lint/flake8/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=flake8`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-console-script=", + "config_key": "console_script", + "default": "flake8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-console-script=" + ], + "env_var": "PANTS_FLAKE8_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "flake8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-entry-point=" + ], + "env_var": "PANTS_FLAKE8_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-config=" + ], + "env_var": "PANTS_FLAKE8_CONFIG", + "help": "Path to an INI config file understood by Flake8 (https://flake8.pycqa.org/en/latest/user/configuration.html).\n\nSetting this option will disable `[flake8].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-config-discovery" + ], + "env_var": "PANTS_FLAKE8_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.flake8`, `flake8`, `setup.cfg`, and `tox.ini`).\n\nUse `[flake8].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-config-discovery", + "--no-flake8-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]flake8-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]flake8-skip" + ], + "env_var": "PANTS_FLAKE8_SKIP", + "help": "Don't use Flake8 when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-skip", + "--no-flake8-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--flake8-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--flake8-args=\"[, , ...]\"" + ], + "env_var": "PANTS_FLAKE8_ARGS", + "help": "Arguments to pass directly to Flake8, e.g. `--flake8-args=\"--ignore E123,W456 --enable-extensions H111\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--flake8-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Flake8 Python linter (https://flake8.pycqa.org/).", + "is_goal": false, + "scope": "flake8" + }, + "fmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]fmt-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]fmt-per-file-caching" + ], + "env_var": "PANTS_FMT_PER_FILE_CACHING", + "help": "Rather than formatting all files in a single batch, format each file as a separate process.\n\nWhy 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--fmt-per-file-caching", + "--no-fmt-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Autoformat source code.", + "is_goal": true, + "scope": "fmt" + }, + "generate-lockfiles": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-custom-command=", + "config_key": "custom_command", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-custom-command=" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_CUSTOM_COMMAND", + "help": "If set, lockfile headers will say to run this command to regenerate the lockfile, rather than running `./pants generate-lockfiles --resolve=` like normal.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-custom-command" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--custom-command" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for the different lockfiles used in your project. For your own code's dependencies, these come from the option `[python].experimental_resolves_to_lockfiles`. For tool lockfiles, resolve names are the options scope for that tool such as `black`, `pytest`, and `mypy-protobuf`.\n\nFor example, you can run `./pants generate-lockfiles --resolve=black --resolve=pytest --resolve=data-science` to only generate lockfiles for those two tools and your resolve named `data-science`.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--generate-lockfiles-resolve" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Generate lockfiles for Python third-party dependencies.", + "is_goal": true, + "scope": "generate-lockfiles" + }, + "generate-user-lockfile": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Generate a lockfile for Python user requirements (experimental).", + "is_goal": true, + "scope": "generate-user-lockfile" + }, + "go-test": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--go-test-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--go-test-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_GO_TEST_ARGS", + "help": "Arguments to pass directly to the Go test binary, e.g. `--go-test-args=\"-run TestFoo -v\"`.\n\nKnown Go test options will be transformed into the form expected by the test binary, e.g. `-v` becomes `-test.v`. Run `go help testflag` from the Go SDK to learn more about the options supported by Go test binaries.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--go-test-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Options for Go tests.", + "is_goal": false, + "scope": "go-test" + }, + "gofmt": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]gofmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]gofmt-skip" + ], + "env_var": "PANTS_GOFMT_SKIP", + "help": "Don't use gofmt when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--gofmt-skip", + "--no-gofmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Gofmt-specific options.", + "is_goal": false, + "scope": "gofmt" + }, + "golang": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-subprocess-env-vars=\"['', '', ...]\"", + "config_key": "subprocess_env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-subprocess-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_SUBPROCESS_ENV_VARS", + "help": "Environment variables to set when invoking the `go` tool. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-subprocess-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--subprocess-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL", + "PATH" + ] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-go-search-paths=\"['', '', ...]\"", + "config_key": "go_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-go-search-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOLANG_GO_SEARCH_PATHS", + "help": "A list of paths to search for Go.\n\nSpecify absolute paths to directories with the `go` binary, e.g. `/usr/bin`. Earlier entries will be searched first.\n\nThe special string '' will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-go-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--go-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--golang-expected-version=", + "config_key": "expected_version", + "default": "1.17", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--golang-expected-version=" + ], + "env_var": "PANTS_GOLANG_EXPECTED_VERSION", + "help": "The Go version you are using, such as `1.17`.\n\nPants will only use Go distributions from `--go-search-paths` that have the expected version, and it will error if none are found.\n\nDo not include the patch version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--golang-expected-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--expected-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.17" + } + ] + } + } + ], + "deprecated": [], + "description": "Options for Golang support.", + "is_goal": false, + "scope": "golang" + }, + "google-java-format": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-version=", + "config_key": "version", + "default": "1.13.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-version=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[google-java-format].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.13.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "com.google.googlejavaformat:google-java-format:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[google-java-format].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "com.google.googlejavaformat:google-java-format:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--google-java-format-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--google-java-format-lockfile=" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/java/lint/google_java_format/google_java_format.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants jvm-generate-lockfiles --resolve=google-java-format`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-skip" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_SKIP", + "help": "Don't use Google Java Format when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-skip", + "--no-google-java-format-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]google-java-format-aosp", + "config_key": "aosp", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]google-java-format-aosp" + ], + "env_var": "PANTS_GOOGLE_JAVA_FORMAT_AOSP", + "help": "Use AOSP style instead of Google Style (4-space indentation). (\"AOSP\" is the Android Open Source Project.)", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--google-java-format-aosp", + "--no-google-java-format-aosp" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--aosp", + "--no-aosp" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Google Java Format (https://github.com/google/google-java-format)", + "is_goal": false, + "scope": "google-java-format" + }, + "grpc-python-plugin": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-version=", + "config_key": "version", + "default": "1.32.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_VERSION", + "help": "Use this version of grpcpythonplugin.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "1.32.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "1.32.0|macos_arm64 |b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|macos_x86_64|b2db586656463841aa2fd4aab34fb6bd3ef887b522d80e4f2f292146c357f533|6215304", + "1.32.0|linux_arm64 |9365e728c603d64735963074340994245d324712344f63557ef3630864dd9f52|5233664", + "1.32.0|linux_x86_64|1af99df9bf733c17a75cbe379f3f9d9ff1627d8a8035ea057c3c78575afe1687|4965728" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--grpc-python-plugin-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-use-unsupported-version=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of grpcpythonplugin is not supported.\n\nSupported grpcpythonplugin versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-template=", + "config_key": "url_template", + "default": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-template=" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.9/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://binaries.pantsbuild.org/bin/grpc_python_plugin/{version}/{platform}/grpc_python_plugin" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--grpc-python-plugin-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_GRPC_PYTHON_PLUGIN_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--grpc-python-plugin-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux/arm64", + "linux_x86_64": "linux/x86_64", + "macos_arm64": "macos/x86_64", + "macos_x86_64": "macos/x86_64" + } + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The gRPC Protobuf plugin for Python.", + "is_goal": false, + "scope": "grpc-python-plugin" + }, + "hadolint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-version=", + "config_key": "version", + "default": "v2.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-version=" + ], + "env_var": "PANTS_HADOLINT_VERSION", + "help": "Use this version of hadolint.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v2.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v2.6.0|macos_arm64 |7d41496bf591f2b9c7daa76d4aa1db04ea97b9e11b44a24a4e404a10aab33686|2392080", + "v2.6.0|macos_x86_64|7d41496bf591f2b9c7daa76d4aa1db04ea97b9e11b44a24a4e404a10aab33686|2392080", + "v2.6.0|linux_x86_64|152e3c3375f26711650d4e11f9e382cf1bdf3f912d7379823e8fac4b1bce88d6|5812840" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_HADOLINT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v2.6.0|macos_arm64 |7d41496bf591f2b9c7daa76d4aa1db04ea97b9e11b44a24a4e404a10aab33686|2392080", + "v2.6.0|macos_x86_64|7d41496bf591f2b9c7daa76d4aa1db04ea97b9e11b44a24a4e404a10aab33686|2392080", + "v2.6.0|linux_x86_64|152e3c3375f26711650d4e11f9e382cf1bdf3f912d7379823e8fac4b1bce88d6|5812840" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--hadolint-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-use-unsupported-version=" + ], + "env_var": "PANTS_HADOLINT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of hadolint is not supported.\n\nSupported hadolint versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-template=", + "config_key": "url_template", + "default": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-template=" + ], + "env_var": "PANTS_HADOLINT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.9/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/hadolint/hadolint/releases/download/{version}/hadolint-{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_HADOLINT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_x86_64": "Linux-x86_64", + "macos_arm64": "Darwin-x86_64", + "macos_x86_64": "Darwin-x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-config=" + ], + "env_var": "PANTS_HADOLINT_CONFIG", + "help": "Path to an YAML config file understood by Hadolint (https://github.com/hadolint/hadolint#configure).\n\nSetting this option will disable `[hadolint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-config-discovery" + ], + "env_var": "PANTS_HADOLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.hadolint.yaml` and `.hadolint.yml`).\n\nUse `[hadolint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-config-discovery", + "--no-hadolint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]hadolint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]hadolint-skip" + ], + "env_var": "PANTS_HADOLINT_SKIP", + "help": "Don't use Hadolint when running `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-skip", + "--no-hadolint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--hadolint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--hadolint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_HADOLINT_ARGS", + "help": "Arguments to pass directly to Hadolint, e.g. `--hadolint-args='--format json'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--hadolint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A linter for Dockerfiles.", + "is_goal": false, + "scope": "hadolint" + }, + "ipython": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-version=", + "config_key": "version", + "default": "ipython==7.16.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-version=" + ], + "env_var": "PANTS_IPYTHON_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython==7.16.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_IPYTHON_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-lockfile=" + ], + "env_var": "PANTS_IPYTHON_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/subsystems/ipython_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=ipython`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-console-script=", + "config_key": "console_script", + "default": "ipython", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-console-script=" + ], + "env_var": "PANTS_IPYTHON_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ipython" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--ipython-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--ipython-entry-point=" + ], + "env_var": "PANTS_IPYTHON_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]ipython-ignore-cwd", + "config_key": "ignore_cwd", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]ipython-ignore-cwd" + ], + "env_var": "PANTS_IPYTHON_IGNORE_CWD", + "help": "Whether to tell IPython not to put the CWD on the import path.\n\nNormally you want this to be True, so that imports come from the hermetic environment Pants creates.\n\nHowever IPython<7.13.0 doesn't support this option, so if you're using an earlier version (e.g., because you have Python 2.7 code) then you will need to set this to False, and you may have issues with imports from your CWD shading the hermetic environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--ipython-ignore-cwd", + "--no-ipython-ignore-cwd" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--ignore-cwd", + "--no-ignore-cwd" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "The IPython enhanced REPL (https://ipython.org/).", + "is_goal": false, + "scope": "ipython" + }, + "isort": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-version=", + "config_key": "version", + "default": "isort[pyproject,colors]>=5.9.3,<6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-version=" + ], + "env_var": "PANTS_ISORT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort[pyproject,colors]>=5.9.3,<6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_ISORT_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-lockfile=" + ], + "env_var": "PANTS_ISORT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/lint/isort/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=isort`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-console-script=", + "config_key": "console_script", + "default": "isort", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-console-script=" + ], + "env_var": "PANTS_ISORT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "isort" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-entry-point=" + ], + "env_var": "PANTS_ISORT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-config=\"[, , ...]\"", + "config_key": "config", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-config=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_CONFIG", + "help": "Path to config file understood by isort (https://pycqa.github.io/isort/docs/configuration/config_files/).\n\nSetting this option will disable `[isort].config_discovery`. Use this option if the config is located in a non-standard location.\n\nIf using isort 5+ and you specify only 1 config file, Pants will configure isort's argv to point to your config file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-config-discovery" + ], + "env_var": "PANTS_ISORT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.isort.cfg`, `pyproject.toml`, `setup.cfg`, `tox.ini` and `.editorconfig`).\n\nUse `[isort].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-config-discovery", + "--no-isort-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]isort-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]isort-skip" + ], + "env_var": "PANTS_ISORT_SKIP", + "help": "Don't use isort when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-skip", + "--no-isort-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--isort-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--isort-args=\"[, , ...]\"" + ], + "env_var": "PANTS_ISORT_ARGS", + "help": "Arguments to pass directly to isort, e.g. `--isort-args=\"--case-sensitive --trailing-comma\"`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--isort-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Python import sorter tool (https://pycqa.github.io/isort/).", + "is_goal": false, + "scope": "isort" + }, + "java-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-imports" + ], + "env_var": "PANTS_JAVA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-imports", + "--no-java-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-consumed-types" + ], + "env_var": "PANTS_JAVA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-consumed-types", + "--no-java-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]java-infer-third-party-imports", + "config_key": "third_party_imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]java-infer-third-party-imports" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORTS", + "help": "Infer a target's third-party dependencies using Java import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-imports", + "--no-java-infer-third-party-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--third-party-imports", + "--no-third-party-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "third_party_import_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--java-infer-third-party-import-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JAVA_INFER_THIRD_PARTY_IMPORT_MAPPING", + "help": "A dictionary mapping a Java package path to a JVM artifact coordinate (GROUP:ARTIFACT) without the version.\n\nSee `jvm_artifact` for more information on the mapping syntax.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--java-infer-third-party-import-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--third-party-import-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Java targets.", + "is_goal": false, + "scope": "java-infer" + }, + "javac": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--javac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_JAVAC_ARGS", + "help": "Global `javac` compiler flags, e.g. `--javac-args='-g -deprecation'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--javac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--javac-jdk=", + "config_key": "jdk", + "default": "adopt:1.11", + "deprecated_message": "Deprecated, will be removed in version: 2.10.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--javac-jdk=" + ], + "env_var": "PANTS_JAVAC_JDK", + "help": "The JDK to use for invoking javac.\n\n This string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\n If the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": "Use `--jvm-jdk`, which behaves the same.", + "removal_version": "2.10.0.dev0", + "scoped_cmd_line_args": [ + "--javac-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "adopt:1.11" + } + ] + } + } + ], + "description": "The javac Java source compiler.", + "is_goal": false, + "scope": "javac" + }, + "junit": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-version=", + "config_key": "version", + "default": "5.7.2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-version=" + ], + "env_var": "PANTS_JUNIT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[junit].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "5.7.2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_JUNIT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[junit].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.junit.platform:junit-platform-console:1.7.2", + "org.junit.jupiter:junit-jupiter-engine:{version}", + "org.junit.vintage:junit-vintage-engine:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-lockfile=" + ], + "env_var": "PANTS_JUNIT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/jvm/test/junit.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants jvm-generate-lockfiles --resolve=junit`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--junit-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--junit-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_JUNIT_ARGS", + "help": "Arguments to pass directly to JUnit, e.g. `--disable-ansi-colors`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--junit-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The JUnit test framework (https://junit.org)", + "is_goal": false, + "scope": "junit" + }, + "jvm": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-jdk=", + "config_key": "jdk", + "default": "adopt:1.11", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-jdk=" + ], + "env_var": "PANTS_JVM_JDK", + "help": "The JDK to use.\n\n This string will be passed directly to Coursier's `--jvm` parameter. Run `cs java --available` to see a list of available JVM versions on your platform.\n\n If the string 'system' is passed, Coursier's `--system-jvm` option will be used instead, but note that this can lead to inconsistent behavior since the JVM version will be whatever happens to be found first on the system's PATH.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-jdk" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--jdk" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "adopt:1.11" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "resolves", + "default": { + "jvm-default": "3rdparty/jvm/default.lock" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-resolves=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_JVM_RESOLVES", + "help": "A dictionary mapping resolve names to the path of their lockfile.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-resolves" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--resolves" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "jvm-default": "3rdparty/jvm/default.lock" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-default-resolve=", + "config_key": "default_resolve", + "default": "jvm-default", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-default-resolve=" + ], + "env_var": "PANTS_JVM_DEFAULT_RESOLVE", + "help": "The default value used for the `resolve` and `compatible_resolves` fields.\n\nThe name must be defined as a resolve in `[jvm].resolves`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-default-resolve" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--default-resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "jvm-default" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-debug-args=\"['', '', ...]\"", + "config_key": "debug_args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-debug-args=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_DEBUG_ARGS", + "help": "Extra JVM arguments to use when running tests in debug mode.\n\nFor example, if you want to attach a remote debugger, use something like ['-agentlib:jdwp=transport=dt_socket,server=y,suspend=y,address=5005']", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-debug-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--debug-args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Options for general JVM functionality.", + "is_goal": false, + "scope": "jvm" + }, + "jvm-generate-lockfiles": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--jvm-generate-lockfiles-resolve=\"['', '', ...]\"", + "config_key": "resolve", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--jvm-generate-lockfiles-resolve=\"['', '', ...]\"" + ], + "env_var": "PANTS_JVM_GENERATE_LOCKFILES_RESOLVE", + "help": "Only generate lockfiles for the specified resolve(s).\n\nResolves are the logical names for tool lockfiles which are the options scope for that tool such as `junit`.\n\nFor example, you can run `./pants jvm-generate-lockfiles --resolve=junit to only generate lockfiles for the `junit` tool.\n\nIf you specify an invalid resolve name, like 'fake', Pants will output all possible values.\n\nIf not specified, Pants will generate lockfiles for all resolves.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--jvm-generate-lockfiles-resolve" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--resolve" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Generate lockfiles for JVM tools third-party dependencies.", + "is_goal": true, + "scope": "jvm-generate-lockfiles" + }, + "lambdex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-version=", + "config_key": "version", + "default": "lambdex==0.1.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-version=" + ], + "env_var": "PANTS_LAMBDEX_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex==0.1.6" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_LAMBDEX_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-lockfile=" + ], + "env_var": "PANTS_LAMBDEX_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/subsystems/lambdex_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=lambdex`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-console-script=", + "config_key": "console_script", + "default": "lambdex", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-console-script=" + ], + "env_var": "PANTS_LAMBDEX_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "lambdex" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--lambdex-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--lambdex-entry-point=" + ], + "env_var": "PANTS_LAMBDEX_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lambdex-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "A tool for turning .pex files into Function-as-a-Service artifacts (https://github.com/pantsbuild/lambdex).", + "is_goal": false, + "scope": "lambdex" + }, + "lint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]lint-per-file-caching", + "config_key": "per_file_caching", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]lint-per-file-caching" + ], + "env_var": "PANTS_LINT_PER_FILE_CACHING", + "help": "Rather than linting all files in a single batch, lint each file as a separate process.\n\nWhy do this? You'll get many more cache hits. Why not do this? Linters 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`.\n\nWe 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.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--lint-per-file-caching", + "--no-lint-per-file-caching" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--per-file-caching", + "--no-per-file-caching" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Run all linters and/or formatters in check mode.", + "is_goal": true, + "scope": "lint" + }, + "list": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-output-file=" + ], + "env_var": "PANTS_LIST_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--list-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--list-sep=" + ], + "env_var": "PANTS_LIST_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]list-documented", + "config_key": "documented", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]list-documented" + ], + "env_var": "PANTS_LIST_DOCUMENTED", + "help": "Print only targets that are documented with a description.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--list-documented", + "--no-list-documented" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--documented", + "--no-documented" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Lists all targets matching the file or target arguments.", + "is_goal": true, + "scope": "list" + }, + "mypy": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-version=", + "config_key": "version", + "default": "mypy==0.910", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-version=" + ], + "env_var": "PANTS_MYPY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy==0.910" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-lockfile=" + ], + "env_var": "PANTS_MYPY_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/typecheck/mypy/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=mypy`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-console-script=", + "config_key": "console_script", + "default": "mypy", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-console-script=" + ], + "env_var": "PANTS_MYPY_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-entry-point=" + ], + "env_var": "PANTS_MYPY_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-config=" + ], + "env_var": "PANTS_MYPY_CONFIG", + "help": "Path to a config file understood by MyPy (https://mypy.readthedocs.io/en/stable/config_file.html).\n\nSetting this option will disable `[mypy].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-config-discovery" + ], + "env_var": "PANTS_MYPY_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`mypy.ini`, `.mypy.ini`, and `setup.cfg`).\n\nUse `[mypy].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-config-discovery", + "--no-mypy-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must also set `plugins = path.to.module` in your `mypy.ini`, and set the `[mypy].config` option in your `pants.toml`.\n\nTo instead load third-party plugins, set the option `[mypy].extra_requirements` and set the `plugins` option in `mypy.ini`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-extra-type-stubs=\"['', '', ...]\"", + "config_key": "extra_type_stubs", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-extra-type-stubs=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_EXTRA_TYPE_STUBS", + "help": "Extra type stub requirements to install when running MyPy.\n\nNormally, type stubs can be installed as typical requirements, such as putting them in `requirements.txt` or using a `python_requirement_library` target.Alternatively, you can use this option so that the dependencies are solely used when running MyPy and are not runtime dependencies.\n\nExpects a list of pip-style requirement strings, like `['types-requests==2.25.9']`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-extra-type-stubs" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-type-stubs" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]mypy-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]mypy-skip" + ], + "env_var": "PANTS_MYPY_SKIP", + "help": "Don't use MyPy when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 typecheck`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-skip", + "--no-mypy-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-args=\"[, , ...]\"" + ], + "env_var": "PANTS_MYPY_ARGS", + "help": "Arguments to pass directly to mypy, e.g. `--mypy-args=\"--python-version 3.7 --disallow-any-expr\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The MyPy Python type checker (http://mypy-lang.org/).", + "is_goal": false, + "scope": "mypy" + }, + "mypy-protobuf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-version=", + "config_key": "version", + "default": "mypy-protobuf==2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-version=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "mypy-protobuf==2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_MYPY_PROTOBUF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--mypy-protobuf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--mypy-protobuf-lockfile=" + ], + "env_var": "PANTS_MYPY_PROTOBUF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/codegen/protobuf/python/mypy_protobuf_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=mypy-protobuf`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--mypy-protobuf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration of the mypy-protobuf type stub generation plugin.", + "is_goal": false, + "scope": "mypy-protobuf" + }, + "package": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Create a distributable package.", + "is_goal": true, + "scope": "package" + }, + "paths": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-output-file=" + ], + "env_var": "PANTS_PATHS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-from=", + "config_key": "frm", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-from=" + ], + "env_var": "PANTS_PATHS_FRM", + "help": "The path starting address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-from" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--from" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--paths-to=", + "config_key": "to", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--paths-to=" + ], + "env_var": "PANTS_PATHS_TO", + "help": "The path end address", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--paths-to" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--to" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "List the paths between two addresses.", + "is_goal": true, + "scope": "paths" + }, + "peek": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--peek-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--peek-output-file=" + ], + "env_var": "PANTS_PEEK_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]peek-exclude-defaults", + "config_key": "exclude_defaults", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]peek-exclude-defaults" + ], + "env_var": "PANTS_PEEK_EXCLUDE_DEFAULTS", + "help": "Whether to leave off values that match the target-defined default values.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--peek-exclude-defaults", + "--no-peek-exclude-defaults" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--exclude-defaults", + "--no-exclude-defaults" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Display BUILD target info", + "is_goal": true, + "scope": "peek" + }, + "pex": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used by the PEX subprocess and any subprocesses it spawns.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-verbosity=", + "config_key": "verbosity", + "default": 0, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pex-verbosity=" + ], + "env_var": "PANTS_PEX_VERBOSITY", + "help": "Set the verbosity level of PEX logging, from 0 (no logging) up to 9 (max logging).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-verbosity" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--verbosity" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 0 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-venv-use-symlinks", + "config_key": "venv_use_symlinks", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-venv-use-symlinks" + ], + "env_var": "PANTS_PEX_VENV_USE_SYMLINKS", + "help": "When possible, use venvs whose site-packages directories are populated withsymlinks.\n\nEnabling this can save space in the `--named-caches-dir` directory and lead to slightly faster execution times for Pants Python goals. Some distributions do not work with symlinked venvs though, so you may not be able to enable this optimization as a result.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-venv-use-symlinks", + "--no-pex-venv-use-symlinks" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--venv-use-symlinks", + "--no-venv-use-symlinks" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pex-bootstrap-interpreter-names=\"[, , ...]\"", + "config_key": "bootstrap_interpreter_names", + "default": [ + "python", + "python3", + "python2" + ], + "deprecated_message": "Deprecated, will be removed in version: 2.10.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--pex-bootstrap-interpreter-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PEX_BOOTSTRAP_INTERPRETER_NAMES", + "help": "The names of Python binaries to search for to bootstrap PEX files with.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run the PEX tool. See the `interpreter_search_paths` option in `[python]` to influence where interpreters are searched for.", + "removal_hint": "Moved to `[python-bootstrap] names`.", + "removal_version": "2.10.0.dev0", + "scoped_cmd_line_args": [ + "--pex-bootstrap-interpreter-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--bootstrap-interpreter-names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3", + "python2" + ] + } + ] + } + } + ], + "description": "How Pants uses Pex to run Python subprocesses.", + "is_goal": false, + "scope": "pex" + }, + "pex-binary-defaults": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-emit-warnings", + "config_key": "emit_warnings", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-emit-warnings" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_EMIT_WARNINGS", + "help": "Whether built PEX binaries should emit PEX warnings at runtime by default.\n\nCan be overridden by specifying the `emit_warnings` parameter of individual `pex_binary` targets", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-emit-warnings", + "--no-pex-binary-defaults-emit-warnings" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--emit-warnings", + "--no-emit-warnings" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pex-binary-defaults-resolve-local-platforms", + "config_key": "resolve_local_platforms", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pex-binary-defaults-resolve-local-platforms" + ], + "env_var": "PANTS_PEX_BINARY_DEFAULTS_RESOLVE_LOCAL_PLATFORMS", + "help": "For each of the `platforms` specified for a `pex_binary` target, attempt to find a local interpreter that matches.\n\nIf a matching interpreter is found, use the interpreter to resolve distributions and build any that are only available in source distribution form. If no matching interpreter is found (or if this option is `False`), resolve for the platform by accepting only pre-built binary distributions (wheels).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pex-binary-defaults-resolve-local-platforms", + "--no-pex-binary-defaults-resolve-local-platforms" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-local-platforms", + "--no-resolve-local-platforms" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Default settings for creating PEX executables.", + "is_goal": false, + "scope": "pex-binary-defaults" + }, + "poetry": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-version=", + "config_key": "version", + "default": "poetry==1.1.8", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-version=" + ], + "env_var": "PANTS_POETRY_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "poetry==1.1.8" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--poetry-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--poetry-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_POETRY_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--poetry-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Used to generate lockfiles for third-party Python dependencies.", + "is_goal": false, + "scope": "poetry" + }, + "protoc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-version=", + "config_key": "version", + "default": "3.11.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-version=" + ], + "env_var": "PANTS_PROTOC_VERSION", + "help": "Use this version of protoc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.11.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.11.4|linux_arm64 |f24c9fa1fc4a7770b8a5da66e515cb8a638d086ad2afa633abb97137c5f029a8|1481946", + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_PROTOC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.11.4|linux_arm64 |f24c9fa1fc4a7770b8a5da66e515cb8a638d086ad2afa633abb97137c5f029a8|1481946", + "3.11.4|linux_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c8caecb1367bbbe409b45e28514f5be|1591191", + "3.11.4|macos_arm64 |8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119", + "3.11.4|macos_x86_64|8c6af11e1058efe953830ecb38324c0e0fd2fb67df3891896d138c535932e7db|2482119" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--protoc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-use-unsupported-version=" + ], + "env_var": "PANTS_PROTOC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of protoc is not supported.\n\nSupported protoc versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-template=", + "config_key": "url_template", + "default": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-template=" + ], + "env_var": "PANTS_PROTOC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.9/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/protocolbuffers/protobuf/releases/download/v{version}/protoc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--protoc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PROTOC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux-aarch_64", + "linux_x86_64": "linux-x86_64", + "macos_arm64": "osx-x86_64", + "macos_x86_64": "osx-x86_64" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]protoc-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]protoc-dependency-inference" + ], + "env_var": "PANTS_PROTOC_DEPENDENCY_INFERENCE", + "help": "Infer Protobuf dependencies on other Protobuf files by analyzing import statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--protoc-dependency-inference", + "--no-protoc-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The protocol buffer compiler (https://developers.google.com/protocol-buffers).", + "is_goal": false, + "scope": "protoc" + }, + "publish": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--publish-output=", + "config_key": "output", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--publish-output=" + ], + "env_var": "PANTS_PUBLISH_OUTPUT", + "help": "Filename for JSON structured publish information.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--publish-output" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "deprecated": [], + "description": "Publish deliverables (assets, distributions, images, etc).", + "is_goal": true, + "scope": "publish" + }, + "py-constraints": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--py-constraints-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--py-constraints-output-file=" + ], + "env_var": "PANTS_PY_CONSTRAINTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]py-constraints-summary", + "config_key": "summary", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]py-constraints-summary" + ], + "env_var": "PANTS_PY_CONSTRAINTS_SUMMARY", + "help": "Output a CSV summary of interpreter constraints for your whole repository. The headers are `Target`, `Constraints`, `Transitive Constraints`, `# Dependencies`, and `# Dependees`.\n\nThis information can be useful when prioritizing a migration from one Python version to another (e.g. to Python 3). Use `# Dependencies` and `# Dependees` to help prioritize which targets are easiest to port (low # dependencies) and highest impact to port (high # dependees).\n\nUse a tool like Pandas or Excel to process the CSV. Use the option `--py-constraints-output-file=summary.csv` to write directly to a file.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--py-constraints-summary", + "--no-py-constraints-summary" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--summary", + "--no-summary" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Determine what Python interpreter constraints are used by files/targets.", + "is_goal": true, + "scope": "py-constraints" + }, + "pylint": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-version=", + "config_key": "version", + "default": "pylint>=2.11.0,<2.12", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-version=" + ], + "env_var": "PANTS_PYLINT_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint>=2.11.0,<2.12" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYLINT_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-lockfile=" + ], + "env_var": "PANTS_PYLINT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/lint/pylint/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pylint`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-console-script=", + "config_key": "console_script", + "default": "pylint", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-console-script=" + ], + "env_var": "PANTS_PYLINT_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pylint" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-entry-point=" + ], + "env_var": "PANTS_PYLINT_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-config=" + ], + "env_var": "PANTS_PYLINT_CONFIG", + "help": "Path to a config file understood by Pylint (http://pylint.pycqa.org/en/latest/user_guide/run.html#command-line-options).\n\nSetting this option will disable `[pylint].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-config-discovery" + ], + "env_var": "PANTS_PYLINT_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.pylintrc`, `pylintrc`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[pylint].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-config-discovery", + "--no-pylint-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-source-plugins=\"[, , ...]\"", + "config_key": "source_plugins", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-source-plugins=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_SOURCE_PLUGINS", + "help": "An optional list of `python_sources` target addresses to load first-party plugins.\n\nYou must set the plugin's parent directory as a source root. For example, if your plugin is at `build-support/pylint/custom_plugin.py`, add 'build-support/pylint' to `[source].root_patterns` in `pants.toml`. This is necessary for Pants to know how to tell Pylint to discover your plugin. See https://www.pantsbuild.org/v2.9/docs/source-roots\n\nYou must also set `load-plugins=$module_name` in your Pylint config file.\n\nWhile your plugin's code can depend on other first-party code and third-party requirements, all first-party dependencies of the plugin must live in the same directory or a subdirectory.\n\nTo instead load third-party plugins, set the option `[pylint].extra_requirements` and set the `load-plugins` option in your Pylint config.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-source-plugins" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--source-plugins" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pylint-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pylint-skip" + ], + "env_var": "PANTS_PYLINT_SKIP", + "help": "Don't use Pylint when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-skip", + "--no-pylint-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pylint-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pylint-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYLINT_ARGS", + "help": "Arguments to pass directly to Pylint, e.g. `--pylint-args=\"--ignore=foo.py,bar.py --disable=C0330,W0311\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pylint-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Pylint linter for Python code (https://www.pylint.org/).", + "is_goal": false, + "scope": "pylint" + }, + "pytest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-version=", + "config_key": "version", + "default": "pytest>=6.2.4,<6.3", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-version=" + ], + "env_var": "PANTS_PYTEST_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest>=6.2.4,<6.3" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTEST_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "pytest-cov>=2.12,!=2.12.1,<3.1" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-lockfile=" + ], + "env_var": "PANTS_PYTEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/subsystems/pytest_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pytest`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-console-script=", + "config_key": "console_script", + "default": "pytest", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-console-script=" + ], + "env_var": "PANTS_PYTEST_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pytest" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-entry-point=" + ], + "env_var": "PANTS_PYTEST_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-default=", + "config_key": "timeout_default", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-default=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_DEFAULT", + "help": "The default timeout (in seconds) for a test target if the `timeout` field is not set on the target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-default" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-timeout-maximum=", + "config_key": "timeout_maximum", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-timeout-maximum=" + ], + "env_var": "PANTS_PYTEST_TIMEOUT_MAXIMUM", + "help": "The maximum timeout (in seconds) that may be used on a `python_tests` target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeout-maximum" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--timeout-maximum" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-junit-family=", + "config_key": "junit_family", + "default": "xunit2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-junit-family=" + ], + "env_var": "PANTS_PYTEST_JUNIT_FAMILY", + "help": "The format of generated junit XML files. See https://docs.pytest.org/en/latest/reference.html#confval-junit_family.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-junit-family" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--junit-family" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "xunit2" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-execution-slot-var=", + "config_key": "execution_slot_var", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-execution-slot-var=" + ], + "env_var": "PANTS_PYTEST_EXECUTION_SLOT_VAR", + "help": "If a non-empty string, the process execution slot id (an integer) will be exposed to tests under this environment variable name.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-execution-slot-var" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--execution-slot-var" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-config-discovery" + ], + "env_var": "PANTS_PYTEST_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant Pytest config files (e.g. `pytest.ini`) during runs. See https://docs.pytest.org/en/stable/customize.html#finding-the-rootdir for where config files should be located for Pytest to discover them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-config-discovery", + "--no-pytest-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pytest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pytest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_PYTEST_ARGS", + "help": "Arguments to pass directly to Pytest, e.g. `--pytest-args=\"-k test_foo --quiet\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pytest-timeouts", + "config_key": "timeouts", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pytest-timeouts" + ], + "env_var": "PANTS_PYTEST_TIMEOUTS", + "help": "Enable test target timeouts. If timeouts are enabled then test targets with a timeout= parameter set on their target will time out after the given number of seconds if not completed. If no timeout is set, then either the default timeout is used or no timeout is configured.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pytest-timeouts", + "--no-pytest-timeouts" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--timeouts", + "--no-timeouts" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "The pytest Python test framework (https://docs.pytest.org/).", + "is_goal": false, + "scope": "pytest" + }, + "python": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nMutually exclusive with `[python].experimental_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_RESOLVE_ALL_CONSTRAINTS", + "help": "If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.\n\nRequires [python].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolve-all-constraints", + "--no-python-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-experimental-lockfile=", + "config_key": "experimental_lockfile", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-experimental-lockfile=" + ], + "env_var": "PANTS_PYTHON_EXPERIMENTAL_LOCKFILE", + "help": "The lockfile to use when resolving requirements for your own code (vs. tools you run).\n\nThis is highly experimental and will change, including adding support for multiple lockfiles. This option's behavior may change without the normal deprecation cycle.\n\nTo generate a lockfile, activate the backend `pants.backend.experimental.python`and run `./pants generate-user-lockfile ::`.\n\nMutually exclusive with `[python].requirement_constraints`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-experimental-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--experimental-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-experimental-resolves-to-lockfiles=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "experimental_resolves_to_lockfiles", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-experimental-resolves-to-lockfiles=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_EXPERIMENTAL_RESOLVES_TO_LOCKFILES", + "help": "A mapping of logical names to lockfile paths used in your project, e.g. `{ default = '3rdparty/default_lockfile.txt', py2 = '3rdparty/py2.txt' }`.\n\nTo generate a lockfile, run `./pants generate-lockfiles --resolve=` or `./pants generate-lockfiles` to generate for all resolves (including tool lockfiles).\n\nThis is highly experimental and will likely change.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-experimental-resolves-to-lockfiles" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--experimental-resolves-to-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_RUN_AGAINST_ENTIRE_LOCKFILE", + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile/constraints file instead of just the relevant subset. This can improve performance and reduce cache size, but has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile changes, rather than just those that depend on the changed requirement. 2) Requirements unneeded by a test/run/repl will be present on the sys.path, which might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-run-against-entire-lockfile", + "--no-python-run-against-entire-lockfile" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-resolver-jobs=", + "config_key": "resolver_jobs", + "default": "#cores/2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with.\n\nBecause Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-resolver-jobs`. \n\nSetting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "Don't tailor `python_sources` targets for solitary `__init__.py` files, as those usually exist as import scaffolding rather than true library code.\n\nSet to False if you commonly have packages containing real code in `__init__.py` and there are no other .py files in the package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-ignore-solitary-init-files", + "--no-python-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_REQUIREMENTS_TARGETS", + "help": "Tailor python_requirements() targets for requirements files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-requirements-targets", + "--no-python-tailor-requirements-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_TAILOR_PEX_BINARY_TARGETS", + "help": "Tailor pex_binary() targets for Python entry point files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-tailor-pex-binary-targets", + "--no-python-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-macos-big-sur-compatibility", + "--no-python-macos-big-sur-compatibility" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": "Deprecated, will be removed in version: 2.10.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH env var\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": "Moved to `[python-bootstrap] search_path`.", + "removal_version": "2.10.0.dev0", + "scoped_cmd_line_args": [ + "--python-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + } + ], + "description": "Options for Pants's Python backend.", + "is_goal": false, + "scope": "python" + }, + "python-bootstrap": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-search-path=\"[, , ...]\"", + "config_key": "search_path", + "default": [ + "", + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-search-path=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_SEARCH_PATH", + "help": "A list of paths to search for Python interpreters.\n\nWhich interpeters are actually used from these paths is context-specific: the Python backend selects interpreters using options on the `python` subsystem, in particular, the `[python].interpreter_constraints` option.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH env var\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-search-path" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--search-path" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-bootstrap-names=\"[, , ...]\"", + "config_key": "names", + "default": [ + "python", + "python3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-bootstrap-names=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_BOOTSTRAP_NAMES", + "help": "The names of Python binaries to search for. See the `--search-path` option to influence where interpreters are searched for.\n\nThis does not impact which Python interpreter is used to run your code, only what is used to run internal tools.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-bootstrap-names" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--names" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "python", + "python3" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options used to locate Python interpreters used by all Pants backends.\n\nThis subsystem controls where and how Pants will locate Python, but beyond that it does not control which Python interpreter versions are actually used for your code: see the `python` subsystem for that.", + "is_goal": false, + "scope": "python-bootstrap" + }, + "python-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-imports" + ], + "env_var": "PANTS_PYTHON_INFER_IMPORTS", + "help": "Infer a target's imported dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-imports", + "--no-python-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-string-imports", + "config_key": "string_imports", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-string-imports" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS", + "help": "Infer a target's dependencies based on strings that look like dynamic dependencies, such as Django settings files expressing dependencies as strings. To ignore any false positives, put `!{bad_address}` in the `dependencies` field of your target.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports", + "--no-python-infer-string-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--string-imports", + "--no-string-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-infer-string-imports-min-dots=", + "config_key": "string_imports_min_dots", + "default": 2, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-string-imports-min-dots=" + ], + "env_var": "PANTS_PYTHON_INFER_STRING_IMPORTS_MIN_DOTS", + "help": "If --string-imports is True, treat valid-looking strings with at least this many dots in them as potential dynamic dependencies. E.g., `'foo.bar.Baz'` will be treated as a potential dependency if this option is set to 2 but not if set to 3.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-string-imports-min-dots" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--string-imports-min-dots" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 2 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-inits", + "config_key": "inits", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-inits" + ], + "env_var": "PANTS_PYTHON_INFER_INITS", + "help": "Infer a target's dependencies on any `__init__.py` files in the packages it is located in (recursively upward in the directory structure).\n\nEven if this is disabled, Pants will still include any ancestor `__init__.py` files, only they will not be 'proper' dependencies, e.g. they will not show up in `./pants dependencies` and their own dependencies will not be used.\n\nIf you have empty `__init__.py` files, it's safe to leave this option off; otherwise, you should enable this option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-inits", + "--no-python-infer-inits" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--inits", + "--no-inits" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-conftests", + "config_key": "conftests", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-conftests" + ], + "env_var": "PANTS_PYTHON_INFER_CONFTESTS", + "help": "Infer a test target's dependencies on any conftest.py files in the current directory and ancestor directories.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-conftests", + "--no-python-infer-conftests" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--conftests", + "--no-conftests" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-infer-entry-points", + "config_key": "entry_points", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-infer-entry-points" + ], + "env_var": "PANTS_PYTHON_INFER_ENTRY_POINTS", + "help": "Infer dependencies on targets' entry points, e.g. `pex_binary`'s `entry_point` field, `python_awslambda`'s `handler` field and `python_distribution`'s `entry_points` field.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-entry-points", + "--no-python-infer-entry-points" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--entry-points", + "--no-entry-points" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "error", + "warning", + "ignore" + ], + "comma_separated_choices": "error, warning, ignore", + "comma_separated_display_args": "--python-infer-unowned-dependency-behavior=", + "config_key": "unowned_dependency_behavior", + "default": "ignore", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-infer-unowned-dependency-behavior=" + ], + "env_var": "PANTS_PYTHON_INFER_UNOWNED_DEPENDENCY_BEHAVIOR", + "help": "How to handle inferred dependencies that don't have any owner.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-infer-unowned-dependency-behavior" + ], + "typ": "UnownedDependencyUsage", + "unscoped_cmd_line_args": [ + "--unowned-dependency-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "ignore" + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Python targets.", + "is_goal": false, + "scope": "python-infer" + }, + "python-native-code": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-cpp-flags=\"['', '', ...]\"", + "config_key": "cpp_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-cpp-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_CPP_FLAGS", + "help": "Override the `CPPFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-cpp-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--cpp-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-native-code-ld-flags=\"['', '', ...]\"", + "config_key": "ld_flags", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-native-code-ld-flags=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_NATIVE_CODE_LD_FLAGS", + "help": "Override the `LDFLAGS` environment variable for any forked subprocesses.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-native-code-ld-flags" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ld-flags" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for building native code using Python, e.g. when resolving distributions.", + "is_goal": false, + "scope": "python-native-code" + }, + "python-protobuf": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-protobuf-runtime-dependencies=\"[, , ...]\"", + "config_key": "runtime_dependencies", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-protobuf-runtime-dependencies=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_RUNTIME_DEPENDENCIES", + "help": "A list of addresses to `python_requirement` targets for the runtime dependencies needed for generated Python code to work. For example, `['3rdparty/python:protobuf', '3rdparty/python:grpcio']`. These dependencies will be automatically added to every `protobuf_sources` target", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-runtime-dependencies" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--runtime-dependencies" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-protobuf-mypy-plugin", + "config_key": "mypy_plugin", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-protobuf-mypy-plugin" + ], + "env_var": "PANTS_PYTHON_PROTOBUF_MYPY_PLUGIN", + "help": "Use the `mypy-protobuf` plugin (https://github.com/dropbox/mypy-protobuf) to also generate .pyi type stubs.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-protobuf-mypy-plugin", + "--no-python-protobuf-mypy-plugin" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--mypy-plugin", + "--no-mypy-plugin" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Options related to the Protobuf Python backend.\n\nSee https://www.pantsbuild.org/v2.9/docs/protobuf.", + "is_goal": false, + "scope": "python-protobuf" + }, + "python-repos": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-repos=\"['', '', ...]\"", + "config_key": "repos", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-repos=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_REPOS", + "help": "URLs of code repositories to look for requirements. In Pip and Pex, this option corresponds to the `--find-links` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-repos" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--repos" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-repos-indexes=\"['', '', ...]\"", + "config_key": "indexes", + "default": [ + "https://pypi.org/simple/" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-repos-indexes=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_REPOS_INDEXES", + "help": "URLs of code repository indexes to look for requirements. If set to an empty list, then Pex will use no indices (meaning it will not use PyPI). The values should be compliant with PEP 503.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-repos-indexes" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--indexes" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "https://pypi.org/simple/" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "External Python code repositories, such as PyPI.\n\nThese options may be used to point to custom cheeseshops when resolving requirements.", + "is_goal": false, + "scope": "python-repos" + }, + "python-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-constraints=\"[, , ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6,<4" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-constraints=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_CONSTRAINTS", + "help": "The Python interpreters your codebase is compatible with.\n\nSpecify with requirement syntax, e.g. 'CPython>=2.7,<3' (A CPython interpreter with version >=2.7 AND version <3) or 'PyPy' (A pypy interpreter of any version). Multiple constraint strings will be ORed together.\n\nThese constraints are used as the default value for the `interpreter_constraints` field of Python targets.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6,<4" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-versions-universe=\"['', '', ...]\"", + "config_key": "interpreter_versions_universe", + "default": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-interpreter-versions-universe=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_VERSIONS_UNIVERSE", + "help": "All known Python major/minor interpreter versions that may be used by either your code or tools used by your code.\n\nThis is used by Pants to robustly handle interpreter constraints, such as knowing when generating lockfiles which Python versions to check if your code is using.\n\nThis does not control which interpreter your code will use. Instead, to set your interpreter constraints, update `[python].interpreter_constraints`, the `interpreter_constraints` field, and relevant tool options like `[isort].interpreter_constraints` to tell Pants which interpreters your code actually uses. See https://www.pantsbuild.org/v2.9/docs/python-interpreter-compatibility.\n\nAll elements must be the minor and major Python version, e.g. '2.7' or '3.10'. Do not include the patch version.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-interpreter-versions-universe" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-versions-universe" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "2.7", + "3.5", + "3.6", + "3.7", + "3.8", + "3.9", + "3.10" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-requirement-constraints=", + "config_key": "requirement_constraints", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-requirement-constraints=" + ], + "env_var": "PANTS_PYTHON_SETUP_REQUIREMENT_CONSTRAINTS", + "help": "When resolving third-party requirements for your own code (vs. tools you run), use this constraints file to determine which versions to use.\n\nThis only applies when resolving user requirements, rather than tools you run like Black and Pytest. To constrain tools, set `[tool].lockfile`, e.g. `[black].lockfile`.\n\nSee https://pip.pypa.io/en/stable/user_guide/#constraints-files for more information on the format of constraint files and how constraints are applied in Pex and pip.\n\nMutually exclusive with `[python].experimental_lockfile`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-requirement-constraints" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--requirement-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-resolve-all-constraints", + "config_key": "resolve_all_constraints", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-resolve-all-constraints" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVE_ALL_CONSTRAINTS", + "help": "If enabled, when resolving requirements, Pants will first resolve your entire constraints file as a single global resolve. Then, if the code uses a subset of your constraints file, Pants will extract the relevant requirements from that global resolve so that only what's actually needed gets used. If disabled, Pants will not use a global resolve and will resolve each subset of your requirements independently.\n\nUsually this option should be enabled because it can result in far fewer resolves.\n\nRequires [python].requirement_constraints to be set.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolve-all-constraints", + "--no-python-setup-resolve-all-constraints" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--resolve-all-constraints", + "--no-resolve-all-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-experimental-lockfile=", + "config_key": "experimental_lockfile", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-experimental-lockfile=" + ], + "env_var": "PANTS_PYTHON_SETUP_EXPERIMENTAL_LOCKFILE", + "help": "The lockfile to use when resolving requirements for your own code (vs. tools you run).\n\nThis is highly experimental and will change, including adding support for multiple lockfiles. This option's behavior may change without the normal deprecation cycle.\n\nTo generate a lockfile, activate the backend `pants.backend.experimental.python`and run `./pants generate-user-lockfile ::`.\n\nMutually exclusive with `[python].requirement_constraints`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-experimental-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--experimental-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-experimental-resolves-to-lockfiles=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "experimental_resolves_to_lockfiles", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-experimental-resolves-to-lockfiles=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_PYTHON_SETUP_EXPERIMENTAL_RESOLVES_TO_LOCKFILES", + "help": "A mapping of logical names to lockfile paths used in your project, e.g. `{ default = '3rdparty/default_lockfile.txt', py2 = '3rdparty/py2.txt' }`.\n\nTo generate a lockfile, run `./pants generate-lockfiles --resolve=` or `./pants generate-lockfiles` to generate for all resolves (including tool lockfiles).\n\nThis is highly experimental and will likely change.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-experimental-resolves-to-lockfiles" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--experimental-resolves-to-lockfiles" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": [ + "error", + "ignore", + "warn" + ], + "comma_separated_choices": "error, ignore, warn", + "comma_separated_display_args": "--python-setup-invalid-lockfile-behavior=", + "config_key": "invalid_lockfile_behavior", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-invalid-lockfile-behavior=" + ], + "env_var": "PANTS_PYTHON_SETUP_INVALID_LOCKFILE_BEHAVIOR", + "help": "The behavior when a lockfile has requirements or interpreter constraints that are not compatible with what the current build is using.\n\nWe recommend keeping the default of `error` for CI builds.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-invalid-lockfile-behavior" + ], + "typ": "InvalidLockfileBehavior", + "unscoped_cmd_line_args": [ + "--invalid-lockfile-behavior" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-run-against-entire-lockfile", + "config_key": "run_against_entire_lockfile", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-run-against-entire-lockfile" + ], + "env_var": "PANTS_PYTHON_SETUP_RUN_AGAINST_ENTIRE_LOCKFILE", + "help": "If enabled, when running binaries, tests, and repls, Pants will use the entire lockfile/constraints file instead of just the relevant subset. This can improve performance and reduce cache size, but has two consequences: 1) All cached test results will be invalidated if any requirement in the lockfile changes, rather than just those that depend on the changed requirement. 2) Requirements unneeded by a test/run/repl will be present on the sys.path, which might in rare cases cause their behavior to change.\n\nThis option does not affect packaging deployable artifacts, such as PEX files, wheels and cloud functions, which will still use just the exact subset of requirements needed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-run-against-entire-lockfile", + "--no-python-setup-run-against-entire-lockfile" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--run-against-entire-lockfile", + "--no-run-against-entire-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-manylinux=", + "config_key": "resolver_manylinux", + "default": "manylinux2014", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-manylinux=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_MANYLINUX", + "help": "Whether to allow resolution of manylinux wheels when resolving requirements for foreign linux platforms. The value should be a manylinux platform upper bound, e.g.: 'manylinux2010', or else the string 'no' to disallow.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-manylinux" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--resolver-manylinux" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "manylinux2014" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-resolver-jobs=", + "config_key": "resolver_jobs", + "default": "#cores/2", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--python-setup-resolver-jobs=" + ], + "env_var": "PANTS_PYTHON_SETUP_RESOLVER_JOBS", + "help": "The maximum number of concurrent jobs to build wheels with.\n\nBecause Pants can run multiple subprocesses in parallel, the maximum total parallelism will be `--process-execution-{local,remote}-parallelism x --python-resolver-jobs`. \n\nSetting this option higher may result in better parallelism, but, if set too high, may result in starvation and Out of Memory errors.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-resolver-jobs" + ], + "typ": "int", + "unscoped_cmd_line_args": [ + "--resolver-jobs" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": 32 + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-tailor-ignore-solitary-init-files", + "config_key": "tailor_ignore_solitary_init_files", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-tailor-ignore-solitary-init-files" + ], + "env_var": "PANTS_PYTHON_SETUP_TAILOR_IGNORE_SOLITARY_INIT_FILES", + "help": "Don't tailor `python_sources` targets for solitary `__init__.py` files, as those usually exist as import scaffolding rather than true library code.\n\nSet to False if you commonly have packages containing real code in `__init__.py` and there are no other .py files in the package.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-tailor-ignore-solitary-init-files", + "--no-python-setup-tailor-ignore-solitary-init-files" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-ignore-solitary-init-files", + "--no-tailor-ignore-solitary-init-files" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-tailor-requirements-targets", + "config_key": "tailor_requirements_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-tailor-requirements-targets" + ], + "env_var": "PANTS_PYTHON_SETUP_TAILOR_REQUIREMENTS_TARGETS", + "help": "Tailor python_requirements() targets for requirements files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-tailor-requirements-targets", + "--no-python-setup-tailor-requirements-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-requirements-targets", + "--no-tailor-requirements-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-tailor-pex-binary-targets", + "config_key": "tailor_pex_binary_targets", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-tailor-pex-binary-targets" + ], + "env_var": "PANTS_PYTHON_SETUP_TAILOR_PEX_BINARY_TARGETS", + "help": "Tailor pex_binary() targets for Python entry point files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-tailor-pex-binary-targets", + "--no-python-setup-tailor-pex-binary-targets" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--tailor-pex-binary-targets", + "--no-tailor-pex-binary-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]python-setup-macos-big-sur-compatibility", + "config_key": "macos_big_sur_compatibility", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]python-setup-macos-big-sur-compatibility" + ], + "env_var": "PANTS_PYTHON_SETUP_MACOS_BIG_SUR_COMPATIBILITY", + "help": "If set, and if running on MacOS Big Sur, use macosx_10_16 as the platform when building wheels. Otherwise, the default of macosx_11_0 will be used. This may be required for pip to be able to install the resulting distribution on Big Sur.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--python-setup-macos-big-sur-compatibility", + "--no-python-setup-macos-big-sur-compatibility" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--macos-big-sur-compatibility", + "--no-macos-big-sur-compatibility" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--python-setup-interpreter-search-paths=\"[, , ...]\"", + "config_key": "interpreter_search_paths", + "default": [ + "", + "" + ], + "deprecated_message": "Deprecated, will be removed in version: 2.10.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--python-setup-interpreter-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_PYTHON_SETUP_INTERPRETER_SEARCH_PATHS", + "help": "A list of paths to search for Python interpreters that match your project's interpreter constraints.\n\nYou can specify absolute paths to interpreter binaries and/or to directories containing interpreter binaries. The order of entries does not matter.\n\nThe following special strings are supported:\n\n* ``, the contents of the PATH env var\n* ``, all Python versions currently configured by ASDF `(asdf shell, ${HOME}/.tool-versions)`, with a fallback to all installed versions\n* ``, the ASDF interpreter with the version in BUILD_ROOT/.tool-versions\n* ``, all Python versions under $(pyenv root)/versions\n* ``, the Pyenv interpreter with the version in BUILD_ROOT/.python-version\n* ``, paths in the PEX_PYTHON_PATH variable in /etc/pexrc or ~/.pexrc", + "removal_hint": "Moved to `[python-bootstrap] search_path`.", + "removal_version": "2.10.0.dev0", + "scoped_cmd_line_args": [ + "--python-setup-interpreter-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "", + "" + ] + } + ] + } + } + ], + "description": "Options for Pants's Python backend.", + "is_goal": false, + "scope": "python-setup" + }, + "pyupgrade": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-version=", + "config_key": "version", + "default": "pyupgrade>=2.29.0,<2.30", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-version=" + ], + "env_var": "PANTS_PYUPGRADE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade>=2.29.0,<2.30" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.7" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.7" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-lockfile=" + ], + "env_var": "PANTS_PYUPGRADE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/lint/pyupgrade/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=pyupgrade`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-console-script=", + "config_key": "console_script", + "default": "pyupgrade", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-console-script=" + ], + "env_var": "PANTS_PYUPGRADE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "pyupgrade" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-entry-point=" + ], + "env_var": "PANTS_PYUPGRADE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]pyupgrade-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]pyupgrade-skip" + ], + "env_var": "PANTS_PYUPGRADE_SKIP", + "help": "Don't use pyupgrade when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-skip", + "--no-pyupgrade-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--pyupgrade-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--pyupgrade-args=\"[, , ...]\"" + ], + "env_var": "PANTS_PYUPGRADE_ARGS", + "help": "Arguments to pass directly to pyupgrade, e.g. `--pyupgrade-args=\"--py39-plus --keep-runtime-typing\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--pyupgrade-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Upgrade syntax for newer versions of the language (https://github.com/asottile/pyupgrade).", + "is_goal": false, + "scope": "pyupgrade" + }, + "repl": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--repl-shell=", + "config_key": "shell", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--repl-shell=" + ], + "env_var": "PANTS_REPL_SHELL", + "help": "Override the automatically-detected REPL program for the target(s) specified.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-shell" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--shell" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]repl-restartable", + "config_key": "restartable", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]repl-restartable" + ], + "env_var": "PANTS_REPL_RESTARTABLE", + "help": "True if the REPL should be restarted if its inputs have changed.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--repl-restartable", + "--no-repl-restartable" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--restartable", + "--no-restartable" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Open a REPL with the specified code loadable.", + "is_goal": true, + "scope": "repl" + }, + "roots": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-output-file=", + "config_key": "output_file", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-output-file=" + ], + "env_var": "PANTS_ROOTS_OUTPUT_FILE", + "help": "Output the goal's stdout to this file. If unspecified, outputs to stdout.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-output-file" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--output-file" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--roots-sep=", + "config_key": "sep", + "default": "\\n", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--roots-sep=" + ], + "env_var": "PANTS_ROOTS_SEP", + "help": "String to use to separate lines in line-oriented output.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--roots-sep" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--sep" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "\\n" + } + ] + } + } + ], + "deprecated": [], + "description": "List the repo's registered source roots.", + "is_goal": true, + "scope": "roots" + }, + "run": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--run-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--run-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_RUN_ARGS", + "help": "Arguments to pass directly to the executed target, e.g. `--run-args=\"val1 val2 --debug\"`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]run-cleanup", + "config_key": "cleanup", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]run-cleanup" + ], + "env_var": "PANTS_RUN_CLEANUP", + "help": "Whether to clean up the temporary directory in which the binary is chrooted. Set to false to retain the directory, e.g., for debugging.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--run-cleanup", + "--no-run-cleanup" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--cleanup", + "--no-cleanup" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Runs a binary target.\n\nThis goal propagates the return code of the underlying executable.\n\nIf your application can safely be restarted while it is running, you can pass `restartable=True` on your binary target (for supported types), and the `run` goal will automatically restart them as all relevant files change. This can be particularly useful for server applications.", + "is_goal": true, + "scope": "run" + }, + "scala": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scala-version=", + "config_key": "version", + "default": "2.13.6", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scala-version=" + ], + "env_var": "PANTS_SCALA_VERSION", + "help": "The version of Scala to use", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "2.13.6" + } + ] + } + } + ], + "deprecated": [], + "description": "Scala programming language", + "is_goal": false, + "scope": "scala" + }, + "scala-infer": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-imports", + "config_key": "imports", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-imports" + ], + "env_var": "PANTS_SCALA_INFER_IMPORTS", + "help": "Infer a target's dependencies by parsing import statements from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-imports", + "--no-scala-infer-imports" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--imports", + "--no-imports" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scala-infer-consumed-types", + "config_key": "consumed_types", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scala-infer-consumed-types" + ], + "env_var": "PANTS_SCALA_INFER_CONSUMED_TYPES", + "help": "Infer a target's dependencies by parsing consumed types from sources.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scala-infer-consumed-types", + "--no-scala-infer-consumed-types" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--consumed-types", + "--no-consumed-types" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Options controlling which dependencies will be inferred for Scala targets.", + "is_goal": false, + "scope": "scala-infer" + }, + "scalac": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-global=\"['', '', ...]\"", + "config_key": "plugins_global", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-global=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAC_PLUGINS_GLOBAL", + "help": "A list of addresses of `scalac_plugin` targets which should be used for compilation of all Scala targets in a build.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-global" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--plugins-global" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-plugins-global-lockfile=", + "config_key": "plugins_global_lockfile", + "default": "3rdparty/jvm/global_scalac_plugins.lock", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-plugins-global-lockfile=" + ], + "env_var": "PANTS_SCALAC_PLUGINS_GLOBAL_LOCKFILE", + "help": "The filename of a lockfile for global plugins.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-plugins-global-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--plugins-global-lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3rdparty/jvm/global_scalac_plugins.lock" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalac-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SCALAC_ARGS", + "help": "Global `scalac` compiler flags, e.g. `--scalac-args='-encoding UTF-8'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalac-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-global=\"['', '', ...]\"", + "config_key": "global_addresses", + "default": [], + "deprecated_message": "Deprecated, will be removed in version: 2.10.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--scalac-global=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAC_GLOBAL_ADDRESSES", + "help": "A list of addresses of `scalac_plugin` targets which should be used for compilation of all Scala targets in a build.", + "removal_hint": "Use `--plugins-global`, which behaves the same.", + "removal_version": "2.10.0.dev0", + "scoped_cmd_line_args": [ + "--scalac-global" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--global" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalac-lockfile=", + "config_key": "lockfile", + "default": "3rdparty/jvm/global_scalac_plugins.lockfile", + "deprecated_message": "Deprecated, will be removed in version: 2.10.0.dev0.", + "deprecation_active": true, + "display_args": [ + "--scalac-lockfile=" + ], + "env_var": "PANTS_SCALAC_LOCKFILE", + "help": "The filename of a lockfile for global plugins.", + "removal_hint": "Use `--plugins-global-lockfile`, which behaves the same.", + "removal_version": "2.10.0.dev0", + "scoped_cmd_line_args": [ + "--scalac-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3rdparty/jvm/global_scalac_plugins.lockfile" + } + ] + } + } + ], + "description": "The Scala compiler.", + "is_goal": false, + "scope": "scalac" + }, + "scalafmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-version=", + "config_key": "version", + "default": "3.2.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-version=" + ], + "env_var": "PANTS_SCALAFMT_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalafmt].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALAFMT_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalafmt].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalameta:scalafmt-cli_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalafmt-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalafmt-lockfile=" + ], + "env_var": "PANTS_SCALAFMT_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/scala/lint/scalafmt/scalafmt.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants jvm-generate-lockfiles --resolve=scalafmt`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]scalafmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]scalafmt-skip" + ], + "env_var": "PANTS_SCALAFMT_SKIP", + "help": "Don't use `scalafmt` when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalafmt-skip", + "--no-scalafmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "scalafmt (https://scalameta.org/scalafmt/)", + "is_goal": false, + "scope": "scalafmt" + }, + "scalatest": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-version=", + "config_key": "version", + "default": "3.2.10", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-version=" + ], + "env_var": "PANTS_SCALATEST_VERSION", + "help": "Version string for the tool. This is available for substitution in the `[scalatest].artifacts` option by including the string `{version}`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.2.10" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-artifacts=\"['', '', ...]\"", + "config_key": "artifacts", + "default": [ + "org.scalatest:scalatest_2.13:{version}" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-artifacts=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCALATEST_ARTIFACTS", + "help": "Artifact requirements for this tool using specified as either the address of a `jvm_artifact` target or, alternatively, as a colon-separated Maven coordinates (e.g., group:name:version). For Maven coordinates, the string `{version}` version will be substituted with the value of the `[scalatest].version` option.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-artifacts" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--artifacts" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "org.scalatest:scalatest_2.13:{version}" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-lockfile=" + ], + "env_var": "PANTS_SCALATEST_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` option. See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/scala/subsystems/scalatest.default.lockfile.txt for the default lockfile contents.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants jvm-generate-lockfiles --resolve=scalatest`.\n\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scalatest-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scalatest-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCALATEST_ARGS", + "help": "Arguments to pass directly to Scalatest, e.g. `-t $testname`. See https://www.scalatest.org/user_guide/using_the_runner for supported arguments.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scalatest-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Scalatest test framework (https://www.scalatest.org/)", + "is_goal": false, + "scope": "scalatest" + }, + "scc": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-version=", + "config_key": "version", + "default": "3.0.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-version=" + ], + "env_var": "PANTS_SCC_VERSION", + "help": "Use this version of succinctcodecounter.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "3.0.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SCC_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "3.0.0|macos_arm64 |846cb1b25025a0794d455719bc17cfb3f588576a58af1d95036f6c654e294f98|2006145", + "3.0.0|macos_x86_64|9c3064e477ab36e16204ad34f649372034bca4df669615eff5de4aa05b2ddf1a|2048134", + "3.0.0|linux_arm64 |04f9e797b70a678833e49df5e744f95080dfb7f963c0cd34f5b5d4712d290f33|1768037", + "3.0.0|linux_x86_64|13ca47ce00b5bd032f97f3af7aa8eb3c717b8972b404b155a378b09110e4aa0c|1948341" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--scc-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-use-unsupported-version=" + ], + "env_var": "PANTS_SCC_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of succinctcodecounter is not supported.\n\nSupported succinctcodecounter versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-template=", + "config_key": "url_template", + "default": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-template=" + ], + "env_var": "PANTS_SCC_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.9/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/boyter/scc/releases/download/v{version}/scc-{version}-{platform}.zip" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SCC_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "arm64-unknown-linux", + "linux_x86_64": "x86_64-unknown-linux", + "macos_arm64": "arm64-apple-darwin", + "macos_x86_64": "x86_64-apple-darwin" + } + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--scc-args=\"[, , ...]\", ... -- [ [ [...]]]", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--scc-args=\"[, , ...]\"", + "... -- [ [ [...]]]" + ], + "env_var": "PANTS_SCC_ARGS", + "help": "Arguments to pass directly to SCC, e.g. `--count-loc-args=\"--no-cocomo\"`. Refer to https://github.com/boyter/scc.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--scc-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "from command-line flag", + "rank": "FLAG", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The Succinct Code Counter, aka `scc` (https://github.com/boyter/scc).", + "is_goal": false, + "scope": "scc" + }, + "setup-py-generation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]setup-py-generation-generate-setup-default", + "config_key": "generate_setup_default", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]setup-py-generation-generate-setup-default" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_GENERATE_SETUP_DEFAULT", + "help": "The default value for the `generate_setup` field on `python_distribution` targets.Can be overridden per-target by setting that field explicitly. Set this to False if you mostly rely on handwritten setup files (setup.py, setup.cfg and similar). Leave as True if you mostly rely on Pants generating setup files for you.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-generate-setup-default", + "--no-setup-py-generation-generate-setup-default" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--generate-setup-default", + "--no-generate-setup-default" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": [ + "exact", + "compatible", + "any" + ], + "comma_separated_choices": "exact, compatible, any", + "comma_separated_display_args": "--setup-py-generation-first-party-dependency-version-scheme=", + "config_key": "first_party_dependency_version_scheme", + "default": "exact", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setup-py-generation-first-party-dependency-version-scheme=" + ], + "env_var": "PANTS_SETUP_PY_GENERATION_FIRST_PARTY_DEPENDENCY_VERSION_SCHEME", + "help": "What version to set in `install_requires` when a `python_distribution` depends on other `python_distribution`s. If `exact`, will use `==`. If `compatible`, will use `~=`. If `any`, will leave off the version. See https://www.python.org/dev/peps/pep-0440/#version-specifiers.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setup-py-generation-first-party-dependency-version-scheme" + ], + "typ": "FirstPartyDependencyVersionScheme", + "unscoped_cmd_line_args": [ + "--first-party-dependency-version-scheme" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "exact" + } + ] + } + } + ], + "deprecated": [], + "description": "Options to control how setup.py is generated from a `python_distribution` target.", + "is_goal": false, + "scope": "setup-py-generation" + }, + "setuptools": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-version=", + "config_key": "version", + "default": "setuptools>=50.3.0,<58.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-version=" + ], + "env_var": "PANTS_SETUPTOOLS_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "setuptools>=50.3.0,<58.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "wheel>=0.35.1,<0.38" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_SETUPTOOLS_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "wheel>=0.35.1,<0.38" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--setuptools-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--setuptools-lockfile=" + ], + "env_var": "PANTS_SETUPTOOLS_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/subsystems/setuptools_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=setuptools`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--setuptools-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Python setuptools, used to package `python_distribution` targets.", + "is_goal": false, + "scope": "setuptools" + }, + "shell-setup": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shell-setup-executable-search-paths=\"[, , ...]\"", + "config_key": "executable_search_paths", + "default": [ + "" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shell-setup-executable-search-paths=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELL_SETUP_EXECUTABLE_SEARCH_PATHS", + "help": "The PATH value that will be used to find shells and to run certain processes like the shunit2 test runner.\n\nThe special string \"\" will expand to the contents of the PATH env var.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-executable-search-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--executable-search-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shell-setup-dependency-inference", + "config_key": "dependency_inference", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shell-setup-dependency-inference" + ], + "env_var": "PANTS_SHELL_SETUP_DEPENDENCY_INFERENCE", + "help": "Infer Shell dependencies on other Shell files by analyzing `source` statements.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shell-setup-dependency-inference", + "--no-shell-setup-dependency-inference" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--dependency-inference", + "--no-dependency-inference" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Options for Pants's Shell support.", + "is_goal": false, + "scope": "shell-setup" + }, + "shellcheck": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-version=", + "config_key": "version", + "default": "v0.7.1", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-version=" + ], + "env_var": "PANTS_SHELLCHECK_VERSION", + "help": "Use this version of shellcheck.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v0.7.1" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v0.7.1|macos_arm64 |b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|macos_x86_64|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux_arm64 |b50cc31509b354ab5bbfc160bc0967567ed98cd9308fd43f38551b36cccc4446|1432492", + "v0.7.1|linux_x86_64|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v0.7.1|macos_arm64 |b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|macos_x86_64|b080c3b659f7286e27004aa33759664d91e15ef2498ac709a452445d47e3ac23|1348272", + "v0.7.1|linux_arm64 |b50cc31509b354ab5bbfc160bc0967567ed98cd9308fd43f38551b36cccc4446|1432492", + "v0.7.1|linux_x86_64|64f17152d96d7ec261ad3086ed42d18232fcb65148b44571b564d688269d36c8|1443836" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shellcheck-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-use-unsupported-version=" + ], + "env_var": "PANTS_SHELLCHECK_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shellcheck is not supported.\n\nSupported shellcheck versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-template=", + "config_key": "url_template", + "default": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-template=" + ], + "env_var": "PANTS_SHELLCHECK_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.9/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/koalaman/shellcheck/releases/download/{version}/shellcheck-{version}.{platform}.tar.xz" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHELLCHECK_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux.aarch64", + "linux_x86_64": "linux.x86_64", + "macos_arm64": "darwin.x86_64", + "macos_x86_64": "darwin.x86_64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-config-discovery" + ], + "env_var": "PANTS_SHELLCHECK_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.shellcheckrc` and `shellcheckrc` files during runs. See https://www.mankier.com/1/shellcheck#RC_Files for where these can be located.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-config-discovery", + "--no-shellcheck-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shellcheck-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shellcheck-skip" + ], + "env_var": "PANTS_SHELLCHECK_SKIP", + "help": "Don't use Shellcheck when running `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-skip", + "--no-shellcheck-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shellcheck-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shellcheck-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHELLCHECK_ARGS", + "help": "Arguments to pass directly to Shellcheck, e.g. `--shellcheck-args='-e SC20529'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shellcheck-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A linter for shell scripts.", + "is_goal": false, + "scope": "shellcheck" + }, + "shfmt": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-version=", + "config_key": "version", + "default": "v3.2.4", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-version=" + ], + "env_var": "PANTS_SHFMT_VERSION", + "help": "Use this version of shfmt.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "v3.2.4" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-known-versions=\"['', '', ...]\"", + "config_key": "known_versions", + "default": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-known-versions=\"['', '', ...]\"" + ], + "env_var": "PANTS_SHFMT_KNOWN_VERSIONS", + "help": "\nKnown versions to verify downloads against.\n\nEach element is a pipe-separated string of `version|platform|sha256|length`, where:\n\n - `version` is the version string\n - `platform` is one of [linux_arm64,linux_x86_64,macos_arm64,macos_x86_64],\n - `sha256` is the 64-character hex representation of the expected sha256\n digest of the download file, as emitted by `shasum -a 256`\n - `length` is the expected length of the download file in bytes, as emitted by\n `wc -c`\n\nE.g., `3.1.2|macos_x86_64|6d0f18cd84b918c7b3edd0203e75569e0c7caecb1367bbbe409b44e28514f5be|42813`.\n\nValues are space-stripped, so pipes can be indented for readability if necessary.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-known-versions" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--known-versions" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "v3.2.4|macos_arm64 |e70fc42e69debe3e400347d4f918630cdf4bf2537277d672bbc43490387508ec|2998546", + "v3.2.4|macos_x86_64|43a0461a1b54070ddc04fbbf1b78f7861ee39a65a61f5466d15a39c4aba4f917|2980208", + "v3.2.4|linux_arm64 |6474d9cc08a1c9fe2ef4be7a004951998e3067d46cf55a011ddd5ff7bfab3de6|2752512", + "v3.2.4|linux_x86_64|3f5a47f8fec27fae3e06d611559a2063f5d27e4b9501171dde9959b8c60a3538|2797568" + ] + } + ] + } + }, + { + "choices": [ + "error", + "warning" + ], + "comma_separated_choices": "error, warning", + "comma_separated_display_args": "--shfmt-use-unsupported-version=", + "config_key": "use_unsupported_version", + "default": "error", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-use-unsupported-version=" + ], + "env_var": "PANTS_SHFMT_USE_UNSUPPORTED_VERSION", + "help": "\nWhat action to take in case the requested version of shfmt is not supported.\n\nSupported shfmt versions: unspecified\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-use-unsupported-version" + ], + "typ": "UnsupportedVersionUsage", + "unscoped_cmd_line_args": [ + "--use-unsupported-version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "error" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-template=", + "config_key": "url_template", + "default": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-template=" + ], + "env_var": "PANTS_SHFMT_URL_TEMPLATE", + "help": "URL to download the tool, either as a single binary file or a compressed file (e.g. zip file). You can change this to point to your own hosted file, e.g. to work with proxies or for access via the filesystem through a `file:$abspath` URL (e.g. `file:/this/is/absolute`, possibly by [templating the buildroot in a config file](https://www.pantsbuild.org/v2.9/docs/options#config-file-entries)).\n\nUse `{version}` to have the value from --version substituted, and `{platform}` to have a value from --url-platform-mapping substituted in, depending on the current platform. For example, https://github.com/.../protoc-{version}-{platform}.zip.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-template" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--url-template" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "https://github.com/mvdan/sh/releases/download/{version}/shfmt_{version}_{platform}" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "url_platform_mapping", + "default": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + }, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-url-platform-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SHFMT_URL_PLATFORM_MAPPING", + "help": "A dictionary mapping platforms to strings to be used when generating the URL to download the tool.\n\nIn --url-template, anytime the `{platform}` string is used, Pants will determine the current platform, and substitute `{platform}` with the respective value from your dictionary.\n\nFor example, if you define `{\"macos_x86_64\": \"apple-darwin\", \"linux_x86_64\": \"unknown-linux\"}, and run Pants on Linux with an intel architecture, then `{platform}` will be substituted in the --url-template option with unknown-linux.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-url-platform-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--url-platform-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + }, + { + "details": "", + "rank": "HARDCODED", + "value": { + "linux_arm64": "linux_arm64", + "linux_x86_64": "linux_amd64", + "macos_arm64": "darwin_arm64", + "macos_x86_64": "darwin_amd64" + } + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-config-discovery" + ], + "env_var": "PANTS_SHFMT_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant `.editorconfig` files during runs. See https://editorconfig.org.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-config-discovery", + "--no-shfmt-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]shfmt-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]shfmt-skip" + ], + "env_var": "PANTS_SHFMT_SKIP", + "help": "Don't use shfmt when running `./pants fmt` and `./pants lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-skip", + "--no-shfmt-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--shfmt-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--shfmt-args=\"[, , ...]\"" + ], + "env_var": "PANTS_SHFMT_ARGS", + "help": "Arguments to pass directly to shfmt, e.g. `--shfmt-args='-i 2'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--shfmt-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "An autoformatter for shell scripts (https://github.com/mvdan/sh).", + "is_goal": false, + "scope": "shfmt" + }, + "source": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"", + "config_key": "root_patterns", + "default": [ + "/", + "src", + "src/python", + "src/py" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-root-patterns=\"[[\"pattern1\", \"pattern2\", ...], [\"pattern1\", \"pattern2\", ...], ...]\"" + ], + "env_var": "PANTS_SOURCE_ROOT_PATTERNS", + "help": "A list of source root suffixes. A directory with this suffix will be considered a potential source root. E.g., `src/python` will match `/src/python`, `/project1/src/python` etc. Prepend a `/` to anchor the match at the buildroot. E.g., `/src/python` will match `/src/python` but not `/project1/src/python`. A `*` wildcard will match a single path segment, e.g., `src/*` will match `/src/python` and `/src/rust`. Use `/` to signify that the buildroot itself is a source root. See https://www.pantsbuild.org/v2.9/docs/source-roots.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-root-patterns" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--root-patterns" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "/", + "src", + "src/python", + "src/py" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--source-marker-filenames=\"[filename, filename, ...]\"", + "config_key": "marker_filenames", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--source-marker-filenames=\"[filename, filename, ...]\"" + ], + "env_var": "PANTS_SOURCE_MARKER_FILENAMES", + "help": "The presence of a file of this name in a directory indicates that the directory is a source root. The content of the file doesn't matter, and may be empty. Useful when you can't or don't wish to centrally enumerate source roots via `root_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--source-marker-filenames" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--marker-filenames" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Configuration for roots of source trees.", + "is_goal": false, + "scope": "source" + }, + "sourcefile-validation": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "config", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--sourcefile-validation-config=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_SOURCEFILE_VALIDATION_CONFIG", + "help": "Config schema is as follows:\n\n {\n 'required_matches': {\n 'path_pattern1': [content_pattern1, content_pattern2],\n 'path_pattern2': [content_pattern1, content_pattern3],\n ...\n },\n 'path_patterns': [\n {\n 'name': path_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False),\n 'content_encoding': (defaults to utf8)\n },\n ...\n ],\n 'content_patterns': [\n {\n 'name': 'content_pattern1',\n 'pattern': ,\n 'inverted': True|False (defaults to False)\n }\n ...\n ]\n }\n\nMeaning: if a file matches some path pattern, its content must match all\nthe corresponding content patterns.\n", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--sourcefile-validation-config" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + } + ], + "deprecated": [], + "description": "Configuration for source file validation.", + "is_goal": false, + "scope": "sourcefile-validation" + }, + "stats": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]stats-log", + "config_key": "log", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]stats-log" + ], + "env_var": "PANTS_STATS_LOG", + "help": "At the end of the Pants run, log all counter metrics and summaries of observation histograms, e.g. the number of cache hits and the time saved by caching.\n\nFor histogram summaries to work, you must add `hdrhistogram` to `[GLOBAL].plugins`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--stats-log", + "--no-stats-log" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--log", + "--no-log" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "An aggregator for Pants stats, such as cache metrics.", + "is_goal": false, + "scope": "stats" + }, + "subprocess-environment": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--subprocess-environment-env-vars=\"['', '', ...]\"", + "config_key": "env_vars", + "default": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--subprocess-environment-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_SUBPROCESS_ENVIRONMENT_ENV_VARS", + "help": "Environment variables to set for process invocations. Entries are either strings in the form `ENV_VAR=value` to set an explicit value; or just `ENV_VAR` to copy the value from Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--subprocess-environment-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "LANG", + "LC_CTYPE", + "LC_ALL" + ] + } + ] + } + } + ], + "basic": [], + "deprecated": [], + "description": "Environment settings for forked subprocesses.", + "is_goal": false, + "scope": "subprocess-environment" + }, + "tailor": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-name=", + "config_key": "build_file_name", + "default": "BUILD", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-name=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_NAME", + "help": "The name to use for generated BUILD files.\n\nThis must be compatible with `[GLOBAL].build_patterns`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-name" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-name" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "BUILD" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-header=", + "config_key": "build_file_header", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-header=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_HEADER", + "help": "A header, e.g., a copyright notice, to add to the content of created BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-header" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-header" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-build-file-indent=", + "config_key": "build_file_indent", + "default": " ", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-build-file-indent=" + ], + "env_var": "PANTS_TAILOR_BUILD_FILE_INDENT", + "help": "The indent to use when auto-editing BUILD files.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-build-file-indent" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--build-file-indent" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": " " + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"", + "config_key": "alias_mapping", + "default": {}, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-alias-mapping=\"{'key1': val1, 'key2': val2, ...}\"" + ], + "env_var": "PANTS_TAILOR_ALIAS_MAPPING", + "help": "A mapping from standard target type to custom type to use instead. The custom type can be a custom target type or a macro that offers compatible functionality to the one it replaces (see https://www.pantsbuild.org/v2.9/docs/macros).", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-alias-mapping" + ], + "typ": "dict", + "unscoped_cmd_line_args": [ + "--alias-mapping" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": {} + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-paths=\"['', '', ...]\"", + "config_key": "ignore_paths", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-paths=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_PATHS", + "help": "Do not edit or create BUILD files at these paths.\n\nCan use literal file names and/or globs, e.g. `['project/BUILD, 'ignore_me/**']`.\n\nThis augments the option `[GLOBAL].build_ignore`, which tells Pants to also not _read_ BUILD files at certain paths. In contrast, this option only tells Pants to not edit/create BUILD files at the specified paths.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-paths" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-paths" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--tailor-ignore-adding-targets=\"['', '', ...]\"", + "config_key": "ignore_adding_targets", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--tailor-ignore-adding-targets=\"['', '', ...]\"" + ], + "env_var": "PANTS_TAILOR_IGNORE_ADDING_TARGETS", + "help": "Do not add these target definitions.\n\nExpects a list of target addresses that would normally be added by `tailor`, e.g. `['project:tgt']`. To find these names, you can run `tailor --check`, then combine the BUILD file path with the target's name. For example, if `tailor` would add the target `bin` to `project/BUILD`, then the address would be `project:bin`. If the BUILD file is at the root of your repository, use `//` for the path, e.g. `//:bin`.\n\nDoes not work with macros.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-ignore-adding-targets" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--ignore-adding-targets" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]tailor-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]tailor-check" + ], + "env_var": "PANTS_TAILOR_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--tailor-check", + "--no-tailor-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + } + ], + "deprecated": [], + "description": "Auto-generate BUILD file targets for new source files.", + "is_goal": true, + "scope": "tailor" + }, + "test": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-xml-dir=", + "config_key": "xml_dir", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-xml-dir=" + ], + "env_var": "PANTS_TEST_XML_DIR", + "help": "Specifying a directory causes Junit XML result files to be emitted under that dir for each test run that supports producing them.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-xml-dir" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--xml-dir" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-debug", + "config_key": "debug", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-debug" + ], + "env_var": "PANTS_TEST_DEBUG", + "help": "Run tests sequentially in an interactive process. This is necessary, for example, when you add breakpoints to your code.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-debug", + "--no-test-debug" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--debug", + "--no-debug" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-force", + "config_key": "force", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-force" + ], + "env_var": "PANTS_TEST_FORCE", + "help": "Force the tests to run, even if they could be satisfied from cache.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-force", + "--no-test-force" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--force", + "--no-force" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": [ + "all", + "failed", + "none" + ], + "comma_separated_choices": "all, failed, none", + "comma_separated_display_args": "--test-output=", + "config_key": "output", + "default": "failed", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-output=" + ], + "env_var": "PANTS_TEST_OUTPUT", + "help": "Show stdout/stderr for these tests.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-output" + ], + "typ": "ShowOutput", + "unscoped_cmd_line_args": [ + "--output" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "failed" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-use-coverage", + "config_key": "use_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-use-coverage" + ], + "env_var": "PANTS_TEST_USE_COVERAGE", + "help": "Generate a coverage report if the test runner supports it.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-use-coverage", + "--no-test-use-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--use-coverage", + "--no-use-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]test-open-coverage", + "config_key": "open_coverage", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]test-open-coverage" + ], + "env_var": "PANTS_TEST_OPEN_COVERAGE", + "help": "If a coverage report file is generated, open it on the local system if the system supports this.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-open-coverage", + "--no-test-open-coverage" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--open-coverage", + "--no-open-coverage" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--test-extra-env-vars=\"['', '', ...]\"", + "config_key": "extra_env_vars", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--test-extra-env-vars=\"['', '', ...]\"" + ], + "env_var": "PANTS_TEST_EXTRA_ENV_VARS", + "help": "Additional environment variables to include in test processes. Entries are strings in the form `ENV_VAR=value` to use explicitly; or just `ENV_VAR` to copy the value of a variable in Pants's own environment.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--test-extra-env-vars" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-env-vars" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "Run tests.", + "is_goal": true, + "scope": "test" + }, + "twine": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-version=", + "config_key": "version", + "default": "twine==3.6.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-version=" + ], + "env_var": "PANTS_TWINE_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine==3.6.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "colorama>=0.4.3" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "colorama>=0.4.3" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_TWINE_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-lockfile=" + ], + "env_var": "PANTS_TWINE_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/subsystems/twine_lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=twine`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-console-script=", + "config_key": "console_script", + "default": "twine", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-console-script=" + ], + "env_var": "PANTS_TWINE_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "twine" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-entry-point=" + ], + "env_var": "PANTS_TWINE_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-config=" + ], + "env_var": "PANTS_TWINE_CONFIG", + "help": "Path to a .pypirc config file to use. (https://packaging.python.org/specifications/pypirc/)\n\nSetting this option will disable `[twine].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-config-discovery" + ], + "env_var": "PANTS_TWINE_CONFIG_DISCOVERY", + "help": "If true, Pants will include all relevant config files during runs (`.pypirc`).\n\nUse `[twine].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-config-discovery", + "--no-twine-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-ca-certs-path=", + "config_key": "ca_certs_path", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-ca-certs-path=" + ], + "env_var": "PANTS_TWINE_CA_CERTS_PATH", + "help": "Path to a file containing PEM-format CA certificates used for verifying secure connections when publishing python distributions.\n\nUses the value from `[GLOBAL].ca_certs_path` by default. Set to `\"\"` to not use the default CA certificate.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-ca-certs-path" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--ca-certs-path" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]twine-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]twine-skip" + ], + "env_var": "PANTS_TWINE_SKIP", + "help": "Don't use Twine when running `./pants publish`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-skip", + "--no-twine-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--twine-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--twine-args=\"[, , ...]\"" + ], + "env_var": "PANTS_TWINE_ARGS", + "help": "Arguments to pass directly to Twine, e.g. `--twine-args='--skip-existing'`.'", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--twine-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "The utility for publishing Python distributions to PyPi and other Python repositories.", + "is_goal": false, + "scope": "twine" + }, + "typecheck": { + "advanced": [], + "basic": [], + "deprecated": [], + "description": "Run type checking or the lightest variant of compilation available for a language.", + "is_goal": true, + "scope": "typecheck" + }, + "update-build-files": { + "advanced": [], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-check", + "config_key": "check", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-check" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_CHECK", + "help": "Do not write changes to disk, only write back what would change. Return code 0 means there would be no changes, and 1 means that there would be. ", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-check", + "--no-update-build-files-check" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--check", + "--no-check" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fmt", + "config_key": "fmt", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fmt" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FMT", + "help": "Format BUILD files using Black.\n\nSet `[black].args`, `[black].config`, and `[black].config_discovery` to change Black's behavior. Set `[black].interpreter_constraints` and `[python].interpreter_search_path` to change which interpreter is used to run Black.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fmt", + "--no-update-build-files-fmt" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fmt", + "--no-fmt" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]update-build-files-fix-safe-deprecations", + "config_key": "fix_safe_deprecations", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]update-build-files-fix-safe-deprecations" + ], + "env_var": "PANTS_UPDATE_BUILD_FILES_FIX_SAFE_DEPRECATIONS", + "help": "Automatically fix deprecations, such as target type renames, that are safe because they do not change semantics.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--update-build-files-fix-safe-deprecations", + "--no-update-build-files-fix-safe-deprecations" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--fix-safe-deprecations", + "--no-fix-safe-deprecations" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "deprecated": [], + "description": "Format and fix safe deprecations in BUILD files.\n\nThis does not handle the full Pants upgrade. You must still manually change `pants_version` in `pants.toml` and you may need to manually address some deprecations. See https://www.pantsbuild.org/v2.9/docs/upgrade-tips for upgrade tips.\n\nThis goal is run without arguments. It will run over all BUILD files in your project.", + "is_goal": true, + "scope": "update-build-files" + }, + "validate": { + "advanced": [], + "basic": [ + { + "choices": [ + "none", + "summary", + "nonmatching", + "names", + "all" + ], + "comma_separated_choices": "none, summary, nonmatching, names, all", + "comma_separated_display_args": "--validate-detail-level=", + "config_key": "detail_level", + "default": "nonmatching", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--validate-detail-level=" + ], + "env_var": "PANTS_VALIDATE_DETAIL_LEVEL", + "help": "How much detail to emit to the console.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--validate-detail-level" + ], + "typ": "DetailLevel", + "unscoped_cmd_line_args": [ + "--detail-level" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "nonmatching" + } + ] + } + } + ], + "deprecated": [], + "description": "Validate sources against regexes.", + "is_goal": true, + "scope": "validate" + }, + "yapf": { + "advanced": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-version=", + "config_key": "version", + "default": "yapf==0.31.0", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-version=" + ], + "env_var": "PANTS_YAPF_VERSION", + "help": "Requirement string for the tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-version" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--version" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf==0.31.0" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-extra-requirements=\"['', '', ...]\"", + "config_key": "extra_requirements", + "default": [ + "toml" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-extra-requirements=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_EXTRA_REQUIREMENTS", + "help": "Any additional requirement strings to use with the tool. This is useful if the tool allows you to install plugins or if you need to constrain a dependency to a certain version.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-extra-requirements" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--extra-requirements" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "toml" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-interpreter-constraints=\"['', '', ...]\"", + "config_key": "interpreter_constraints", + "default": [ + "CPython>=3.6" + ], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-interpreter-constraints=\"['', '', ...]\"" + ], + "env_var": "PANTS_YAPF_INTERPRETER_CONSTRAINTS", + "help": "Python interpreter constraints for this tool.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-interpreter-constraints" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--interpreter-constraints" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + }, + { + "details": "", + "rank": "HARDCODED", + "value": [ + "CPython>=3.6" + ] + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-lockfile=", + "config_key": "lockfile", + "default": "", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-lockfile=" + ], + "env_var": "PANTS_YAPF_LOCKFILE", + "help": "Path to a lockfile used for installing the tool.\n\nSet to the string `` to use a lockfile provided by Pants, so long as you have not changed the `--version` and `--extra-requirements` options, and the tool's interpreter constraints are compatible with the default. Pants will error or warn if the lockfile is not compatible (controlled by `[python].invalid_lockfile_behavior`). See https://github.com/pantsbuild/pants/blob/release_2.9.2/src/python/pants/backend/python/lint/yapf/lockfile.txt for the default lockfile contents.\n\nSet to the string `` to opt out of using a lockfile. We do not recommend this, though, as lockfiles are essential for reproducible builds.\n\nTo use a custom lockfile, set this option to a file path relative to the build root, then run `./pants generate-lockfiles --resolve=yapf`.\n\nLockfile generation currently does not wire up the `[python-repos]` options. If lockfile generation fails, you can manually generate a lockfile, such as by using pip-compile or `pip freeze`. Set this option to the path to your manually generated lockfile. When manually maintaining lockfiles, set `[python].invalid_lockfile_behavior = 'ignore'`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-lockfile" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--lockfile" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-console-script=", + "config_key": "console_script", + "default": "yapf", + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-console-script=" + ], + "env_var": "PANTS_YAPF_CONSOLE_SCRIPT", + "help": "The console script for the tool. Using this option is generally preferable to (and mutually exclusive with) specifying an --entry-point since console script names have a higher expectation of staying stable across releases of the tool. Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-console-script" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--console-script" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": "yapf" + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-entry-point=", + "config_key": "entry_point", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-entry-point=" + ], + "env_var": "PANTS_YAPF_ENTRY_POINT", + "help": "The entry point for the tool. Generally you only want to use this option if the tool does not offer a --console-script (which this option is mutually exclusive with). Usually, you will not want to change this from the default.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-entry-point" + ], + "typ": "str", + "unscoped_cmd_line_args": [ + "--entry-point" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-config=", + "config_key": "config", + "default": null, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-config=" + ], + "env_var": "PANTS_YAPF_CONFIG", + "help": "Path to style file understood by yapf (https://github.com/google/yapf#formatting-style/).\n\nSetting this option will disable `[yapf].config_discovery`. Use this option if the config is located in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config" + ], + "typ": "file_option", + "unscoped_cmd_line_args": [ + "--config" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-config-discovery", + "config_key": "config_discovery", + "default": true, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-config-discovery" + ], + "env_var": "PANTS_YAPF_CONFIG_DISCOVERY", + "help": "If true, Pants will include any relevant config files during runs (`.style.yapf`, `pyproject.toml`, and `setup.cfg`).\n\nUse `[yapf].config` instead if your config is in a non-standard location.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-config-discovery", + "--no-yapf-config-discovery" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--config-discovery", + "--no-config-discovery" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": true + } + ] + } + } + ], + "basic": [ + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--[no-]yapf-skip", + "config_key": "skip", + "default": false, + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--[no-]yapf-skip" + ], + "env_var": "PANTS_YAPF_SKIP", + "help": "Don't use yapf when running `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 fmt` and `/home/josh/work/scie-pants/dist/scie-pants-linux-x86_64 lint`.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-skip", + "--no-yapf-skip" + ], + "typ": "bool", + "unscoped_cmd_line_args": [ + "--skip", + "--no-skip" + ], + "value_history": { + "ranked_values": [ + { + "details": null, + "rank": "NONE", + "value": null + }, + { + "details": null, + "rank": "HARDCODED", + "value": false + } + ] + } + }, + { + "choices": null, + "comma_separated_choices": null, + "comma_separated_display_args": "--yapf-args=\"[, , ...]\"", + "config_key": "args", + "default": [], + "deprecated_message": null, + "deprecation_active": false, + "display_args": [ + "--yapf-args=\"[, , ...]\"" + ], + "env_var": "PANTS_YAPF_ARGS", + "help": "Arguments to pass directly to yapf, e.g. `--yapf-args=\"--no-local-style\"`.\n\nCertain arguments, specifically `--recursive`, `--in-place`, and `--parallel`, will be ignored because Pants takes care of finding all the relevant files and running the formatting in parallel.", + "removal_hint": null, + "removal_version": null, + "scoped_cmd_line_args": [ + "--yapf-args" + ], + "typ": "list", + "unscoped_cmd_line_args": [ + "--args" + ], + "value_history": { + "ranked_values": [ + { + "details": "", + "rank": "NONE", + "value": [] + } + ] + } + } + ], + "deprecated": [], + "description": "A formatter for Python files (https://github.com/google/yapf).", + "is_goal": false, + "scope": "yapf" + } + } +}